On 9 Sep 2013 16:22, "Julian Foad" <julianf...@btopenworld.com> wrote:
> The design of Ev2 is based on the concept of incremental edits to a "current" tree state. I feel that the idea that you could start editing the tree, deleting subtrees, and then come to an operation that says "Now please recover one of the subtrees that I earlier told you to delete" doesn't fit with that philosophy. > > The model of operation of the "split-move" scheme is no more split than the model implied by the "single-move" scheme; it's just more explicit. It doesn't in any way change or add to the overall semantic content of > the edit, all it changes is the timing of the information, fore-warning the consumer that a forthcoming deletion is not to be regarded as final and > absolute. That fore-warning makes a sequential consumer implementation feasible. I think you're assuming that an implementation that doesn't keep track of the initial state is simpler, or rather, "easier" to write. I don't agree with that assumption. The repository already has all history available, and the WC can "trivially" be taught to remember the initial state. I also don't agree that Ev2 design makes any assumptions about initial state. It's more likely that we're making too many assumptions about WC semantics. -- Brane