Advertisement

Name Collision in Multiple Classification Hierarchies

  • Jørgen Lindskov Knudsen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 322)

Abstract

Supporting multiple classification in object-oriented programming languages is the topic of discussion in this paper. Supporting multiple classification gives rise to one important question — namely the question of inheritance of attributes with identical names from multiple paths in the classification hierarchy. The problem is to decide how these multiple classification paths are reflected in the class being defined. One of the conclusions in this paper is, that by choosing strict and simple inheritance rules, one is excluding some particular usages of multiple classification. This leads to the notion of attribute-resolution at class definition, which means that the programmer in some cases is forced or allowed to resolve the potential ambiguity of the inherited names. The concept of attribute-resolution is managed through the identification of two conceptually different utilizations of specialization (unification and intersection), and two different attribute properties (plural and singleton) to guide the attribute-resolution.

Keywords

Multiple Classification Class Hierarchy Merge Attribute Multiple Inheritance Unification Class 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    A. Albano, L. Cardelli & R. Orsini: Galileo: A Strongly-Typed, Interactive Conceptual Language, ACM TODS, 10(2), 230–260 (June 1985).CrossRefGoogle Scholar
  2. 2.
    E. Blake & S. Cook: On Including Part Hierarchies in Object-Oriented Languages, with an Implementation in Smalltalk, Proceedings of the European Conference on Object-Oriented Programming (ECOOP’87), Paris, France, June 1987.Google Scholar
  3. 3.
    D.G. Bobrow & M.J. Stefik: Loops — Data and Object-Oriented Programming for Interlisp, Discussion papers, Proceedings of the European Conference on AI, Orsay, France, July 1982.Google Scholar
  4. 4.
    A. Borning: The Progmmming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory, ACM TOPLAS, 3(4), 353–387 (October 1981).CrossRefGoogle Scholar
  5. 5.
    A. Borning & D.H.H. Ingalls: Multiple Inheritance in Smalltalk-80, Proceedings of the National Conference on AI, Pittsburgh, PA, 1982.Google Scholar
  6. 6.
    L. Cardelli: Amber, AT&T Bell Labs Technical Memorandum, 11271-84092-410TM, 1984.Google Scholar
  7. 7.
    D.C. Halbert & P.D. O’Brien: Using Types and Inheritance in Object-Oriented Languages, Proceedings of the European Conference on Object-Oriented Programming (ECOOP’87), Paris, France, June 1987.Google Scholar
  8. 8.
    J. Lindskov Knudsen & K. Stougård Thomsen: A Conceptual Framework for Programming Languages, Computer Science Department, Aarhus University, DAIMI PB-192, 1985.Google Scholar
  9. 9.
    B. Bruun Kristensen, O. Lehrmann Madsen, B. Møller-Pedersen & K. Nygaard: The Beta Progmmming Language, in B.D. Shriver & P. Wegner (eds.): Research Directions in Object-Oriented Programming, MIT Press, 1987.Google Scholar
  10. 10.
    B. Meyer: Eiffel: Programming for Reusability and Extendibility, ACM Sigplan Notices, 22(2), 85–94 (February 1987).CrossRefGoogle Scholar
  11. 11.
    B. Stroustrup: Multiple Inheritance for C++, Proceedings of the Spring’ 87 EUUG Conference, Helsinki and Stockholm, May 1987.Google Scholar
  12. 12.
    K. Stougård Thomsen: Inheritance on Processes, Exemplified on Distributed Termination Detection, International Journal of Parallel Programming, l6(l), 17–52 (1987).CrossRefGoogle Scholar
  13. 13.
    D. Weinreb & D. Moon: Flavors: Message Passing in the Lisp Machine, MIT A1 Memo No. 602, November 1980.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • Jørgen Lindskov Knudsen
    • 1
  1. 1.Computer Science DepartmentAarhus UniversityAarhus CDenmark

Personalised recommendations