Abstract
We study here some problems yielded by multiple inheritance in object-oriented languages. We give an interpretation and a formalism of heritance mechanisms within the framework of partially ordered sets theory. An inheritance mechanism can be regarded as a traversing algorithm of the inheritance graph, and we prove that those which yields linear extension (total order) play a central role.
We discuss some operational semantic aspects of multiple inheritance, with the introduction of a concept named by multiplicity. After a presentation of some well- known inheritance algorithms we propose two new algorithms based upon depth-first search techniques and some particular classes of linear extensions, recently studied.
We end by applying these results in the case of inheritance with exceptions and by setting a few problems. All these results are implemented in the frame-based language YAFOOL.
Yet Another Frame-based Object Oriented Language. YAFOOL was developped by SEMA-METRA, with the participation of INRIA, under contract with the “Centre de Programmation de la Marine”, and is the basis of Y3®, the expert systems toolbox of SEMA-METRA.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
V References
H. AIT-KACI, R. NASR. “LOGIN: a logic programming language with built-in inheritance” The Journal of Logic Programming, no3 (1985) 185–215.
J. BEZIVIN, “Langages objets et prototypage” Rapport de Recherche No86-9, Lab. Informatique de Brest, 1986.
D.G. BOBROW, K. KAHN, G. KICZALES, L MASINTER, M. STEFIK, F. ZDYBEL, “Common Imps merging Lisp and object-oriented programming” OOPSLA Conf., ACM (1986) 17–29.
V. BOUCHITTE, M. HABIB, M. HAMROUN, R. JEGOU, “Depth-first search and linear extensions” Rapport de Recherche No86-5, Laboratoire Informatique de Brest, 1986.
R.J. BRACHMAN, “What IS-A is and isn’t: an analysis of taxonomic link in semantic network” Computer, Vol. 16, No10 (1983) 30–36.
J.P. BRIOT, “Instanciation et héritage dans les langages objets”, Thèse de 3ème cycle, Paris 1985.
J. CHAILLOUX et al., “Le_Lisp, version 15.2” INRIA 1986.
E. CHOURAQUI, H. FARRENY, D. KAYSER, H. PRADE, “Modélisation du raisonnement et de la connaissance” TSI 4:4 (1985) 391–399.
O. COGIS, M. HABIB, “Nombre de sauts et graphes série-parallèles” RAIRO, Informatique Théorique / Theoretical Informatics, vol. 13, no1 (1979) 3–18.
R. DUCOURNAU, M. HABIB, “De l’héritage multiple dans les langages orientés objet”, Working Paper No 87-1, Laboratoire Informatique de Brest, janvier 1987, submitted.
R. DUCOURNAU, J. QUINQUETON, “YAFOOL, encore un langage objet à base de frames”, Rapport Technique No72, INRIA, août 1986.
R. DUCOURNAU, “YAFLOG, une implémentation de PROLOG en YAFOOL” Rapport interne, SEMA-METRA, novembre 1986.
P. DUGERDIL, “A propos des mécanismes d’héritage dam un langage orienté objet” CIIAM 86 Intelligence Artificielle, Marseille (1986) 67–77.
D.W. ETHERINGTON, R. REITER, “On inheritance hierarchies with exceptions” Proc. AAAI (1983) 104–108.
S.E. FAHLMAN, “NETL: a system for representing and using real-world knowledge”, MIT Press, Cambridge, MA, 1979.
J. FERBER, “MERING: un langage d’acteur pour la représentation et la manipulation des connaissances” Thèse de Docteur Ingénieur, Université Paris VI, 1983.
A. GOLDBERG, D. ROBSON, “SMALLTALK: the language and its implementation”, Addison-Welsey, 1983.
D. KAYSER, “Examen de diverses méthodes utilisées en représentation des connaissances”, Actes RFIA 4, tome 2, Paris (1984) 115–144.
H. LIEBERMAN, “Delegation and inheritance: two mechanisms for sharing knowledge in object-oriented systems”, Journées Langages Orientés Objet, Bigre+Globule, No48 (1986) 79–89.
B. MEYER, “EIFFEL, user’s manual” Software Engineering inc., Santa Barbara, 1986.
D.A. MOON, “Object programming with FLAVORS” in Object Oriented Programming Languages Conference, OOPSLA Proceedings, ACM SIGPLAN Notices (1986) 1–8.
O. PRETZEL, Problem presented at Oberwolfach Conference on Ordered Sets (1985).
R.E. TARJAN, “Depth-first search and linear graph algorithms”, SIAM J. of Computing 1:2 (1972) 146–169.
D.S TOURETZKY, “The mathematics of inheritance systems” Research Notes in Artifical Intelligence, Pitman 1986.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ducournau, R., Habib, M. (1987). On Some Algorithms for Multiple Inheritance in Object Oriented Programming. In: Bézivin, J., Hullot, JM., Cointe, P., Lieberman, H. (eds) ECOOP’ 87 European Conference on Object-Oriented Programming. ECOOP 1987. Lecture Notes in Computer Science, vol 276. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47891-4_23
Download citation
DOI: https://doi.org/10.1007/3-540-47891-4_23
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-18353-2
Online ISBN: 978-3-540-47891-1
eBook Packages: Springer Book Archive