On Wed, Jul 16, 2014 at 2:35 PM, Kythyria Torsfarenris <kythy...@gmail.com> wrote: >> I recently paired with the author of quilljs and stypi to port his >> rich text OT type for quill into sharejs. It works great. > > I eagerly await publication of that.
Yeah I'm looking forward to it too - its been a few weeks, I should probably ping him. It should be really easy to put online. >> My big learning from a lot of this stuff is that semantics for >> different kinds of data are different, and you need to be able to >> support that in your system. > > Amen to that. JSON gets you *most* of the way, as in lots of things can be > made to fit. I figure Wave would have run into the same thing if it had > gotten widespread enough for people to try to represent things other than > Wavey conversations (for instance, atomic replacement of attributes is > suboptimal for SVG). We were already running into the same things, except we were coming at it the other way. Given we had OT on the XML-like wave structure, how do you represent sets and maps? This was important for gadgets and wave robots. Alex wrote a lot of code doing some JSON OT-like operations backed by the XML structure, storing items alphabetically in an XML element and then reordering them in a best-effort manner. In my opinion it was a mess. ShareJS's approach is much cleaner - though supporting subdocuments with their own OT semantics might be better still. -J