In that document, it says "Edits to the document are represented as mathematical functions that can be applied in any order, and have other special properties that make this realtime"
Consider EtherPad a load of people keeping local DVCS repositories (of 1 file) and merging them on a regular basis - every second, or every few key presses, say.
You would get: add/changing lines in separate places (fairly easy - adjust line numbers). Changes in the same place (no technical solution to which outcome was intended, so pick one method of resolution that is at least predictable - e.g. order the contributors by order of who joined earliest and do what the earliest joiner did. If they delete a sentence someone else is editing then it gets deleted. If they edit a sentence and someone else deletes it, it's kept with the edit). If you're working together instead of trying to break it that seems like it would give a workable system.
If you stored the patches instead of just applying them, you'd then get the basis for the time slider system too.
Still, there must be more to it than that - and more to making it nice too (but I didn't find out what since they reopened it and plan to open source it).
When the shutdown notice came a few days ago, and thoughts of trying to write a replacement were running through my head, I ran to "DARCS theory of patches" ( http://en.wikibooks.org/wiki/Understanding_darcs/Patch_theor... ) which sounds like that.
Consider EtherPad a load of people keeping local DVCS repositories (of 1 file) and merging them on a regular basis - every second, or every few key presses, say.
You would get: add/changing lines in separate places (fairly easy - adjust line numbers). Changes in the same place (no technical solution to which outcome was intended, so pick one method of resolution that is at least predictable - e.g. order the contributors by order of who joined earliest and do what the earliest joiner did. If they delete a sentence someone else is editing then it gets deleted. If they edit a sentence and someone else deletes it, it's kept with the edit). If you're working together instead of trying to break it that seems like it would give a workable system.
If you stored the patches instead of just applying them, you'd then get the basis for the time slider system too.
Still, there must be more to it than that - and more to making it nice too (but I didn't find out what since they reopened it and plan to open source it).