Previous studies concerning multiple inheritance convinced us that a better analysis of conflict resolution mechanisms was necessary. In [DHHM92], we stated properties that a sound mechanism has to respect. Among them, a monotonicity principle plays a critical role, ensuring that the inheritance mechanism behaves “naturally” relative to the incremental design of the inheritance hierarchy. We focus here on linearizations and present an intrinsically monotonic linearization, whereas currently used linearizations are not. This paper describes the algorithm in detail, explains the design choices, and compares it to other linearizations, with LOOPS and CLOS taken as references. In particular, this new linearization extends CLOS and LOOPS linearizations, producing the same results when these linearizations are sound.
[1]
Daniel G. Bobrow,et al.
CommonLoops: merging Lisp and object-oriented programming
,
1986,
OOPLSA '86.
[2]
Linda G. DeMichiel,et al.
The Common Lisp Object System: An Overview
,
1987,
ECOOP.
[3]
Henry G. Baker,et al.
CLOStrophobia: its etiology and treatment
,
1991,
OOPS.
[4]
Jean-Claude Royer.
A propos des concepts de CLOS
,
1991
.
[5]
R. Lathe.
Phd by thesis
,
1988,
Nature.
[6]
R. Ducournau,et al.
Masking and conflicts, or to inherit not to own!
,
1991
.