This book provides an introduction to the principles of object-oriented programming and to the Smalltalk environment, presenting many of the key features of the Smalltalk language. Smalltalk is described from a top-down approach using summaries and tools in the language, making the Smalltalk system, language, and environment more easily understandable.