View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Squeak Debugger by Moctar Diallo

Most errors in Smalltalk are caused by messages sent to objects which do not understand them.
Smalltalk does not check to see if an object can handle a message until run-time.
A debugger window will appear.

The top area is the message stack, which contains messages from the code you executed,
from the Smalltalk compiler and the run-time system. Messages are displayed in the format:
Class(Superclass)>>message selector
The top line is the last message sent. Each message listed sent (called) the one above it.
To confirm this, type the following code in the workspace and try to run it:

Transcript show:s.

Selecting a message in the stack causes the corresponding method or workspace code to be
displayed in the Center area.
Select the top line in the message stack. The top message displays system-generated
information on the error (not very useful), as shown below.

Debugger Inspectors
the bottom left area which has "self and all inst var" and the bottom right
which has "thisContext, all temp vars" are inspectors. The inspectors help you trace variable values.
You can also inspect a selected variable or even change its value and accept it.
the bottom left lists the instance variables of the object. What object? The one currently selected
in the message stack, i.e. the object to which the message was sent.
the bottom right lists temporary variables and arguments of the currently selected method.
Select the line below the top line in the message stack. The method or workspace code in
this case which triggered the error occurred is displayed, as shown below.
However, this might not be the fundamental cause of the error.

Uploaded Image: debug.jpg

Link to this Page