[darcs-users] darcs conflicts/dependencies -- is patch theory the place to start?
Ben Franksen
benjamin.franksen at bessy.de
Fri Sep 14 20:19:39 UTC 2012
Just a two random comments.
> > > A lot can have changed (especially w.r.t. contents of files). How
> > > does the VCS know which files and which lines got copied/changed
> > > vs. deleted/inserted? How can it keep track of all the internal
> > > file id's and line id's?
> >
> > This bites darcs with file moves (renames):
> > you can't detect a move vs. remove-then-add-then-paste-content.
>
> (I still don't understand why anyone cares to detect this difference.
> The two are observationally equivalent in a single Darcs patch. But
> that's just me.)
The problem is that "observationally equivalent" is easy to judge for a
machine but less so for a human. If a patch moves a block of code a few
lines down and the VCS presents this change to me as "removed these: ..."
and then "added these:..." then I must compare the removed/added content
manually character by character to see if this is really just a move. This
is a task for which machines are much better suited than humans, which is
the reason a VCS should do its utmost to recognize such situations and
present them in a "compressed" way ("moved down <n> lines:...") to the human
user.
> > In darcs:
> > - To think of a patch is the *same* even though it morphs through
> > commutation, can we be more precise on what about the patch is
> > the same? (apart from its id)? Something about the sameness of
> > effect from a patch?
>
> That's exactly how it's defined, as the same effect. However, effect
> is difficult to define explicitly, it's like the judge's definition of
> pornography: "I know it when I see it."
I am dissatisfied with this kind of statement. There *must* be a precise
meaning of "effect", otherwise how can a tool such as Darcs know what to do
when it commutes patches? Why, then, is it so difficult to define what
"effect" means? (Maybe I am confused here, I would really like to understand
this point better.)
--
Ben Franksen
() ascii ribbon campaign - against html e-mail
/\ www.asciiribbon.org - against proprietary attachments
More information about the darcs-users
mailing list