> 
> Yes that is a screenshot.  MessageTrace is just a subclass of the
> classic MessageSet which, when the user highlights a chunk of code in
> the bottom pane and presses i(m)plementors, rather than opening a new
> window or pane, the implementors are listed in the top-half of the
> same browser, indented below the currently selected message.
> 
> Likewise, when the user selects (s)enders on a message in the upper
> pane, it outdents those senders above the selected message.  Multiple
> paths of flow can be built.
> 
> Since it does not do type-inference, heavily overloaded selectors will
> cause many extra senders/implementors to be put into the browser -- so
> to handle this the UI merely allows the user to easily trim unwanted
> messages with a couple of simple gestures (swipe select + Command-d).
> 
> The result is a single window that encapsulates the method flow of a
> single piece of functionality (e.g., a "Trace") that the user can
> comprehend because of the way it is presented.
> 
> Try it out in Squeak is the best way to appreciate it.  The code for
> it is not complicated I'm sure it could be adapted into Pharo..

Thanks for the explanation. 
I will try it in squeak because when I thought about that browser 
I was concerned with the senders/multiple implementors display. 

Stef

Reply via email to