Skip to main content

Inheritance and cofree constructions

  • Conference paper
  • First Online:
ECOOP ’96 — Object-Oriented Programming (ECOOP 1996)

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

Included in the following conference series:

Abstract

The coalgebraic view on classes and objects is elaborated to include inheritance. Inheritance in coalgebraic specification (of classes) will be understood dually to parametrization in algebraic specification. That is, inheritance involves restriction (specialization), where parametrization involves extension. And cofree constructions are “best” restrictions, like free constructions are “best” extensions. To make this view on inheritance precise we need a suitable notion of behaviour preserving morphism between classes, which will be defined as a “coalgebra map up-to-bisimulation”.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. Bruce, L. Caxdelli, G. Castagna, The Hopkins Objects Group, G. Leavens, and B. Pierce. On binary methods. Manuscript, May 1995.

    Google Scholar 

  2. L. Cardelli. A semantics of multiple inheritance. Inf. & Comp., 76(2/3):138–164, 1988.

    Article  MATH  MathSciNet  Google Scholar 

  3. W. Cook and J. Palsberg. A denotational semantics of inheritance and its correctness. Inf. & Comp., 114(2):329–350, 1995.

    Article  MathSciNet  Google Scholar 

  4. W.R. Cook. Object-oriented programming versus abstract data types. In J.W. de Bakker, W.P. de Roever, and G. Rozenberg, editors, Foundations of Object-Oriented Languages, number 489 in Lect. Notes Comp. Sci., pages 151–178. Springer, Berlin, 1990.

    Google Scholar 

  5. H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification I: Equations and Initial Semantics. Number 6 in EATCS Monographs. Springer, Berlin, 1985.

    MATH  Google Scholar 

  6. J.A. Goguen. Realization is universal. Math. Syst. Theor., 6(4):359–374, 1973.

    Article  MATH  MathSciNet  Google Scholar 

  7. J.A. Goguen. A categorical manifesto. Math. Struct. Comp. Sci., 1(1):49–67, 1991.

    Article  MATH  MathSciNet  Google Scholar 

  8. J.A Goguen and J. Meseguer. Universal realization, persistent interconnection and implementation of abstract modules. In M. Nielsen and E.M. Schmidt, editors, Automata, Languages and Programming (ICALP'82), number 140 in Lect. Notes Comp. Sci., pages 263–281. Springer, Berlin, 1982.

    Google Scholar 

  9. J.A Goguen and J. Meseguer. Unifying functional, object-oriented and relational programming with logical semantics. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 417–477. The MIT Press series in computer systems, 1987.

    Google Scholar 

  10. B. Jacobs. Mongruences and cofree coalgebras. In V.S. Alagar and M. Nivat, editors, Algebraic Methods and Software Technology, number 936 in Lect. Notes Comp. Sci., pages 245–260. Springer, Berlin, 1995.

    Google Scholar 

  11. B. Jacobs. Coalgebraic specifications and models of deterministic hybrid systems. In M. Wirsing, editor, Algebraic Methods and Software Technology, Lect. Notes Comp. Sci. Springer, Berlin, 1996, to appear.

    Google Scholar 

  12. B. Jacobs. Objects and classes, coalgebraically. In B. Freitag, C.B. Jones, and C. Lengauer, editors, Object-Orientation with Parallelism and Persistence. Kluwer, 1996, to appear.

    Google Scholar 

  13. S. Mac Lane. Categories for the Working Mathematician. Springer, Berlin, 1971.

    MATH  Google Scholar 

  14. S. Lang. Algebra. Addison Wesley, 2nd rev. edition, 1984.

    Google Scholar 

  15. B. Meyer. Object-Oriented Software Construction. Prentice Hall, 1988.

    Google Scholar 

  16. B. Meyer. Eiffel: The Language. Prentice Hall, 1992.

    Google Scholar 

  17. R. Milner. Communication and Concurrency. Prentice Hall, 1989.

    Google Scholar 

  18. J. Palsberg and M.I. Schwartzbach. Object-Oriented Type Systems. Wiley, 1994.

    Google Scholar 

  19. H. Reichel. An approach to object semantics based on terminal co-algebras. Math. Struct. Comp. Sci., 5:129–152, 1995.

    MATH  MathSciNet  Google Scholar 

  20. R. Rist and R. Terwilliger. Object-Oriented Programming in Eiffel Prentice Hall, 1995.

    Google Scholar 

  21. B. Stroustrup. The C++ Programming Language. Addison-Wesley, 2nd rev. edition, 1994.

    Google Scholar 

  22. P. Wegner. The object-oriented classification paradigm. In B. Shriver and P. Wegner, editors, Research Directions in Object-Oriented Programming, pages 479–560. The MIT Press series in computer systems, 1987.

    Google Scholar 

  23. P. Wegner. Concepts and paradigms of object-oriented programming OOPS Messenger, 1(1):7–87, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre Cointe

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jacobs, B. (1996). Inheritance and cofree constructions. In: Cointe, P. (eds) ECOOP ’96 — Object-Oriented Programming. ECOOP 1996. Lecture Notes in Computer Science, vol 1098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053063

Download citation

  • DOI: https://doi.org/10.1007/BFb0053063

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61439-5

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics