Smalltalk-80: The Language and Its Implementation
By Adele Goldberg and David Robson, copyright 1983, Addison-Wesley, ISBN 0-201-11371-6
edition used was "Reprinted with corrections, July 1985"
These chapters were scanned and converted to HTML by Dwight Hughes. I would like to thank Adele Goldberg and David Robson for kindly granting me their permission to publish this important and very difficult to find material here on my site.
Copyright to all material presented here in Chapter 26 through Chapter 30 is owned by Adele Goldberg.
26: The Implementation
The Compiler
Compiled Methods
The Bytecodes
The Interpreter
Contexts
Block Contexts
Messages
Primitive Methods
The Object Memory
The Hardware
27: Specification of the Virtual Machine
Form of the Specification
Object Memory Interface
Objects Used by the Interpreter
Compiled Methods
Contexts
Classes
28: Formal Specification of the Interpreter
Stack Bytecodes
Jump Bytecodes
Send Bytecodes
Return Bytecodes
29: Formal Specification of the Primitive Methods
Arithmetic Primitives
Array and Stream Primitives
Storage Management Primitives
Control Primitives
Input/Output Primitives
System Primitives
30: Formal Specification of the Object Memory
Heap Storage
Compaction
The Object Table
Object Pointers
Object Table Entries
Unallocated Space
Allocation and Deallocation
An Allocation Algorithm
A Deallocation Algorithm
A Compaction Algorithm
Garbage Collection
A Simple Reference-counting Collector
A Space-efficient Reference-counting Collector
A Marking Collector
Nonpointer Objects
Compiled Methods
Interface to the Bytecode Interpreter

Please send any problems or suggestions to me at dwighth@ipa.net .