Replies: 1 comment
-
Hello, thank you for your interest to my work.
it's true for CROWD, but isn't true for CRDT. CRDT allows merge of B before A (with same result as A before B). For this reason, it isn't always possible to delete old data. This allows CRDT to work over UDP. But with TCP this is redundant.
It's "types" in CRDT terminology. You can find list of stores here.
It's target property of CROWD model. My implementation is proof of concept. As you see here not all reinterpretations gives acceptable result. I'm continuing research of opportunities to achieve this.
Could you give me a link where I can read about this trait of Yjs? Can It really merge register with sequence etc? Or does it have something like tagged union type support?
I tried to describe the main points in readme's near code.
Not yet. I'll look into it when I finish RnD.
|
Beta Was this translation helpful? Give feedback.
-
Hi! The description assumes I know what lots of words mean, and despite reading a handful of CRDT papers and understanding automerge and yjs, I still have no idea how crowd compares.
I don't understand this comment. CRDT in general don't provide guarantees for deleting old data (though specific algorithms might). Which guarantees are weakened? CRDTs usually allow merging of any operation sequence so long as the sequence obeys the partial order of operation dependencies. (If A comes before B then A must be merged before B. But if A and B are concurrent, they can be merged in either order). Does CROWD not require this property? This is also somewhat weakened in yjs.
What does "different CROWD storages" mean? Is that a property of the CROWD model, or a property of your implementation of the model? Yjs could be said to meet this requirement too; but Yjs acknowledges its part of the subset of algorithms called CRDTs.
Is there any documentation anywhere describing how CROWD works? Like, an academic paper or the equivalent of INTERNALS.md from automerge? I can see the example on the demo page but I have no idea what
"token"
and"stamps"
mean. Are these explained anywhere?Beta Was this translation helpful? Give feedback.
All reactions