[plt-scheme] debugging in PLT Scheme
Greg Cooper and Chris Warrington, thank you for your advice. The
debugger's much better than I thought, and works as you describe.
Geoffrey
--
Geoffrey S. Knauth | http://knauth.org/gsk
On Dec 3, 2006, at 13:32, Gregory Cooper wrote:
> There's a short blurb in the Help Desk under "debug button" that
> documents how to do these things. It's not very detailed, though, so
> I'll point out a few caveats.
>
>> * Breakpoints
>
> To set a breakpoint at the beginning (end) of an expression,
> right-click on its left (right) paren, and a popup menu should appear
> with the option to "pause at this expression". If you select that
> option, a small red circle will appear over the paren, and the program
> will stop at that point. However.
>
> * Not all expressions support breakpoints. If you mouse over a
> breakable paren, a ghosted circle will appear.
> * If an expression is in tail position, you cannot break at the end
> of it.
> * If your program is not in the (module ...) language, the debugger
> only discovers which expressions are breakable after they are fed to
> the evaluator. However, in recent versions (since v350 at least), the
> debugger remembers the set of breakable expressions (and breakpoints)
> across consecutive invocations. So, if you click Debug, then Continue
> to let the program run to completion, then Debug again, you should
> have immediate access to all the breakable expressions.
>
>> * Current Values
>> What I'd really like to do is see what values `date' and `special-
>> sundays' hold, without changing any code. Is there a way to do that?
>
> If 'date' and 'special-sundays' are lexical variables (not top-level),
> mousing over them should display their values up next to the debugger
> controls (opposite where the expression value appears). In addition,
> if you right-click on the variable in the Definitions Window, there
> should be an option to print the value in the Interactions window.