[darcs-users] Delta Debugging
Samuel A. Falvo II
sam.falvo at falvotech.com
Mon May 24 05:59:32 UTC 2004
On Sunday 23 May 2004 09:44 pm, 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.
> It is parameterized by the type of "change" you are applying and the
> test function. In the papers, the examples are very impressive,
> narrowing bugs in GCC, GDB, and Mozilla down to a couple lines out of
> thousands, or even characters.
It sounds to me that if one follows the process of test-driven
development, this whole thing becomes unnecessary. Am I missing
(BTW, I am a huge proponent of TDD, especially when used in conjunction
with formal methods.)
> The biggest drawback of the technique for wide use is that you have to
> re-implement for each test and type that you want to evaluate, but for
> darcs we've already got this stuff and a big library for manipulating
I'm sorry, the above sentence doesn't parse for me. Can you re-state?
> I really think this would be great because when someone says "I just
> pulled darcs and now it doesn't work" you can ask for the output of
> "darcs deltadebug" or some such, and it is guaranteed to give you a
> minimal set of hunks to reproduce the error.
Hmm, I think I see what you're getting at here -- by delta, you mean
delta in the source code management sense, not in the programmer sense.
Would this system be able to handle the case where, for example, I make
sweeping changes to several sources files, all at once, then check the
whole she-bang into the repo? Or, would I have to make a very tiny
change, check-in, change more, check-in again, etc?
Of course, as a fan of TDD, I obviously favor the latter, but few in the
world, it seems favor TDD. Thus, I think the technique needs to be
broadly applicable regardless of usage pattern.
Thanks for the info.
Samuel A. Falvo II
More information about the darcs-users