Getting rid of metaclasses (Was: Behaviors vs Modules)

Jim Benson jb at speed.net
Mon Feb 25 16:51:01 UTC 2002


Alan,

>
> Did that book also have the "Officetalk" paper from PARC, by William
> Newman, Dan Swinehart, Tim Mott, etc.? That was an amazing blast from
> the past.
>

No it doesn't, I've never seen that one. It sounds very interesting,
something I would like to see.

 However, "Interactive Programming Environments" does include what at the
time (like even now) were pretty interesting ideas. One section is called
"Artificial Intelligence in Interactive Programming Environments" which
talks about things like the Lisp Programmer's Apprentice and knowledge based
program editing. That approach is something like "Here's an outline of my
problem, suggest a code solution for me".

PARCs Warren Teitelman wrote up several articles on Interlisp. I remember
being fascinated at the time by "A Display-Oriented Programmer's Assistant"
which contained references to a 'Do what I mean' facility, which is a
different flavor of the Smalltalk Transcript/Workspace/Debugger/cascading
menus environment. Teitelman goes through a couple of programming examples
in the Interlisp environment, and how the integration of the environment
leads to an easier to use system. As an example, he's programming away in a
Transcript Workspace and Debugger and INFORMAIL tells him he has an
important email to read, so he pulls up the email, responds, and resumes
debugging. At the time *I* was trying to poke a character into a PCs display
buffer in assembler, and trying to figure out how I was going to afford to
upgrade from a 160K floppy drive to one of the nice, new, big 360K drives
for *all* my long term storage needs. You've noted that perspective is worth
100 IQ points (I agree entirely), I've noticed that having a "big boy"
machine and the right tools can change your perspective in a hurry.
Fortunately that machine dichotomy isn't nearly as bad now as it was then.

Adele Goldberg has a Smalltalk-80 paper, "The Influence of an
Object-Oriented Language on the Programming Environment" in the book, and
Richard Stallman extolls the virtues of something newish at the time called
"EMACS: The Extensible, Customizable, Self Documenting Display Editor".
Kernighan wrote up the UNIX programming environment. The last two didn't
sound very useful to me in comparison to what other people in the book were
doing. There are a couple of LISP Machine papers by Greenblatt et.al., and
Winograd has his say in a couple of papers.

A blast from the past to be sure, but I'm surprised about how little the
programming task has changed over the last twenty years, and how little
modern programming environments help construct reasonable programs in a
timely manner. My take on this area has mostly been that the machine should
know more about nuts and bolts programming than I do. That should include
not only conceptually simple minded things like "make my code run faster",
but also "programmer coaching".

Jim




More information about the Squeak-dev mailing list