Question about the debugger

Stephane Ducasse ducasse at iam.unibe.ch
Mon Jul 28 07:48:22 UTC 2003


Hi all

I'm writing some nice section about debugging in Squeak.
Now I have the following problem:

Imagine that I have the following script in a workspace

| caro size |
caro := Turtle new.
caro go: size

Clearly size is nil and somewhere when the message go: will get executed
I will got an error. The debugger shows up and when I select in the 
stack the
UndefinedObject>>doit entry I can see that the variable size is indeed 
nil.
Perfect.

Now when I modify the variable and put 100 for example (which is a 
correct value
in our case), and press proceed, the system does not behave as if the 
variable
size now holds 100.

Note that the same behavior occurs even if I press on restart then 
proceed. Size is still nil :(

It is normal. Why can we modify a variable, change its value and 
proceed.
I'm in 3.5 but cannot right now test in 3.6. Is this behavior fixed in 
3.6 with
the new anthony fixes?

Another stupid question is that when I evaluate

|size|
size + 10
and proceed, open a debugger, change the variable size to 100 by 
selecting doit in the stack
size holds 100 however self does not.

This makes quite difficult to explain to novices....any fix?


Stef



More information about the Squeak-dev mailing list