[darcs-devel] camp conflictors aka RepoPatchV3

Benjamin Franksen ben.franksen at online.de
Fri Sep 7 15:44:23 UTC 2018


Hi Everyone

I am happy to announce that I finally managed to iron out the last bugs
from my implementation of camp conflictors. All unit and quickcheck
tests pass with -q10000, for both V1 and FileUUID prims.

The patch history is still a huge mess. I'll clean that up and then send
a rebased bundle.

The last bug I found and fixed is interesting in that it is also in the
camp paper and in the camp implementation; however, it seems Ian already
suspected it: there is a comment in the camp code (at
camp-core/Camp/Patch/Catch.hs:126) that says:

  -- XXX I think this is wrong: Some of (invert qEffect')
  -- might be able to commute through p?

That comment, though at first cryptic to me, with hindsight actually
says it all.

Many thanks Ian: you are a genius. I really feared things might not work
out as expected, given that you did not complete the proofs for commute
and merge of conflictors. But it really looks as if the theory works out
and we can now concentrate on what's missing: how to make the switch to
the new format as painless as possible; and a clean implementation of
conflict resolution according to the spec I arrived at recently. Oh, and
how to fully integrate FileUUID with the rest of darcs.

Cheers
Ben



More information about the darcs-devel mailing list