[plt-scheme] stepper interface suggestion for "start-from-here"?

From: Stephen Bloch (sbloch at adelphi.edu)
Date: Sun Apr 12 21:15:27 EDT 2009

On Apr 10, 2009, at 8:52 PM, John Clements wrote:

> A few weeks ago Jay McCarthy suggested a feature for the stepper  
> that was so obvious that I had to implement it (also, I have a  
> sneaking suspicion that others must have suggested it): starting to  
> step at a specified expression, rather than from the beginning.

I presume you mean that the Definitions pane would execute from the  
beginning, but the Stepper would only go into effect at the specified  

I had initial some ideas about a UI for this, but then started  
thinking about my long-standing request to have the Stepper work in  
the Interactions pane as well as the Definitions pane, and how to do  
both of these things in a consistent way (from the user's  
perspective)... and I came up with something much more powerful.  How  
does this sound?

1) Provide a "step" form that opens a Stepper window to evaluate its  
argument.  This form would be invokable from either Definitions or  
Interactions.  If invoked when there is no MrEd window open at all,  
it would simply evaluate its argument.  If invoked from within an  
expression that's already being Stepped, it would be ignored.

2) Provide a miniature "foot" icon that's an abbreviation for the  
"step" form, just as an apostrophe is an abbreviation for the "quote"  
form, or the lambda symbol is an abbreviation for "lambda".

3) Anywhere in the Definitions pane (whether at the top level or  
inside a function definition), or anywhere in a yet-unevaluated line  
in the Interactions pane, you can right-click and insert (or remove)  
a "foot" icon, i.e. a "step" form around the immediately-following  

This gives you effectively the multiple-breakpoint capability of  
BlueJ's debugger, plus the ability to invoke a Stepper  on any portion 
(s) of interactively-typed code without removing your hands from the  

Stephen Bloch
sbloch at adelphi.edu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20090412/dc67eb09/attachment.html>

Posted on the users mailing list.