@QuiltProject interested that you mention tuplespaces in blog. Sceptical of ts based on CRDT. I work on Calvin-like https://github.com/vjoel/tupelo
-
-
Replying to @JoelVanderWerf
@JoelVanderWerf I'd be curious as to why you'd think a CRDT could not provide tuplespace-like semantics?1 reply 1 retweet 1 like -
Replying to @QuiltProject
@QuiltProject Ah, yes, why can't tuples be CRDTs? Answer upcoming, parts 1-6.1 reply 1 retweet 0 likes -
Replying to @JoelVanderWerf
@QuiltProject 1. A tuple *in* a space is immutable; you can only take or read it, not update it. Hence no way to apply CRDT update.1 reply 1 retweet 0 likes -
Replying to @JoelVanderWerf
@QuiltProject 2. What if you take/modify/write a tuple? No way to track tuple identity or to merge 2 CRDT updates to "same" tuple.1 reply 1 retweet 0 likes -
Replying to @JoelVanderWerf
@QuiltProject 3. Because tuple identity is defined by contents (like scala case classes etc.). Unlike key-value stores.1 reply 1 retweet 0 likes -
Replying to @JoelVanderWerf
@QuiltProject 4. What if we encode identity in tuple? Breaks tuplespace semantics. More importantly, though...1 reply 1 retweet 0 likes -
Replying to @JoelVanderWerf
@QuiltProject 5. Tuplespace ops are inherently non-commutative. Use a tuplespace when your problem demands coordination.2 replies 1 retweet 1 like -
Replying to @JoelVanderWerf
@QuiltProject 6. When your problem doesn't demand coordination, use coordination-free CRDT or CALM.6 replies 1 retweet 1 like
@JoelVanderWerf 5/ Re: coordination/consensus, that's something that I think can be built *on top of* a suitably-constructed CRDT.
-
-
Replying to @QuiltProject
@QuiltProject Interesting thought. I'll move to the lobsters discussion... https://lobste.rs/s/s6gi7r/distributed_systems_and_the_end_of_the_api …1 reply 0 retweets 0 likes -
Replying to @JoelVanderWerf
@JoelVanderWerf Replied there. Much better venue, as my prior 140 chars on the subject left too much unsaid. :-)0 replies 0 retweets 0 likes
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.