Smalltalk-72 [Was: threads]

PhiHo Hoang phiho.hoang at rogers.com
Sun Feb 24 23:32:33 UTC 2002


Alan Kay wrote:

> To me, the most interesting thing about this exercise was (looking at 
> the past) how much expressive power could be obtained from a tiny 
> amount of code, and (looking at today) how impoverished most scripting

> languages are for no reason I can discern.

Divid Simons couldn't agree more:

> I couldn't agree more. Don't you think it might be useful to augment
squeak by also providing 
> a scripting language (sans-frameworks and image) that fit this bill?

	If no one is interested in this. I'll take it ;-)

	But I need advice from both of you from perspective of ST72 and
SmallScript.

	What does it take to achieve this ? 
	
	I like to throw a script to Squeak and automagically rewarded
with a FreeCell game without loading a frameowork/image.

	Cheers,

	PhiHo.

-----Original Message-----
From: squeak-dev-admin at lists.squeakfoundation.org
[mailto:squeak-dev-admin at lists.squeakfoundation.org] On Behalf Of David
Simmons
Sent: Tuesday, February 19, 2002 7:40 PM
To: squeak-dev at lists.squeakfoundation.org
Subject: RE: Smalltalk-72 [Was: threads]


> -----Original Message-----
> From: squeak-dev-admin at lists.squeakfoundation.org [mailto:squeak-dev- 
> admin at lists.squeakfoundation.org] On Behalf Of Alan Kay
> Sent: Monday, February 18, 2002 11:34 AM
> To: squeak-dev at lists.squeakfoundation.org
> Subject: Re: Smalltalk-72 [Was: threads]
> 
> Thanks to Marcel Weiher, "The Early History of Smalltalk" can be found
at:
> 
> 
> 	http://www.metaobject.com/papers/SmallHistory.pdf
> 
> Now to answer David Simmons' question.
> 

Alan,

Thank you for providing this history and review of OO evolution.

> First, Scheme came later ca. 75 and was more influenced by the early 
> work of Landin in the 60s (the great understander of lambda 
> expressions and the reconciler of LISP and Algol).

I knew that I am just fascinated how little understanding and credit
goes to the Smalltalk related work that happened in this era.

> 
> The history reveals just how ad hoc was the creation of Smalltalk-72
> -- it was the result of a hallway conversation and bet -- this 
> resulted in my one-pager to show how to do a "really powerful 
> extensible oop language in one page". Then Dan Ingalls got it running,

> and suddenly there was a working system. Though it didn't have 
> everything I had planned, it was still interesting in its own right, 
> and we started playing with it.
> 
> The feedins for this one-pager were my own thesis work on Flex 
> (influenced by Simula and Euler), Dave Fisher's control structures 
> thesis (both of these influenced by LISP), Ned Irons' IMP extensible 
> language, and Val Shorre's Meta II compiler compiler.
> 
> The idea was that one could go McCarthy's half-pager a couple of 
> notches better if:
> * one wrote the interpreter as a loop rather than as a recursion
> * objects and classes were the basis
> * a message send was just a notification to the instance->class that a

> message was waiting
> * each class carried the grammar for its interface language
> * the grammar was a programmable grammar a la Meta II
> * the recognizers were classes with access to the control chains, a la

> Fisher
> * the notification was in the form of a control transfer without
> (yet) evaling the params
>        -- that is the class was executed in the context of the static 
> and dynamic chain links
> 
> A version of this half-pager for ST-72 is given in the appendix of the

> history document. I had to recreate it since I couldn't find the 
> original one I did over two weeks in 72 (I'm sure I have it 
> somewhere).
> 
> The result is a very minimal, but expressively powerful OOP system 
> with extensible syntax: ST-72.
> 
> My intent was that we should eventually make the recognizers look more

> like BNF (there are examples of what was in mind in the history), but 
> we never did. However, Scott Warren (who lurks on this
> list) a few years later did "Rosetta Smalltalk" in which he and his 
> friends correctly figured out where this style should go, and 
> implemented a version in a very nice and very pretty system on an 
> 8-bit micro.
> 
> The problem with an easily extensible language (the overhead of 
> writing a class at all in ST-72 also allowed new syntax with no extra
> work) is that, even with great extensions, a tower of babel can result

