[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] Re: darcs vs tla

From: Thomas Lord
Subject: Re: [Gnu-arch-users] Re: darcs vs tla
Date: Wed, 10 Nov 2004 12:47:30 -0800 (PST)

    > From: Catalin Marinas <address@hidden>

    > On Mon, 2004-11-08 at 23:27, Thomas Lord wrote:
    > > So: does Darcs' merge operators (the deep distinction it has from
    > > arch) really "add value"?  at scale?   What's up with those?   Does
    > > anyone actually /know/?

    > What the darcs operators can do is happily merge a patch which adds some
    > lines at the end of an existing patch (which is not merged). Arch would
    > fail this because the diff context contains the patch which is not
    > merged. This might not be good for C language files but might be OK for
    > makefiles.

That makes sense.  That's an edge-case of variance adjustment that
doesn't stray too far from the "semantic pun" of ordinary diffs.
Seems like a long way to go for just that --- but at least that's a
special case where variance adjustment pays off.

    > Another interesting thing the operators remove is the need for file ids.
    > If the P1 patch modifies a file's name and P2 adds some text to this
    > file, P2 can be properly merged into a tree which does not contain P1
    > because the commutation operators would change the P2 patch so that it
    > applies the changes to the original file name.

I don't think that eliminating the need for file ids is properly
attributable to the commutativity logic and variance adjustment done
by darcs.

Rather: the non-need for file ids is a consequence of how history is
treated and that, in turn, implies limits on the kinds of merging that
is possible.   

For example, if what you report is true, then darcs can not easily
accomplish a particular form of cherry picking (picking from a branch
whose ancestry is irrelevant or unclear and/or unavailable)  if said
cherry picking is attempted in the face of renames.

And that that is true is reinforced by conversations we had during the
"common changeset format discussions" which got bogged down in (absurd
on the face of them) disagreements about what history could be counted
on as being available.

I opened my mind for this darcs thread and it looks like I'm going to
wind up where I started:  they have some rather esoteric merge
technology that could be added to arch;  aside from that, they are
missing too much.   Would have been better if darcs had, in the first
place, been done as an extension to arch.   Meanwhile, their novel
merge tech is "on the list of things todo" but not a high priority.

(Does that sound insulting towards Darcs?   It doesn't at all if you
regard darcs as a short-term R&D exploration.)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]