Skip to main content

On Some Algorithms for Multiple Inheritance in Object Oriented Programming

  • Conference paper
  • First Online:
ECOOP’ 87 European Conference on Object-Oriented Programming (ECOOP 1987)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 276))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

V References

  1. H. AIT-KACI, R. NASR. “LOGIN: a logic programming language with built-in inheritance” The Journal of Logic Programming, no3 (1985) 185–215.

    Article  Google Scholar 

  2. J. BEZIVIN, “Langages objets et prototypage” Rapport de Recherche No86-9, Lab. Informatique de Brest, 1986.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. V. BOUCHITTE, M. HABIB, M. HAMROUN, R. JEGOU, “Depth-first search and linear extensions” Rapport de Recherche No86-5, Laboratoire Informatique de Brest, 1986.

    Google Scholar 

  5. 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.

    Article  Google Scholar 

  6. J.P. BRIOT, “Instanciation et héritage dans les langages objets”, Thèse de 3ème cycle, Paris 1985.

    Google Scholar 

  7. J. CHAILLOUX et al., “Le_Lisp, version 15.2” INRIA 1986.

    Google Scholar 

  8. E. CHOURAQUI, H. FARRENY, D. KAYSER, H. PRADE, “Modélisation du raisonnement et de la connaissance” TSI 4:4 (1985) 391–399.

    Google Scholar 

  9. 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.

    MATH  MathSciNet  Google Scholar 

  10. 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.

    Google Scholar 

  11. R. DUCOURNAU, J. QUINQUETON, “YAFOOL, encore un langage objet à base de frames”, Rapport Technique No72, INRIA, août 1986.

    Google Scholar 

  12. R. DUCOURNAU, “YAFLOG, une implémentation de PROLOG en YAFOOL” Rapport interne, SEMA-METRA, novembre 1986.

    Google Scholar 

  13. P. DUGERDIL, “A propos des mécanismes d’héritage dam un langage orienté objet” CIIAM 86 Intelligence Artificielle, Marseille (1986) 67–77.

    Google Scholar 

  14. D.W. ETHERINGTON, R. REITER, “On inheritance hierarchies with exceptions” Proc. AAAI (1983) 104–108.

    Google Scholar 

  15. S.E. FAHLMAN, “NETL: a system for representing and using real-world knowledge”, MIT Press, Cambridge, MA, 1979.

    Google Scholar 

  16. 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.

    Google Scholar 

  17. A. GOLDBERG, D. ROBSON, “SMALLTALK: the language and its implementation”, Addison-Welsey, 1983.

    Google Scholar 

  18. D. KAYSER, “Examen de diverses méthodes utilisées en représentation des connaissances”, Actes RFIA 4, tome 2, Paris (1984) 115–144.

    Google Scholar 

  19. 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.

    Google Scholar 

  20. B. MEYER, “EIFFEL, user’s manual” Software Engineering inc., Santa Barbara, 1986.

    Google Scholar 

  21. D.A. MOON, “Object programming with FLAVORS” in Object Oriented Programming Languages Conference, OOPSLA Proceedings, ACM SIGPLAN Notices (1986) 1–8.

    Google Scholar 

  22. O. PRETZEL, Problem presented at Oberwolfach Conference on Ordered Sets (1985).

    Google Scholar 

  23. R.E. TARJAN, “Depth-first search and linear graph algorithms”, SIAM J. of Computing 1:2 (1972) 146–169.

    Article  MATH  MathSciNet  Google Scholar 

  24. D.S TOURETZKY, “The mathematics of inheritance systems” Research Notes in Artifical Intelligence, Pitman 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics