Smalltalk's central architectural insight — that software should be organized as communities of communicating objects rather than as sequences of procedural instructions — came from Kay's background in biology and his reading of the work on cellular systems. Kay saw biological cells as the model for robust, modular software: each cell knows what it is and what it can do, communicates with other cells through chemical messages, and does not require other cells to understand its internal workings. This principle, which Kay called encapsulation, became the foundation of object-oriented programming.
The language was inseparable from its environment. Smalltalk ran in a graphical workspace where any object could be inspected, modified, and recompiled on the fly. There was no distinction between runtime and edit time — the system was always live. This architectural choice reflected Kay's pedagogical conviction: a medium for thought must be inspectable and modifiable at every level, or it reverts to the black-box model that produces passive users. Contemporary programming environments have retained the syntactic features of Smalltalk and largely abandoned the live, inspectable workspace.
Kay has argued repeatedly that what the industry adopted from Smalltalk was the surface — classes, inheritance, message syntax — while missing the deeper point. "I made up the term object-oriented," he famously said, "and I can tell you I did not have C++ in mind." The large language model as an object that receives messages and responds has the syntactic shape of a Smalltalk object but lacks what Kay considered essential: the user's ability to open it up, understand its workings, and modify its behavior. It is an object whose encapsulation has become opacity.
Smalltalk also anticipated — and, Kay would argue, still surpasses — what contemporary AI tools promise. A Smalltalk image contained the entire working environment: every tool, every library, every example, every piece of documentation was a live object the user could examine and adapt. The current ecosystem of AI-assisted development, where code is generated into files the developer then reads as static text, has no equivalent of this liveness. The smooth interface has replaced the inspectable one.
The first Smalltalk (Smalltalk-72) was designed by Kay and implemented primarily by Dan Ingalls. Adele Goldberg joined as pedagogical lead. The language was refined through successive versions — Smalltalk-74, -76, -78, and finally Smalltalk-80, the version released publicly and documented in the "blue book." Every version was shaped by testing it with children, who served as the acid test: a child who could not read the code was evidence that the language had failed.
Smalltalk-80 was commercially distributed and directly inspired Apple's Macintosh development team. Steve Jobs's famous 1979 visit to PARC centered on seeing Smalltalk and the graphical user interface it ran in. What Apple (and later Microsoft) took from the visit was the interface. What Kay wished they had taken was the system's underlying openness.
Objects as cells. Software organized as communities of self-contained units that communicate through messages — a biological architecture for code.
Encapsulation without opacity. Each object hides its internal complexity from others, but the user can always open the hood and see how it works.
Live environment. No distinction between runtime and edit time — every piece of the system is inspectable and modifiable while running.
Pedagogical language. Designed to be read and modified by children, not just by professional programmers.
Surface without substance. Modern object-oriented languages retained Smalltalk's syntax while abandoning its live, inspectable character.