Smalltalk-80: The Language and Its Implementation
and David Robson (ISBN 0-201-11371-6
A classic. Years ago, this book help me form my first notions of what object oriented programming and integrated development environments were all about.
In addition to the comments that follow about implementation and the methodDictionary class chain, are there any other ways in which the book is inaccurate? If someone is about to use Smalltalk for the first time and is using the BlueBook
for reference, what do they need to be aware of if they're using Squeak?
Yes, a classic. Originally called the BlueBook
because of its blue cover. It is one a set that includes the GreenBook
, a collection of implementation histories and such, and the OrangeBook
, a user guide to the original environment.
The authors removed Part Four of the BlueBook
to make what some call the PurpleBook
. They changed the color to help distinguish it from the original.
The portion excised from the original BlueBook
is part that offered a formal specification of the virtual machine, the interpreter, the object memory, and so on. Adele offers several rationales for removing it:
- The implementation material became obsolete. For example, scavenging garbage collectors have replaced the approaches described in the BlueBook. The object table no longer exists in most current implementations. Various vendors have changed certain of these implementation aspects, so that the BlueBook actively misleads new smalltalkers about certain things (such as object-class-methodDictionary chain, which in later versions of Digitalk was an object-methodDictionary-class chain).
- The material was always a formal specification. Even the original implementations were far more efficient. Part of the criticism about Smalltalk performance was based on misunderstanding the difference between specification and implementation.
- The material was overly constraining in more modern computing environments. Such fundamental issues as JIT compiling (introduced by Peter Deutsch hps in the early 80s), platform calls, native window manager use, event-driven os environments, and so on made the implementation material increasingly irrelevant to Smalltalk implementors.
The upshot is that the original BlueBook
is now out of print, and those of us who have them should treasure them as artifacts of a bygone era.
I ran across a couple of copies of this book at PowellsBooks
the other day and said to myself, "Say, it'd be cool to own a copy of that. I might even be able to sell it for a good profit if I wanted." So, I picked up the book and looked at the back - they wanted over $100 for it! So much for making a good profit! -- BillTrost
I was at Powells Technical Bookstore yesterday; a new copy of the BlueBook cost $85. A used copy of the PurpleBook was $31; a new copy of the PurpleBook was $45. Hurry if you want the blue book, they only had one left.
I just saw that the missing chapters of the blue book have been placed on the web: http://users.ipa.net/~dwighth/smalltalk/bluebook/bluebook_imp_toc.html
- (dead link now -- JoshuaBoyd?)
(I have questions about OutOfPrintBooks
. -- JohnPassaniti