[plt-scheme] running an MzScheme debugger in Emacs?
Matthias (and others from the PLT Scheme list)-
On Apr 26, 2008, at 11:30 AM, Matthias Felleisen wrote:
>
> Debuggers have a role in programming, no question asked.
>
> I don't think, however, they have a role in freshman programming or,
> if they do, only a minor role. This is just another point where I
> deeply disagree with Gerry and Hal's approach to teaching freshmen.
1.) Are we talking about SICP, or the added sample course-work that
someone has put up from a previous semester of 6.001? That is the ps1
material that Benjamin posted a link for earlier: http://mitpress.mit.edu/sicp/psets/ps1/readme.html
I am not sure I would consider it part of SICP proper. I cannot
recall how many instruction on using a debugger appears in SICP itself.
2.) I looked at the "tutorial on using the debugger" in ps1; one of
the first things it points out is that novices tend to ignore the
error messages and go straight to staring at their source program.
This tendency of novices to ignore the error messages (and the control
flow information, etc) happens in every introductory class I have
taught. I have had to explicitly tell beginners: "Hey, use the
feedback that the programming environment is handing to you."
This is a general principle that extends beyond instruction in how to
use a particular debugger. I do not remember how much time, if any,
is devoted to this principle in SICP or in HtDP.
I suppose the principle reduces to "Pay attention and look for all the
clues before forming a hypothesis about what is wrong", or, more
succinctly, "Be Holmes, not Watson"; whether this message belongs in
HtDP or not is up to you. To me it seems like something worth
stressing in future editions of HtDP.
-Felix