Skip to main content

Structured inheritance for algebraic class specifications

  • Contributed Papers
  • Conference paper
  • First Online:
Recent Trends in Data Type Specification (ADT 1992, COMPASS 1992)

Abstract

Inheritance is considered as a binary relation between two classes. Using an algebraic model of class specification, we distinguish between reusing inheritance and specialization inheritance, although the latter is sufficient to simulate the former. We propose mechanisms to derive inherited classes whose behavior can be described in a clean way in terms of the behavior of the superclasses. Among these mechanisms, the instantiation of parameters is seen as a special case of specialization inheritance but not of equal expressive power. A formalization of the intuitive notion of subtyping is then related to the stronger inheritance.

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. Alencar, A.J., Goguen, J.A.: OOZE: An Object-Oriented Z Environment. Proc. ECOOP '91, Springer Lect.Notes in Comp.Sci. 512 (1991), 180–199

    Google Scholar 

  2. America, P.H.M.: Inheritance and Subtyping in a Parallel Object-Oriented Language. Proc. ECOOP '87, Springer Lect.Notes in Comp.Sci. 276 (1987), 234–242

    Google Scholar 

  3. America,P.H.M., van der Linden, F.: A Parallel Object-Oriented Language with Inheritance and Subtyping. Proc. ECOOP/OOPSLA '90 (1990), 161–168

    Google Scholar 

  4. Blum, E.K., Ehrig, H., Parisi-Presicce, F.: Algebraic Specifications of Modules and their Basic Interconnections. JCSS 34, 2/3 (1987), 293–339

    Google Scholar 

  5. Breu, R.: Algebraic Specification Techniques in Object Oriented Programming Environments Springer Lect.Notes in Comp.Sci. 562 (1991)

    Google Scholar 

  6. Ehrig, H., Baldamus, M., Orejas, F.: New Concepts for Amalgamation and Extension in the Framework of the Specification Logic. TUB Technical Report (1991)

    Google Scholar 

  7. Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification 1. Equations and Initial Semantics. EATCS Monograph in Computer Science, Vol.6, Springer Verlag (1985)

    Google Scholar 

  8. Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification 2. Module Specifications and Constraints. EATCS Monograph in Computer Science, Vol.21, Springer Verlag (1990)

    Google Scholar 

  9. Ehrig, H., Weber, H.: Algebraic Specification of Modules. In: Neuhold E.J., Chronist G. (eds.): Formal Models in Programming. North-Holland (1985)

    Google Scholar 

  10. Goguen, J.A., Burstall, R.: Introducing Institutions. in Proc. Logics of Programming Workshop (1983)

    Google Scholar 

  11. Gabriel, R.P., White, J.L., Bobrow, D.G.: CLOS: Integrating Object Oriented and Functional Programming. Comm. ACM, 34,9 (Sept 91) 28–38

    Google Scholar 

  12. Kristensen, B.B., Madsen, O.L., Moller-Pedersen, B., Nygaard, K.: The BETA Programming Language. In: B.Shriver, P.Wegner (eds.): Research Directions in Object Oriented Programming. MIT Press (1987) 7–48

    Google Scholar 

  13. Meyer, B.: Genericity versus Inheritance. Proc. OOPSLA '86 (1986) 391–405

    Google Scholar 

  14. Meyer, B.: Object-Oriented Software Construction. Prentice-Hall (1988)

    Google Scholar 

  15. Madsen, O.L., Moller-Pedersen, B.: Virtual Classes: the Powerful Mechanism in Object-Oriented Programming. Proc. OOPSLA '89 (1989) 397–406

    Google Scholar 

  16. Nelson, N.L.: An Object Oriented Tower of Babel. OOPS Messenger 2,3 July 91

    Google Scholar 

  17. Parisi-Presicce, F., Pierantonio, A.: An Algebraic View of Inheritance and Subtyping in Object Oriented Programming. Proc. ESEC '91, Springer Lect.Notes in Comp.Sci. 550 (1991) 364–379

    Google Scholar 

  18. Parisi-Presicce, F., Pierantonio, A.: An Algebraic Framework to Compare and Derive the Inheritance Relation. Technical Report Dipartimento di Matematica Pura ed Aplicata, Universitá L'Aquila, May 92

    Google Scholar 

  19. Parisi-Presicce, F., Pierantonio, A.: An Algebraic Theory of Class Specification, (to appear)

    Google Scholar 

  20. Snyder, A.: Encapsulation and Inheritance in Object-Oriented Programming Languages. Proc. OOPSLA '86 (1986) 38–45

    Google Scholar 

  21. Schaffen, C., Cooper, T., Bullis, B., Killian, M., Wilpolt, C.: An Introduction to Trellis/Owl. Proc. OOPSLA '86 (1986) 9–16

    Google Scholar 

  22. Stroustrup, B.: The C++ Programming Language. Addison-Wesley (1986)

    Google Scholar 

  23. Wirfs-Brock, R.J., Johnson, R.E.: Surveying Current Research in Object-Oriented Design. Communication of the ACM,33,9 (Sept 90) 104–124

    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

Presicce, F.P., Pierantonio, A. (1994). Structured inheritance for algebraic class specifications. 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_18

Download citation

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

  • 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