[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