Yes definitely - but that doesn't mean operations must be invertible,
which is what I was saying in IRC.

Eg, if we use tombstones a document could say:

"Hello world"

Then I delete 'world', leaving:

"Hello ....." (dots for tombstones)

If I undo that change, I can't delete the tombstone characters (that
would break transform's tp2 property). But I can do a sort of semantic
undo to insert back the missing characters:

"Hello .....world"

Intention would still be preserved, and that undo operation could be
transformed by other operations that have happened in between my
original operation and the undo. Its just that the internal document
state isn't restored. Which is fine.

-J


On Fri, Jun 21, 2013 at 7:06 AM, Michael MacFadden
<michael.macfad...@gmail.com> wrote:
> As for one small comment, yes UNDO must be implemented in OT if you have 
> multiple participants. One simple example would be three users. Lets say an 
> operation to insert a character goes from user A to user B it has not made it 
> to user C. The user B decides to Undo. At that point the undo operation goes 
> from user B to user A and user C. Now the problem is the undo action from B 
> may arrive at C before the original operation from A arrived at C.
>
> This would cause a problem without OT.
>
> ~Michael

Reply via email to