Replicative lets you distribute state, so any time you'd like a distributed system to be able to share state, this is something you could consider to do that. In particular, every web application is a distributed system, so it's something you could use any time you wanted eventually consistent state between server(s) and clients. So the real question is what shared state offers.
If you're not doing shared state, you're probably doing something where you send messages through some remote transactor that (ideally) ensures consistency of the system. But that means two things: * You can't be working offline (at least, not without a lot of work that starts to look like ad-hoc distributed state) * If you want optimistic UI updates (good for responsiveness & UX), you have to figure out how to undo UI updates if those transactions fail Replicative solves both of these problems. You can work offline on your copy of the data, and then when you're able to reconnect, it does a "merge" (analogous to a git merge). Ideally, the merge is clean and the remotes get copies of the work you did, and everyone is happy. But, if there are any kind of conflicting changes that need to be merged, you have to go through history conflict resolution process, again, quite like you would have to in git. So in very broad strokes, replicative is sort of like auto-synced git for application data. Chris On Thursday, January 21, 2016 at 9:00:28 PM UTC-8, Teemu Kaukoranta wrote: > > Thank you, this looks immensely interesting! I'm still having trouble > understanding when exactly one should use replikativ; are you saying it > will make it easier to build offline applications? > > There's two things that make this difficult to understand: its academic > nature, and the fact that many of us are just so used to the central server > that it's hard to imagine anything else. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.