MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Safe Metaclass Programming (1998) [2 citations — 0 self]

by Noury M.N. Bouraqadi-Saâdani ,  Noury M. N ,  Thomas Ledoux ,  Fred Rivard
Add To MetaCart

Abstract:

In a system where classes are treated as first class objects, classes are defined as instances of other classes called metaclasses. An important benefit of using metaclasses is the ability to assign properties to classes (e.g. being abstract, being final, tracing particular messages, supporting multiple inheritance), independently from the base-level code. However, when both inheritance and instantiation are explicitly and simultaneously involved, communication between classes and their instances raises the metaclass compatibility issue. Some languages (such as Smalltalk) address this issue but do not easily allow the assignment of specific properties to classes. In contrast, other languages (such as Clos) allow the assignment of specific properties to classes but do not tackle the compatibility issue well. In this paper, we describe a new model of metalevel organization, called the compatibility model, which overcomes this difficulty. It allows safe metaclass programming since it m...

Citations

713 The Art of Metaobject Protocol – Kiczales, Rivieres, et al. - 1991
386 Concepts and Experiments in Computational Reflection – Maes - 1987
336 Mixin-based inheritance – Bracha, Cook - 1990
194 Adaptive Object-Oriented Software. The Demeter Method with Propagation Patterns – Lieberherr - 1996
96 Metaclasses are first class: The ObjVlisp model – Cointe - 1987
80 Separation of Concerns – Lopes, Hursch - 1995
73 Wrappers to the rescue – Brant, Foote, et al. - 1998
40 Evaluating message passing control techniques in Smalltalk – Ducasse - 1999
40 The Language and its Implementation – Smalltalk-80 - 1983
36 Towards a Methodology for Explicit Composition of MetaObjects. OOPSLA'95 – Mulet, Malenfant, et al. - 1998
26 Programming with Explicit Metaclasses in Smalltalk – Briot, Cointe - 1989
22 Explicit Metaclasses as a Tool for Improving the Design of Class Libraries – LEDOUX, COINTE - 1996
17 Metaclass compatibility – Graube - 1989
12 Reflections on Metaclass Programming in SOM – DANFORTH, FORMAN - 1994
10 Smalltalk with Style – Klimas, Skublics, et al. - 1996
10 SOMobjects Developer Toolkit Users Guide release 2.0 – IBM - 1993
9 A New Smalltalk Kernel Allowing Both Explicit and Implicit Metaclass Programming – RIVARD - 1996
5 Derived Metaclasses in SOM – Danforth, Forman - 1994
3 Metaclass composability – Bouraqadi-Saadani, Ledoux, et al. - 1996
3 Marianne Huchard, and Marie-Laure Mugnier. Proposal for a Monotonic Multiple Inheritance Linearization – Ducournau, Habib - 1994
2 Research Directions in Concurrent Object-Oriented Programming, chapter Analysis of Inheritance Anomaly in Object-Oriented Concurrent Programming Languages – Matsuoka, Yonezawa - 1993
1 Reflection and Distributed Systems : an Experiment with CORBA and Smalltalk – Ledoux - 1998
1 Object Behavioral Evolution Within Class Based Reflective Languages – Rivard - 1997