Papers by Marc V L Van Limberghen

Object Oriented Systems, 1996
In class-based multiple inheritance systems, interpretations as different as duplication, sharing... more In class-based multiple inheritance systems, interpretations as different as duplication, sharing and specialization are associated with the single phenomenon of name collisions. To deal with those name collisions, various mechanisms have been proposed, but these solutions generally restrain software reusability which is considered to be one of the key features of OO systems. On top of this, most multiple inheritance systems do not completely cover all the different interpretations of name collisions. This paper shows that the entire multiple inheritance dilemma can and should be seen as a conflict between inheritance and data encapsulation only. Orthogonalizing these two concepts in a mixin-based framework permits appropriate solutions of all the problems listed above. To this extent a formal model is proposed together with its denotational semantics. This minimal multiple inheritance model establishes a valuable basis for OO languages and software engineering systems.
Object Oriented Systems, Mar 1, 1996
In class-based multiple inheritance systems, interpretations as different as duplication, sharing... more In class-based multiple inheritance systems, interpretations as different as duplication, sharing and specialization are associated with the single phenomenon of name collisions. To deal with those name collisions, various mechanisms have been proposed, but these solutions generally restrain software reusability which is considered to be one of the key features of OO systems. On top of this, most multiple inheritance systems do not completely cover all the different interpretations of name collisions. This paper shows that the entire ...
In [VanLimberghen&Mens96] we showed how an orthogonal combination of twooperators, inheritanc... more In [VanLimberghen&Mens96] we showed how an orthogonal combination of twooperators, inheritance and encapsulation, provided a solution for multiple inheritance problems inclass-based systems. In this document we elaborate further upon this idea in two ways. First wepresent a small prototype-based language called LENS incorporating the two operators. Secondlywe focus on the encapsulation operator, and argument a further decomposition of this operator intwo more primitive operators, namely preventInvocation and ...
Lecture Notes in Computer Science, 1993
Mixin-based inheritance is an inheritance technique that has been shown to subsume a variety of d... more Mixin-based inheritance is an inheritance technique that has been shown to subsume a variety of different inheritance mechanisms. It is based directly upon an incremental modification model of inheritance. This paper addresses the question of how mixins can be seen as named attributes of classes the same way that objects, methods, and also classes in their own right, are seen
In [VanLimberghen&Mens96] we showed how an orthogonal combination of twooperators, inheritance an... more In [VanLimberghen&Mens96] we showed how an orthogonal combination of twooperators, inheritance and encapsulation, provided a solution for multiple inheritance problems inclass-based systems. In this document we elaborate further upon this idea in two ways. First wepresent a small prototype-based language called LENS incorporating the two operators. Secondlywe focus on the encapsulation operator, and argument a further decomposition of this operator intwo more primitive operators, namely preventInvocation and ...
Programming Lab (DINF) Faculty of Sciences Vrije Universiteit Brussel Pleinlaan 2, B-1050 Brussel... more Programming Lab (DINF) Faculty of Sciences Vrije Universiteit Brussel Pleinlaan 2, B-1050 Brussels, BELGIUM E-mail: mvlimber@ vub. ac. be Phone:+ 32.2. 6293492 Fax:+ 32.2. 6293495 Keywords: language design, OO software engineering, formal model, denotational semantics

In class-based multiple inheritance systems, interpretations as different as duplication, sharing... more In class-based multiple inheritance systems, interpretations as different as duplication, sharing and specialisation are associated with the single phenomenon of name collisions. To deal with those name collisions, various mechanisms have been proposed. But these solutions generally restrain software reusability which is considered to be one of the key features of OO systems. On top of this, most multiple inheritance systems do not completely cover all the different interpretations of name collisions.
This paper shows that the entire multiple inheritance dilemma can and should be seen as a conflict between inheritance and data encapsulation only. Orthogonalising these two concepts in a mixin-based framework will permit us to appropriately solve all the problems listed above. To this extent we propose a formal model together with its denotational semantics. This minimal multiple inheritance model establishes a valuable basis for OO languages and software engineering system
Uploads
Papers by Marc V L Van Limberghen
This paper shows that the entire multiple inheritance dilemma can and should be seen as a conflict between inheritance and data encapsulation only. Orthogonalising these two concepts in a mixin-based framework will permit us to appropriately solve all the problems listed above. To this extent we propose a formal model together with its denotational semantics. This minimal multiple inheritance model establishes a valuable basis for OO languages and software engineering system
This paper shows that the entire multiple inheritance dilemma can and should be seen as a conflict between inheritance and data encapsulation only. Orthogonalising these two concepts in a mixin-based framework will permit us to appropriately solve all the problems listed above. To this extent we propose a formal model together with its denotational semantics. This minimal multiple inheritance model establishes a valuable basis for OO languages and software engineering system