ACM SIGPLAN Notices · 1990 · 137 citations · 4 references
EngineeringSystems EngineeringKnowledge RepresentationMessage PassingSystems ArchitectureInheritance PatternsObject-oriented DesignObject-oriented ProgrammingEncapsulationHierarchyInheritance BehaviorInheritance HierarchiesInheritance ModelingMixinsMultiple InheritanceObject-oriented Language Design
The diverse inheritance mechanisms provided by Smalltalk, Beta, and CLOS are interpreted as different uses of a single underlying construct. Smalltalk and Beta differ primarily in the direction of class hierarchy growth. These inheritance mechanisms are subsumed in a new inheritance model based on composition of mixins, or abstract subclasses. This form of inheritance can also encode a CLOS multiple-inheritance hierarchy, although changes to the encoded hierarchy that would violate encapsulation are difficult. Practical application of mixin-based inheritance is illustrated in a sketch of an extension to Modula-3.
4
A denotational semantics of inheritance and its correctness
William R. Cook, Jens Palsberg · 1989 · 219 citations
Object-oriented programming with flavors
David A. Moon · 1986 · 198 citations
Objects as closures: abstract semantics of object-oriented languages
Uday S. Reddy · 1988 · 127 citations · Full text