On 27.06.2013 19:33, Daniel Shahaf wrote: > Philip Martin wrote on Thu, Jun 27, 2013 at 17:47:54 +0100: >> Daniel Shahaf <danie...@elego.de> writes: >> >>> My own answer to "how to change Ev2 to enable representing rotate(A,A/B/C)": >>> >>> I think the above means we have to modify move() to use SRC arguments >>> relative to the start state of the edited tree, rather than to its >>> current state. >>> If we do that, we could represent your commit as: >>> mv(A/B/C, A); mv(A/B, A/B); mv(A, A/B/C);. >>> >>> While we're making changes, I wonder if we should nuke rotate(). I have >>> several reasons: >> I've been thinking of that as well. rotate was not it the first draft >> of Ev2, it was added when I asked how to order the moves in a swap. >> >> You have ordered these "start state" moves by depth order of the >> destination, which seems reasonable. I think that implies that the >> destination refers to the current state which is the same as the final >> state. >> > +1. The current state == the final state due to the Once Rule: every > node is the destination of exactly one editor call.
That's not what the Once Rule says; and if you think about it, it's impossible unless move and copy get contents/props arguments just like add and alter. -- Brane -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com