Twin -- A Design Pattern for Modeling Multiple Inheritance

Hanspeter Mössenböck
Johannes Kepler University Linz
Institute for Practical Computer Science
Altenbergerstraße 69, A-4040 Linz


We introduce an object-oriented design pattern called Twin that allows us to model multiple inheritance in programming languages that do not support this feature (e.g. in Java, Modula-3 or Oberon-2). The pattern avoids many of the problems of multiple inheritance while keeping most of its benefits. The structure of this paper corresponds to the form of the design pattern catalogue in [GHJV95].

Paper at "PSI99: Perscpectives of System Informatics", Novosibirsk, Russia, July 6-9, 1999.
Published in Lecture Notes in Computer Science 1755 (pp. 358-369), ISBN 3-540-67102-1, Springer-Verlag, 1999.
You can download the paper in PDF