He is the author of a dozen books on object-oriented programming, programming languages, and data structures. In his first book (A Little Smalltalk, 1984) he described the first implementation of Smalltalk produced independently of Xerox Parc. He also wrote one of the first data structures textbooks to use C++ (Classic Data Structures in C++, 1994) and to use the STL (Data Structures in C++ using the STL, 1997). He is also the author of An Introduction to Object-Oriented Programming (first published in 1991, now in its third edition), C++ for Java Programmers (1999), Multiparadigm Programming in Leda (1995), and Classic Data Structures in Java (2001).