Design and Implementation of Smalltalk Mixin Classes
Multiple inheritance has become fashionable with the widespread use of C++. However, its unreflected use introduces more complexity than it tries to solve. In most cases mixin classes are a cleaner solution and better suited to design an object-oriented system. Java, for example, does not offer multiple inheritance but provides interfaces which are mixin classes. Smalltalk did provide multiple inheritance but it was never used in the class library and therefore removed after some time. Smalltalk is a reflective environment and allows the implementation of mixin classes at almost no cost at runtime. We present the design and implementation of Smalltalk mixin classes in VisualWorksSmalltalk and compare it to an alternative
[Sch98] Schäffer B.. Design and Implementation of Smalltalk Mixin Classes. In Ubilab Technical Report, 98.11.1, UBS AG, Zürich, Switzerland, November 1998.
Get publication ( 200K, Adobe Acrobat PDF ).