Smalltalk
In 1969, at the heart of Xerox PARC in Palo Alto, Alan Kay began dreaming of a different kind of computer, amid the excitement of the first interactive machines, emerging graphical displays, and the mice that Douglas Engelbart had just invented. Kay envisioned a “personal medium” capable of amplifying human intelligence. From this radical vision would emerge Smalltalk, a language that would revolutionize our approach to programming.
The idea grew from three major influences. Simula had introduced objects, LISP mastered symbolic manipulation, and Sutherland’s Sketchpad demonstrated what graphical interaction could achieve. Alan Kay mixed these ingredients with his characteristic boldness and set out to define “the most powerful programming language in the world” in a single page of code. He succeeded with Smalltalk-71, a first version created in just a few days that demonstrated an entire system could be based on message passing between objects. Gone were the languages where objects coexisted with primitive types in an awkward hierarchy. Here, everything is an object: numbers as well as control structures, windows as well as characters. This conceptual radicalism was no intellectual whim. It forged a system of rare coherence, where every element obeyed the same fundamental rules.
The concept matured through successive versions. Between 1972 and 1976, the PARC team refined this world of communicating objects. Dan Ingalls made a decisive contribution with the invention of overlapping windows. This graphical interface would later become an industry standard, particularly when Apple drew inspiration from it for the Macintosh.
With Smalltalk-76, Ingalls consolidated the gains from previous experiments by proposing a complete system: just-in-time compilation, automatic memory management, integrated graphical interface. The development environment allowed code modification while the program was running, something unprecedented. This flexibility transformed programming into continuous exploration.
But it was with Smalltalk-80, released publicly in 1980, that the system reached maturity. Ten years of research culminated in this version that standardized the language and its environment. The fundamental concepts crystallized: everything is an object, objects communicate through messages, classes are themselves objects, inheritance enables code reuse. These principles would lastingly influence the subsequent evolution of computing.
Smalltalk’s strength lies in its conceptual purity. Where other languages like C++ or Java awkwardly graft object-oriented features onto a procedural foundation, Smalltalk applies its paradigm throughout. This theoretical coherence is accompanied by remarkable practical innovations: the integrated development environment, the garbage collector that frees the programmer from memory management, the modern interface with its windows, menus, and mouse.
Smalltalk’s expansion coincided with the emergence of personal computers powerful enough to host it. Steve Jobs discovered the system during his visit to PARC in 1979. The impact was such that it directly shaped the development of the Macintosh interface. The influence then spread throughout the industry: Objective-C, Ruby, Python, Java each borrowed elements from Smalltalk’s object model.
Alan Kay had initially designed Smalltalk for teaching programming to children. Objects intuitively model real-world entities, the graphical interface facilitates experimentation. This educational dimension survives in projects like Squeak and Etoys, which perpetuate the idea of computing accessible to all.
Smalltalk’s development illustrates the importance of institutional context in innovation. Xerox PARC offered its researchers exceptional freedom, without immediate commercial pressure. This autonomy made the emergence of an innovative system possible. Paradoxically, Xerox never managed to capitalize commercially on this major innovation.
The 1990s and 2000s saw numerous implementations flourish: VisualWorks for professionals, Squeak for education, GNU Smalltalk for the free software world. This diversity testifies to the persistent vitality of the model and its adaptability.
Smalltalk is no longer a dominant language today, but the principles it introduced—objects, messages, inheritance, interactive environment—have become industry standards. The evolution toward touch interfaces and block-based programming extends its vision of intuitive and accessible computing. This story reveals the importance of long-term vision in technological progress. Smalltalk combines an elegant theory of object-oriented programming with practical innovations in user interface. Its journey shows that ideas need time to find their place, and that the true impact of an innovation is often measured by subsequent generations.