paper

The Early History of Smalltalk

  • Authors:

📜 Abstract

Most ideas come from previous ideas. The sixties, particularly in the ARPA community, gave rise to a host of notions about “human-computer symbiosis” through interactive time-shared computers, graphics screens and pointing devices. Advanced computer languages were invented to simulate complex systems such as oil refineries and semi-intelligent behavior. The soon-to-follow paradigm shift of modern personal computing, overlapping window interfaces, and object-oriented design came from seeing the work of the sixties as something more than a “better old thing.” This is, more than a better way: to do mainframe computing; for end-users to invoke functionality; to make data structures more abstract. Instead the promise of exponential growth in computing volume demanded that the sixties be regarded as “almost a new thing” and to find out what the actual “new things” might be. For example, one would computer with a handheld “Dynabook” in a way that would not be possible on a shared mainframe; millions of potential users meant that the user interface would have to become a learning environment along the lines of Montessori and Bruner; and needs for large scope, reduction in complexity, and end-user literacy would require that data and control structures be done away with in favor of a more biological scheme of protected universal cells interacting only through messages that could mimic any desired behavior. Early Smalltalk was the first complete realization of these new points of view as parented by its many predecessors in hardware, language and user interface design. It became the exemplar of the new computing, in part, because we were actually trying for a qualitative shift in belief structures—a new Kuhnian paradigm in the same spirit as the invention of the printing press-and thus took highly extreme positions which almost forced these new styles to be invented.

✨ Summary

Summary

Alan C. Kay presents a first-person history of the ideas, systems, people, and design pressures that led to Smalltalk. The account traces a lineage from the Burroughs B220, B5000, Sketchpad, Simula, FLEX, Logo, Lisp, Planner, and ARPA human–computer-symbiosis research to the Smalltalk systems developed at Xerox PARC. Its central technical claim is that computation can be organized around protected, universal objects that encapsulate state and behavior and communicate through messages. Kay also connects this model to personal computing, overlapping-window interfaces, direct manipulation, extensibility, virtual machines, interactive development, and programming environments intended to support learning.

The paper documents the progression from Smalltalk-71 and Smalltalk-72 through Smalltalk-76 and Smalltalk-80, emphasizing the practical role of implementation, incremental modification, object persistence, polymorphism, inheritance, and user-interface experimentation. It also records the Learning Research Group’s attempts to use Smalltalk with children and nonprogrammers, concluding that programming fluency depends not only on language features but also on the gradual acquisition of design strategies and powerful conceptual abstractions.

Documented influence

  • The ACM bibliographic record identifies the article as a historical account of Smalltalk and reports substantial subsequent citation activity; the record currently lists 190 citations. (doi.org)
  • Later research on personal programming and object computers cites this paper when describing Smalltalk’s object-oriented model and explicitly builds on Smalltalk- and Squeak-inspired ideas for communicating objects and personal computational environments. (link.springer.com)
  • Research on computational thinking and computing education cites the paper as part of the intellectual history connecting Smalltalk, procedural literacy, personal computing, and educational programming environments. (link.springer.com)
  • Work on verified software components cites the paper in connection with “Smalltalk-style” objects, including subtyping, inheritance, self-reference, and late binding. (link.springer.com)
  • Scholarly and educational references continue to use the paper as a standard historical source for Smalltalk, personal dynamic media, and the development of object-oriented programming. (cambridge.org)

The available evidence supports treating the paper primarily as an influential historical and conceptual account rather than as a technical specification or a paper that directly introduced a new programming-language implementation. The concrete technical and industrial influence described in later sources is generally attributed to Smalltalk and its descendants; this paper helped preserve, explain, and disseminate that history and its design rationale.