On Mon, Jun 16, 2008 at 9:48 AM, Lukas Renggli <[EMAIL PROTECTED]> wrote:
> On 6/16/08, Damien Cassou <[EMAIL PROTECTED]> wrote:
>> We are talking about the same thing. However, I still do not
>> understand your answer.
>
> Ok, let me backtrack:
>
> 1. In Smalltalk you have a stack of context frames, subinstances of
> ContextPart. The frames are created when sending messages or when
> activating blocks.
>
> 2. Each of these frames has a little (fixed size) stack that is used
> on the byte-code level to remember intermediate results and to push
> receiver and arguments of message sends.
>
> Stack 1 is what you commonly see in the debugger and what you usually
> refer to as "the execution stack". You suggested to display stack 2 in
> the debugger as well. I don't agree that this is useful, because it
> violates levels of abstraction.
>
> Stack 2 is only meaningful on a bytecode level. It cannot be directly
> manipulated using the Smalltalk code you see in the Debugger. Unless
> you exactly know how the compiler generates bytecodes for the current
> source code, it is not obvious what the stack displays or when it
> grows or shrinks. Smalltalk debuggers work on the source-level (stack
> 1), whereas bytecodes are on a level below (stack 2). I believe that
> should not be mixed.
>
> It would be cool to have a Smalltak bytecode debugger, that steps
> through the bytecodes and where it would make perfect sense to display
> stack 2. However that was not the point of this discussion.
>
> Hope this cleared up things.

This is much clearer but I have to disagree.  I didn't know these
details but I was still able to understand and use this pane. It
contained valuable information to me in a lot of cases. Moreover, it
is sometimes the only way to get the information you want when the
statements have border effect (as it was the case when I developed the
Nile Stream library).

-- 
Damien Cassou
Peter von der Ahé: «I'm beginning to see why Gilad wished us good
luck». (http://blogs.sun.com/ahe/entry/override_snafu)

_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to