Last summer there was a used book sale in Poughkeepsie and among the other sub-$1 treasures was a copy of the Digitalk Smalltalk/V tutorial and programming handbook. The paperback shipped with the first widely available commercial Smalltalk for IBM PC and Macintosh in 1986. Smalltalk was the first object-oriented language I used so I popped the buck and thought I’d get around to looking through it to refresh my memory. It ended up on my bookshelf, unread.
Smalltalk, for the unintiatated, is the first pure object-oriented language and the first graphical integrated development environment (IDE). It was developed at the Xerox Palo Alto Research Center (PARC) in the late 1970’s. PARC later licensed Smalltalk-80 through PARCplace/Digitalk and then, when Xerox cut it loose, became the commercial entity Cincom. Fast forward to Squeak. Squeak is a free, liberally licensed (though maybe not strictly OpenSource or DFSG free), actively developed Smalltalk released by one of the original Smalltalk authors, Alan Kay. I’ve been aware of it for a while but have not had the inclination to play with it.
Last week I saw another reference to Squeak. It was Sunday and I was on-call, so sort of confined to the house, and I figured I would download the virtual machine (VM) and image to take a whack at Smalltalk again. You know what? It’s fun. It’s not what I do at work. It’s different and in lots of ways better than I remember. I’m having a good time. I bought a used copy of Chamond Liu’s Smalltalk, Objects and Design and, for nostalgia, one of Adele Goldberg’s Smalltalk 80: The Language (aka the purple book). I found EMACS key bindings for squeak. I’m digging into the class libraries and really liking it. Even if I don’t do a damn thing with it the exercise feels worthwhile and, I might add, it’s not work.