Smalltalk and the machine it was built for
In September 1972, Alan Kay wagered that the core of a new programming language — one where every piece of data was an object, and every operation was a message — could fit on a single page of code. His colleague Dan Ingalls took the challenge. By October, Ingalls had an interpreter running.
That bet produced Smalltalk-72, the first real version of the language Kay’s Learning Research Group at Xerox PARC had been sketching since he arrived in 1970. The group — Kay, Ingalls, Adele Goldberg, Ted Kaehler, Diana Merry, and a few others — was not, strictly speaking, building a programming language. They were building the software half of a computer that didn’t exist yet: Kay’s Dynabook, a tablet-sized personal machine meant to be programmable by anyone, children especially.
Simula had given the world classes and objects. Smalltalk went further: it made objects everything. Numbers, windows, the compiler, the debugger — all objects, all governed by the same rules. Computation wasn’t a function call; it was a message sent from one object to another, with the recipient deciding how to respond. This seemingly small shift had large consequences: any behavior could be overridden, any object could be inspected, any class could be extended without touching the original. The development environment — browser, workspace, debugger — was itself written in Smalltalk and could be modified while the program ran.
Goldberg recruited the children of PARC colleagues to test the system. One of them, twelve-year-old Marian Goldeen, spent weeks building increasingly complex programs and then turned around and taught the language to her peers, without adult help. Kay later pointed to moments like that as the clearest evidence the group had built something with the right properties — not just powerful but legible.
In December 1979, Steve Jobs visited Xerox PARC as part of a deal that had given Xerox a stake in Apple. He watched a live Smalltalk demo: overlapping windows, pull-down menus, a mouse-driven interface, live objects that could be inspected and modified mid-run. Two years later, the Apple Lisa shipped with a graphical shell built on similar principles. In January 1984, the Macintosh arrived. The interface grammar you are using right now — windows, menus, icons, a pointer — traces back to that room in Palo Alto.
Smalltalk-80, the first public release, arrived in 1980 with metaclasses, the Model-View-Controller pattern for separating data from interface, and image-based persistence — the entire program state saveable as a single snapshot. Virtually every object-oriented language that followed borrowed from it: Objective-C, Python, Ruby, Java, C#. Alan Kay received the 2003 Turing Award “for pioneering many of the ideas at the root of contemporary object-oriented programming languages, leading the team that developed Smalltalk, and for fundamental contributions to personal computing.”
The Dynabook was never built. But the language written for it outlasted every computer it ran on, and the ideas it demonstrated were too good to stay at Xerox.
Sources
- Smalltalk — Wikipedia — development timeline, Smalltalk-72 through Smalltalk-80, key features, influence on later languages.
- Smalltalk at 50 — Computer History Museum — Kay’s September 1972 bet, Ingalls’s implementation, Goldberg’s educational work, and Marian Goldeen’s story.
- Alan Kay — ACM Turing Award — 2003 award citation for Smalltalk and personal computing contributions.