Musing about Smalltalk
kgf at golden.net
Wed Sep 13 11:53:21 UTC 2000
A construct browser sounds like a very interesting idea! I can see how it
would alter the way objects are perceived...say I've got a composite Morph
filled with submorphs, if I inspect it with today's browser I really only see
the toplevel morph...I can follow the submorph chain to each contained morph,
but the inspector really doesn't represent the whole composite. From what
you're describing, this construct browser would in some way give a view of
the composite morph as a whole.
Before I dove back into Smalltalk last spring I had been doing some thinking
about what I termed 'exploratory' interfaces. These interfaces let you (or
rather, the student) explore all aspects of a simulated environment (in 3d, 2d
or text), and manipulate aspects of that environment. Only now do I realize
that to a certain extent, the Smalltalk world provides this, albeit at a lower
level than what I was thinking of. I guess what I was thinking of originally
was a construction browser of some sort.
Well, I don't have an immediate answer, but I will think on this some
more...the idea is intreguing!
> Kevin --
> This was the original intent for all users (but only a few like
> yourself find the process comfortable in today's system). We plan
> (and need) to make this process more understandable for a much wider
> range of users (and we could really use some help). We have various
> kinds of browsers, debuggers, inspectors and explorers, all of which
> are useful at the object level, but we don't have a browser/inspector
> for larger constructions (the equivalent of apps) -- e.g. like
> Celeste. It's largely a problem of focus and highlighting the parts
> of the nexus that are really important compared to the merely
> supporting players. It would be nice if this kind of brower were
> semiautomatically built as part of the app construction process. It
> would be nice if there were a stronger larger structure architecture
> than just Morphic, or MVC, etc.
> Any ideas?
> At 10:21 PM -0400 9/12/00, Kevin Fisher wrote:
> >[ beware! ahead lies coffee-induced speculation and musing! ]
> >I've been polishing off my enhancements to Celeste the past couple weeks (I
> >added a tabbed preferences dialog to replace the ever-growing categories menu,
> >for example) and I've been noticing something rather interesting about the
> >whole process.
> >Morphic is all rather new to me so I've been winging it as I go. The nice
> >thing about Smalltalk is that I don't have to flip through any reference
> >books--I can just open a browser and jump directly into any class in the
> >system to see how things are done. I learned Smalltalk from the 'purple' book
> >(Goldberg et al). I really just picked up the basics from the book...and I
> >really don't need to flip back to it, at all, even for reference. Even after
> >long absences from Smalltalk (ie over a year) I've still been able to jump
> >right back in.
> >This got me thinking..to me it seems that the whole learning process with
> >Smalltalk is quite different from any other language I've used. You seem to
> >learn progressively...since every class is open for inspection you CAN grow
> >your knowledge and apply it simultaneously, instead of the traditional
> >learn-in-chunks-and-then-apply way. It just FEELS different...as I started
> >out with Morphic I knew nothing, and yet without any textbooks or detailed
> >HOWTO's I managed to figure it all out by browsing the system and trying
> >things in a workspace, and in a very short time. Outstanding! Just try
> >learning C or C++ from the headers in /usr/include and see how far you can
> >get... :) More realistically, even with a well documented online system (like
> >MS Visual Studio) it is still very difficult to get up to speed on something
> >like MFC without a detailed book or reference. Not so with Smalltalk, from
> >what I've experienced thus far.
> >I dunno, maybe the coffee is getting to my brain tonight, but I just find the
> >whole thought process that Smalltalk inspires to be quite remarkable. It's
> >got me thinking in a whole new way.
More information about the Squeak-dev