Dr. Alan Kay on the Meaning of “Object-Oriented Programming”

In this email exchange, Alan Kay, the person who invented the term Object-Oriented, outlined the original intent behind the term Object:

OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. It can be done in Smalltalk and in LISP. There are possibly other systems in which this is possible, but I’m not aware of them.