One of the seminal events in computing history was GuySteele's and GeraldSussman's attempt to understand CarlHewitt's ActorsModel. They did this by writing interpreters for a Lispy language that supported message passing. One result was the SchemeLanguage, but the other was the classic paper "The Art of the Interpreter"
from the paper ...
The paper has 3 parts (excluding the introductory material, notes, bibliography), labelled parts 0, 1, and 2. References is made to parts 3 and 4 in a separate paper. What paper would that be? Was it ever written? Is it online?
Nope. From TheEvolutionOfLisp:
See LispLanguage, TheEvolutionOfLisp
One quote of interest to the DesignPatterns community:
One decomposition strategy is the packaging of common patterns of the use
of the language. For example, in Algol a for loop captures a common
pattern of if and goto statements. Packages of common patterns
are not necessarily merely abbreviations to save typing. While a simple
abbrevation has little abstraction power because a user must know what the
appreviation expands into, a good package encapsulates a higher level concept
which has meaning indepenent of its implemenatation. Once a package is
constructed the programmer can use it directly, without regard for the details
it contains, precisely because it corresponds to a single notion he uses in
dealing with the programming problem.
(From the Introduction of the paper)