Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Inside Smalltalk: vol. 1
LaLonde W., Pugh J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1990. Type: Book (9780134684147)
Date Reviewed: Jul 1 1991

This welcome addition to the smattering of currently available Smalltalk literature is volume 1 of a two-volume series. It covers roughly the same ground as the violet book [1] but discusses many issues that were covered in the green book [2]. It is self-contained and can be used separately from volume 2 if needed. The pace is much more relaxed than that of the violet book. I especially appreciated this book because it clarified many concepts that are intensely discussed by Smalltalk gurus at ACM’s OOPSLA conference and other meetings but only briefly covered in popular Smalltalk literature. These include metaclasses, the MVC (model-view-controller) paradigm of object display, the dependents mechanism, and shallow and deep copies. All these topics are presented exceptionally well.

The first two chapters introduce object-oriented programming to a prototypical Pascal programmer. Chapter 1 introduces the fundamental notions of object-oriented programming. Chapter 2 does an excellent job of explaining how control structures (while loops, if statements, and so on) based on message passing are implemented. This takes the reader over familiar ground (Pascal control structures) while giving him or her the flavor of the radically different object-oriented languages. Chapters 3 to 5 describe the Smalltalk Environment, the programming environment, and the user interface.

Chapters 6 to 8 describe some nongraphic classes. Chapter 6 describes the class Object, which is the root of most user-defined classes. This class interfaces with all the tools described in chapters 3 to 5 and with the built-in error handler. The authors describe these interfaces and the manner in which they work in the environment very nicely. They cover several other interesting and fundamental notions, such as object identity, object copying and parameter passing, and querying the type system. At a more advanced level, they include an interesting discussion on meta-operations that can be used to change the behavior of the system in deeper ways. Metaclasses, a fairly recondite area even for the average object-oriented programmer, are described simply. Readers who had some trouble with the box diagram explanation in the violet book may find this description illuminating. Chapter 8 describes the large and intricate set of collection classes available in Smalltalk.

The pace of this book makes it ideal for use as a text for a language course. The authors have not, however, provided any guidelines about how to base a course on it. The exercises at the end of each chapter are somewhat philosophical, not your average data structure puzzlers. They are quite suitable if the text is being used in a programming languages course but might need to be augmented otherwise. All in all, I thoroughly recommend this book to anybody who has more than a passing interest in Smalltalk or in object-oriented languages in general.

Reviewer:  Venu Vasudevan Review #: CR123834
1) Goldberg, A. and Robson, D. Smalltalk-80: the language. Addison-Wesley, Reading, MA, 1989.
2) Krasner, G. (Ed.) Smalltalk-80: bits of history, words of advice. Addison-Wesley, Reading, MA, 1983.
Bookmark and Share
 
Smalltalk (D.3.2 ... )
 
 
Object-Oriented Programming (D.1.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Smalltalk": Date
Practical Smalltalk
Shafer D., Ritz D., Springer-Verlag New York, Inc., New York, NY, 1991. Type: Book (9780387973944)
Oct 1 1992
A little Smalltalk
Budd T., Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986. Type: Book (9789780201106985)
Mar 1 1988
Inside Smalltalk: vol. 2
LaLonde W., Pugh J., Prentice-Hall, Inc., Upper Saddle River, NJ, 1991. Type: Book (9780134659640)
Aug 1 1992
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy