[plt-scheme] ATTN: Neil Van Dyke (and some philosophical musings on debuggers)

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Thu Sep 16 14:47:35 EDT 2004

These are all claims I can agree with -- but see my original claims 
before you shoot. -- Matthias

On Sep 16, 2004, at 2:35 PM, Eric Kidd wrote:

>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
> I'm removing Neil's name from the subject line; he's got to be feeling
> a bit pestered by now. :-)
> On Thu, 16 Sep 2004 14:08:40 -0400, Prabhakar Ragde
> <plragde at uwaterloo.ca> wrote:
>> I appreciate your point about intrusive tools being
>> crutches, but I think it has to be carefully qualified. --PR
> I don't really have a strong opinion on this subject, actually.  But I
> do have some data points:
> 1) I've spent a fair bit of time working on embedded systems, early
> stage compilers, and other hard-to-debug beasties (many of them with
> really long build times).  This experience forced me to become
> paranoid--desk-checking my code, thinking through every little detail,
> and simply not making many mistakes.  If it weren't for this
> experience, I'd be a much weaker programmer today.
> 2) The bugs that *do* slip through a thorough review can be very
> nasty.  In the past year, I've encountered two compiler bugs, a bunch
> of bugs based on a slightly imperfect understanding of Tamale's
> internals (while overhauling those internals considerably), and lots
> of corner-case design flaws.  For these problems, a debugger can be
> anything from a handy tool that reduces debugging time to the only way
> to *ever* figure out what's going on.
> 3) Debuggers are essential when debugging somebody else's code,
> especially if there's a great steaming mass of it.
> 4) Debuggers seem to be greatly loved by people who don't really know
> how to program, but for some reason must do so anyway.  We encounter
> this with Tamale, obviously, where we have multimedia types writing
> small amounts of Scheme code.
> Today, I'm evaluating a commercial debugging/memory-checking tool,
> because I've spent the past two days trying to debug a crash in the
> Microsoft C++ runtime.  This tool is admittedly one big crutch.  But
> when you're limping, crutches can be a good thing.
> Cheers,
> Eric
> http://iml.dartmouth.edu/tamale/

Posted on the users mailing list.