Metaclasses and Reflection in Smalltalk

Tony Clark
DOI: https://doi.org/10.48550/arXiv.1804.07272
2018-04-18
Abstract:Many Object Oriented Programming Languages provide reflective features which may be used to control the interpretive mechanism of the language. Often these features are defined with respect to a golden braid consisting of objects classes and meta-classes. This report reviews the Smalltalk golden braid and generalize it for multiple inheritance leading to choices between many different inheritance strategies. The reflective features of Smalltalk cannot affect the basic mechanisms of inheritance and so an arbitrary choice must be made for multiple inheritance. A language is described in which the reflective features of Smalltalk are extended so as to allow programmer defined inheritance strategies.
Software Engineering
What problem does this paper attempt to address?