Tech
June 30, 2026
0 views
2 min read

Alan Kay on the meaning of "object-oriented programming" (2003)

Source: Hacker News
Alan Kay on the meaning of "object-oriented programming" (2003)
Tech Daily Byte Analysis

Alan Kay's emails to Stefan Ram in 2003 reveal that his original conception of object-oriented programming (OOP) in 1967 revolved around objects communicating via messages, akin to biological cells or computers on a network. This vision aimed to eliminate data by treating assignment operators as message tokens. Kay's background in biology and mathematics influenced his idea, which also drew inspiration from the Burroughs B5000, Sketchpad, and Simula. He deliberately excluded inheritance as a built-in feature, instead focusing on genericity and polymorphism through algebraic structures. His experiments with this architecture eventually led to the development of Smalltalk at Xerox PARC.

The evolution of OOP was influenced by various paths, including abstract data types (ADTs) and Kay's object-oriented approach. While ADTs gained more traction, Kay's vision for objects as non-data entities was shared by a smaller group, including Carl Hewitt, Dave Reed, and others from the ARPA community. Their work on the ARPANET and Internet design, where the basic unit of computation was a whole computer, shaped their perspective on objects. The contrast between Kay's original OOP vision and later implementations, such as subsequent Smalltalk versions that backslid towards Simula, highlights the complexities of innovation and the challenges of preserving core ideas.

The implications of Kay's clarification are significant for understanding the roots and potential of OOP. By emphasizing messaging, local retention, and late binding, Kay's vision points to the importance of dynamic, flexible systems. This perspective may inform contemporary debates on programming paradigms, particularly in the context of languages like LISP and Smalltalk, which have continued to evolve. As software development continues to advance, revisiting the foundational ideas of OOP can provide valuable insights into creating more modular, adaptable, and powerful systems.

Key Takeaways

Alan Kay's original conception of object-oriented programming focused on messaging, local retention, and late binding, rather than inheritance, polymorphism, and encapsulation.

The development of OOP was influenced by Kay's background in biology and mathematics, as well as his exposure to the Burroughs B5000, Sketchpad, and Simula.

Kay deliberately excluded inheritance as a built-in feature in his early experiments, opting for genericity and polymorphism through algebraic structures instead.

The ARPA community, including Carl Hewitt, Dave Reed, and others, shared Kay's vision for objects as non-data entities, which shaped their work on the ARPANET and Internet design.

About the Source

This analysis is based on reporting by Hacker News. Here is a short excerpt for context:

Comments
Read the original at Hacker News

More in Tech