[squeak-dev] 40 years ago, in a galaxy not far away ...

Bert Freudenberg bert at freudenbergs.de
Tue Oct 2 10:53:00 UTC 2012


Alan Kay about the Fall of 1972:

===================
In Sept. within a few weeks of each other, two bets happened.
[...]
One day, in a typical PARC hallway bullsession, Ted Kaehler, Dan Ingalls, and I were standing around talking about programming languages. The subject of power came up and the two of them wondered how large a language one would have to make to get great power. With as much panache as I could muster, I asserted that you could define the “most powerful language in the world” in “a page of code.” They said, “Put up or shut up.”
[...]
It turned out to be more difficult than I had first thought for three reasons. First, I wanted the program to be more like McCarthy’s second non-recursive interpreter--the one implemented as a loop that tried to resemble the original 709 implementation of Steve Russell as much as possible. It was more “real.” Second, the intertwining of the “parsing” with message receipt--the evaluation of parameters which was handled separately in LISP--required that my object-oriented interpreter re-enter itself “sooner” (in fact, much sooner) than LISP required. And, finally, I was still not clear how send and receive should work with each other.

The first few versions had flaws that were soundly criticized by the group. But by morning 8 or so, a version appeared that seemed to work [...] The major differences from the official Smalltalk-72 of a little bit later were that in the first version symbols were byte-coded and the receiving of return of return-values from a send was symmetric—-i.e. receipt could be like parameter binding—-this was particular useful for the return of multiple values. For various reasons, this was abandoned in favor of a more expression-oriented functional return style.

Of course, I had gone to considerable pains to avoid doing any “real work” for the bet, but I felt I had proved my point. This had been an interesting holiday from our official “iconic programming” pursuits, and I thought that would be the end of it. Much to my surprise, only a few days later, Dan Ingalls showed me the scheme working on the NOVA. He had coded it up (in BASIC!), added a lot of details, such as a token scanner, a list maker, etc., and there it was-–running. As he liked to say: “You just do it and it’s done.”

It evaluated “3 + 4” v_e_r_y s_l_o_w_l_y (it was “glacial”, as Butler liked to say) but the answer always came out 7. Well, there was nothing to do but keep going. Dan loved to bootstrap on a system that “always ran,” and over the next ten years he made at least 80 major releases of various flavors of Smalltalk.
===================

http://c2.com/cgi/wiki?EarlyHistoryOfSmalltalk 

- Bert -




More information about the Squeak-dev mailing list