the discussion on the page itself is amazing :) from THE <i>dude</i> himself:<p>> The basic misunderstanding here is between what I meant as objects and what the term has been turned into. The main one was that the intent was to have the interior of objects be a system of objects. I.e. "objects" and "modules" are the same thing. This harmonizes with the compositional ideas above.<p>> Another misunderstanding was the idea of objects as "data types" or as "operators" (both of which can be done by virtue of an object being semantically a whole computer). But we really thought about objects as "loci of goal satisfactions" and that the best messages would be to request goals and the best objects would be those who can satisfy "large goals".<p>> The universality of objects could be used to make every part, with the aim to get stronger semantically as more comprehensive objects were made. Some of the precursor ideas here were "systems theory" (Bertalanfy, Alexander, etc.), programming as "constraint solving" (Sketchpad), etc.<p>> In practice, we did a lot less during the Parc period because of some of the resource constraints of the 70s. Still, it was clear that composition was almost always better than inheritances, and that recursive systems of name spaces was better than the more "Lisp-like" architecture we used for references, etc.