Debugger extension help

David Farber dfarber at
Thu Jan 9 21:59:33 UTC 2003

I thought up an extension to the debugger that I'd like to have, but I can't figure out how to implement it. I'm hoping some other squeakers might be able to help.

Here's my idea: The debugger currently lets you inspect variables in the current context as well as the instance variables of the current reciever, but there isn't a nice way to see data on the stack. I am often frustrated by the inability to see the result of inner statements or the value that is about to be returned by the current method.

What I would like is to see the /next/ statement about to be executed, but with all references and inner statements fully resolved. For example, suppose I have the method:

  ^self toUppercase toLowercase

Say this method gets called as "$c foo.". When I first enter this method, I will see "self toUppercase" highlighted in the debugger. In a pane below this, I'd like to see "$c toUppercase". If I step, "self toUppercase toLowercase" get highlighted. In my next-statement pane, I should see "$C toLowercase". One more step leaves me about to return from the method. I'd like to see "^$c".

I nosed around in InstructionStream/ContextPart/BlockContext, Debugger, Parser, Decompiler for a couple of days, but I couldn't really make heads or tails of anything. Anyone have pointers/tips/suggestions?


David Farber
dfarber at

More information about the Squeak-dev mailing list