> pretty quickly. The equivalent of polymorphism, especially with the 
> addtion of new classes, could change the interpretation of a message, 
> since the pattern matching was done during receipt of the message. 
> This introduced ambiguities that could be unpleasant.
> 
> Dan decided to implement a fixed syntax when he did ST-76 (a pretty 
> nice compromise, and nicer than ST-80's today, but similar). We could 
> have gone a different direction, which would gather up the grammar 
> from the existing classes, and use it plus symbolic evaluation to 
> allow both compilation and extensible grammar. Ned Irons did this in 
> IMP, and it worked quite well in his parallel beam parser except for 
> the tower of babel effect. Note the interesting problems in 
> late-binding that have to be solved to allow certain new extensions to

> an already running system.
> 
> To me, the most interesting thing about this exercise was (looking at 
> the past) how much expressive power could be obtained from a tiny 
> amount of code, and (looking at today) how impoverished most scripting

> languages are for no reason I can discern.

I couldn't agree more. Don't you think it might be useful to augment
squeak by also providing a scripting language (sans-frameworks and
image) that fit this bill?

> 

I think a "retrospective" on Scripting languages and the origins of
Smalltalk would make a fascinating, valuable, and popular article in Dr.
Dobbs or Byte Magazine?

-- Dave S. [SmallScript Corp]

SmallScript for the AOS & .NET Platforms David.Simmons at SmallScript.com |
http://www.smallscript.org

> Cheers,
> 
> Alan
> 
> ------
> 
> At 7:59 AM -0800 2/18/02, Alan Kay wrote:
> >Hi Dave --
> >
> >An interesting question. The story of Smalltalk-72 is in "The Early 
> >History of Smalltalk" that I wrote for the ACM almost 10 years ago. I

> >have a .pdf of this which I will post in a swiki if someone will give

> >me URL of a good place to stash it.
> >
> >Then I'll answer your question.
> >
> >Cheers,
> >
> >Alan
> >
> >------
> >At 1:34 PM -0800 2/17/02, David Simmons wrote:
> >>Alan,
> >>
> >>Why was the Smalltalk-72 form abandoned/changed to create
Smalltalk-80?
> >>
> >>I just looked over the manual and it was fascinating. It looks like
a
> >>hybrid between scheme and half-a-dozen scripting languages that
showed
> >>up between the late-80's and early-90's.
> >>
> >>Smalltalk-72 might well have been a very popular scripting language
for
> >>the internet 90's era.
> >>
> >>-- Dave S. [SmallScript Corp]
> >>
> >>SmallScript for the AOS & .NET Platforms 
> >>David.Simmons at SmallScript.com | http://www.smallscript.org
> >>
> >>>  -----Original Message-----
> >>>  From: squeak-dev-admin at lists.squeakfoundation.org
[mailto:squeak-dev-
> >>>  admin at lists.squeakfoundation.org] On Behalf Of Bijan Parsia
> >>>  Sent: Saturday, February 16, 2002 10:17 AM
> >>>  To: squeak-dev at lists.squeakfoundation.org
> >>>  Subject: re: threads
> >>>
> >>>  On Sat, 16 Feb 2002, Helge Horch wrote:
> >>>
> >>>  > At 23:57 15.02.2002 -0500, Bijan Parsia wrote:
> >>>  > >That being said, I don't quite get all of the Smalltalk-72
model,
> >>>  though
> >>>  > >I'm diligently (for me) perusing the manual :)
> >>>  >
> >>>  > Ah!, you mean the one at
> >>>  >
<http://www.spies.com/~aek/pdf/xerox/alto/Smalltalk72_Manual.pdf>?
> >>>
> >>>  Yes indeed, thanks to whomever put that up. I guess I should pop
the
> >>link
> >>>  into the swiki.
> >>>
> >>>  Cheers,
> >>>  Bijan Parsia.
> >>>
> >
> >
> >--
> 
> 
> --






More information about the Squeak-dev mailing list