Skip to main content

Overloading and inheritance

  • Invited Papers
  • Conference paper
  • First Online:
  • 148 Accesses

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

Abstract

This paper reports on some recent investigations aimed at separating and clarifying a number of concepts that frequently appear in object-based and object-oriented languages. Concepts considered include are over-loading, encapsulation, the message paradigm, and a limited form of inheritance. We also introduce formulations of the concepts of overload-systems and coercion-systems, and we present a treatment of (+, ×)-recursive classes and the definition of primitive recursive functions over such classes.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Luca Cardelli. Amber. Technical Memorandum 11271-840924-10TM, AT&T Bell Laboratories, September 1984.

    Google Scholar 

  2. Luca Cardelli and Peter Wegner. On understanding types, data abstraction, and polymorphism. Computing Surveys, 4:471–522, 1985.

    Google Scholar 

  3. Giuseppe Castagna, Giorgio Ghelli, and Giuseppe Longo. A calculus for overloaded functions with subtyping. Technical Report LIENS-92-4, LIENS, Laboratoire d'Informatique de l'Ecole Normale Superiure, February 1992.

    Google Scholar 

  4. Hans-Dieter Ehrich and Amilcar Sernadas. Fundamental object concepts and constructions. In Proceedings of IS-CORE Workshop WS'91, London, Sept. 16–18, 1991, 1991.

    Google Scholar 

  5. Joseph A. Goguen and David Wolfram. On types and foops. In Proceedings IFIP TC-2 Conference on Object Oriented Databases, 1991.

    Google Scholar 

  6. Adele Goldberg and David Robson. Smalltalk-80: The Language and its Implementation. Addison-Wesley, Reading, MA, 1983.

    Google Scholar 

  7. Borland International. Turbo Pascal Version 6.0 User's Guide. Borland Int'l, Scotts Valley, CA, 1990.

    Google Scholar 

  8. Bertrand Meyer. Object-Oriented Software Construction. Prentice-Hall International Series in Computer Science. Prentice-Hall, New York, NY, 1988.

    Google Scholar 

  9. John C. Mitchell. Toward a typed foundation for method specialization and inheritance. In Proceedings of the 17th POPL, pages 109–124. ACM, 1990.

    Google Scholar 

  10. Bjarne Stroustrup. The C++ Programming Language. Addison-Wesley Series in Computer Science. Addison-Wesley, Reading, MA, 1987.

    Google Scholar 

  11. Bjarne Stroustrup. The C++ Programming Language. Addison-Wesley Series in Computer Science. Addison-Wesley, Reading, MA, 2nd edition, 1991.

    Google Scholar 

  12. Eric G. Wagner. Categorical semantics, or extending data types to include memory. In H.-J. Kreowski, editor, Recent Trends in Data Type Specification: 3rd Workshop on Theory and Applications of Abstract Data Types Selected Papers, pages 1–21. Informatik-Fachberichte 116, Springer-Verlag, 1984.

    Google Scholar 

  13. Eric G. Wagner. Semantics of block structured languages with pointers. In Proceedings of the 3rd Annual Workshop on the Mathematical Foundations of Programming Language Semantics. LNCS 298, Springer Verlag, 1987.

    Google Scholar 

  14. Eric G. Wagner. An algebraically specified language for data directed design. In Proceedings of the First International Conference on Algebraic Methodology and Software Technology, pages 145–163. University of Iowa, 1989.

    Google Scholar 

  15. Eric G. Wagner. On declarations. In H. Ehrig, H. Herrlich, H.-J. Kreowski, and G. Preuss, editors, Categorical Methods in Computer Science, pages 261–277. LNCS 393, Springer-Verlag, 1989.

    Google Scholar 

  16. Eric G. Wagner. An algebraically specified language for data directed design. Theoretical Computer Science, 77:195–219, 1990.

    Google Scholar 

  17. Eric G. Wagner. All recursive types defined using products and sums can be implemented using pointers. In Proceedings of Conference on Algebraic Logic and Universal Algebra in Computer Science, Jun1–June4 1988, Iowa State University, Ames, Iowa, pages 111–132. Springer-Verlag LNCS 425, 1990.

    Google Scholar 

  18. Eric G. Wagner. Generic types in a language for data directed design. In H. Ehrig, K.P. Jantke, F. Orejas, and H. Reichel, editors, Proceedings of the 7th Workshop on Specification of Abstract Data Types (Wusterhausen/Dosse, Germany, April 1990), pages 341–361. LNCS 534, Springer Verlag, 1991.

    Google Scholar 

  19. Eric G. Wagner. Generic classes in an object-based language. In Recent Trends in Data Type Specification, pages 330–344. LNCS 655, Springer Verlag, 1992.

    Google Scholar 

  20. Eric G. Wagner. Some mathematical thoughts on languages for data directed design. In Charles Rattray and Robert G. Clark, editors, The Unified Computation Laboratory: Modeling, Specifications, and Tools, pages 3–26. The Institute of Mathematics and Its Applications Conference Series, New Series Number 35, Clarendon Press, Oxford, 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hartmut Ehrig Fernando Orejas

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wagner, E.G. (1994). Overloading and inheritance. In: Ehrig, H., Orejas, F. (eds) Recent Trends in Data Type Specification. ADT COMPASS 1992 1992. Lecture Notes in Computer Science, vol 785. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57867-6_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-57867-6_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57867-3

  • Online ISBN: 978-3-540-48361-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics