is squeak really object oriented ?

goran.krampe at bluefish.se goran.krampe at bluefish.se
Fri May 23 08:46:24 UTC 2003


Hi all!

<diegogomezdeck at consultar.com> wrote:
[SNIP]
> > another problem is that when i am writing the source code of an object,
> > i do  not work with objects again. i only manipulate text and imagine
> > those  objects, but the objects are not on my workspace. i think that
> > object  oriented programming should look like working with objects and
> > not with text.
> 
> Today's answer: It's because you work in browsers instead of working with
> inspectors and debugers.
> 
> Tomorrow's answer: We need MORE level of objects representation in Squeal.
> eToys are one example of a possible path to walk.  Croquet is another.

Exactly. We have tons of cool browsers (Whiskers, StarBrowser,
younameitwegotit-Browser) but we only have one slightly old and not so
impressive debugger. Hmmm...

I want more visual tools. And now that we have Connectors it seems the
ground work has already been done by Ned! I want visual inspectors using
Connectors (Ned did one try a while ago) like the old one I used with VW
years ago. You simply dragged the references out like wires and then you
could easily spot cyclic references etc.

And I want this somehow integrated with the debugger. In 1994 we did a
simulation workbench at school which was very much like this, you
instantiated objects by drag and drop and connected them to each other
like Connectors. Then you could add scripts to them (with inheritance
blabla etc) and they could send messages to each other in broadcast or
directed etc.

And then we had a VCR recorder kinda interface with play, pause, stop,
etc. so that we could play it out and actually see the messages being
sent along the wires and also visually see how the objects worked inside
(live inspectors).

All this was really hard to implement back then but in Squeak it seems
like these ideas are just "ready to pluck" and mold into a
superdebugging environment. To top it off it would be so ultracool if we
somehow could use transactions perhaps in combination with
contexts/continuations/whatever to actually have a debugger that can
*rewind*.

I discussed that with Henrik Gedenryd at OOPSLA (not last year but the
year before) and we got really excited about it - it would definitely
change the way we work.

Think about it:

To work almost exclusively inside the debugger with all live objects
visually in front of you, change a method, step forward a bit, naahh it
got it wrong, rewind, change method again, step forward, ah looks good.
And so on.

The ultimate Just In Time Programming tool. :-)

</rambling>

regards, Göran



More information about the Squeak-dev mailing list