[ANN] BabySRE (Squeak Reverse Engineering) posted on SqueakMap

Hannes Hirzel hirzel at spw.unizh.ch
Mon Dec 20 17:34:00 UTC 2004


Trygve,


Thank you for this very interesting contribution

Trygve Reenskaug wrote:

> SRE (Squeak Reverse Engineering) is new set of three tools making Squeak 
> objects visible and tangible:
> 
> 1) *SRE collaboration* for building a diagram a system of objects with 
> the links between them.
> 
> 2) *SRE Object Browser* to get a full description of a single object 
> with its identity, state, and behavior.
>       The class hierarchy is flattened so that you see the object as a 
> whole.

> 3) *Object>>traceRM:* a method that dumps the stack in the Transcript.
> 
> Taken together, these three tools are meant to get their user in closer 
> contact with the real objects. The tools shall give better understanding 
> of existing systems and better contol over new ones.
> 
> I have written a technical note using these tools to answer the question 
> "What is a Morph?". It is posted at
>     http://heim.ifi.uio.no/~trygver/2004/babysre/BabySRE.pdf

The accompagnying documentation is helpful to get started. I tried to 
get the tools working 3.8g.

> But seeing it on paper is one thing, working with the live objects is 
> another. I encourage you to install BabySRE from SqueakMap:
> 1) Start from Squeak3.7-5989-basic. (Any other release might do, I 
> haven't tried it)
> 2) Install Connectors version 1.9. (2.0 didn't work for me).
>       I got an error while loading. It does not seem to matter.
> 3) Load and open Monticello.
> 4) Open SqueakMap Package Loader. Select and install BabySRE-TRee11.

I just did all installations through SqueakMap. Connectors gave some 
problems I could partly find workarounds.
For that reason *SRE collaboration* does not work yet but the
*SRE Object Browser* and *Object>>traceRM:* are already helpful.

With *SRE Object Browser* I really get the immediate impression that I 
am directly working with objects without having my screen cluttered with 
a lot of Inspectors and Message browsers. This is a real advance in 
comparison to the other tools available so far. It is actually
something one would expect to have in an environment which deals with 
objects.


> I am particularly concerned to learn if the SRE approach is at odds with 
> the visions of the SCG people in Berne. I hope not.

Probably not. I suppose your tools will be a "service" (I didn't look 
into the service architecture yet - where is some documentation?).

In my 3.8g image (with Monticello, Refactoring Browser and Omnibrowser 
installed) I can choose which of the browsers I want when I want to 
browse a class. The same may apply to the CObjectBrowser when the user 
wants to inspect an object - or a direct menu entry.



> I see from this mailing list that there are many contributors who teach 
> Squeak programming. It would be very interesting if some of you could 
> test how students take to the SRE way of describing object systems.

Yes indeed. I think this is a valuable teaching aid. "Life objects".


> BabySRE is part of the BabyUML project. I hope to use a complete rewrite 
> of the SRE tools as parts of a higher level programming language IDE.

An ambitious project but the results are encouraging so far.

> I hope you will try the SRE tools, but don't expect me to maintain them 
> in their present form. All feedback will be welcome. I must admit: 
> positive feedback will be more than welcome.
> 
> Have fun
> --Trygve

Yes, thank you
Hannes






More information about the Squeak-dev mailing list