[darcs-users] Delta Debugging

Andrew Pimlott andrew at pimlott.net
Mon May 24 14:09:53 UTC 2004


On Sun, May 23, 2004 at 09:44:28PM -0700, Kenneth Knowles wrote:
> For those who don't have time to read the papers, the idea is that
> starting with the last known working configuration of a program, you
> apply the changes gradually until it breaks.  The algorithm is more
> sophisticated, and finds a minimal set of changes causing the error.

This would be terribly useful.  I imagine it could work especially well
with darcs, since it has such strong patch manipulation.  However, I bet
you'd get 90% of the benefit with just a binary serach, which would work
with any RCS that has changesets.

> Since we have "darcs trackdown" and also a built in notion of a
> test, as well as hunks as a good place to divide patches

I wouldn't think about breaking up patches.  You'll get a combinatorial
explosion of sub-patches, most of which will probably be completely
broken.  I doubt you could handle this efficiently.  Most of the time,
narrowing down the bug to a patch is all you need to pinpoint the
problem area.  If a patch contains multiple independent changes and the
user needs finer granularity, let the user break up the patch.

> Would this have a chance of making it into darcs?

I hope so!

Andrew




More information about the darcs-users mailing list