Skip to main content

(Objects + concurrency) & reusability — A proposal to circumvent the inheritance anomaly

  • 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

We enrich the object-oriented + concurrent specification language Maude with language constructs for reuse and gain a high degree of code reusability. We consider three reuse constructs: (1) Maude's inheritance relation, (2) an algebra of messages and (3) the construct of a subconfiguration. By employing these constructs for different kinds of reuse, we show for all examples of the seminal paper on the inheritance anomaly [11] how to circumvent the inheritance anomaly. Our running example is the bounded buffer.

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. G. Agha, S. FrØlund, W.Y. Kim, R. Panwar, A. Patterson, and D. Sturman. Abstraction and modularity mechanisms for concurrent computing. In G. Agha, P. Wegner, and A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming, pages 3–21. MIT Press, 1993.

    Google Scholar 

  2. M. Aksit, K. Wakita, J. Bosch, L. Bergmans, and A. Yonezawa. Abstracting object interactions using composition filters. In R. Guerraoui, I. Nierstrasz, and M. Riveill, editors, Object-based Distributed Programming, Lecture Notes in Computer Science 791, pages 152–183. Springer-Verlag, 1993.

    Google Scholar 

  3. E. Astesiano, G.F. Mascari, G. Reggio, and M. Wirsing. On the parameterized algebraic specification of concurrent systems. In H. Ehrig, C. Floyd, M. Nivat, and M. Thatcher, editors, Mathematical Foundations of Software Development, Lecture Notes in Computer Science 185, pages 342–358. Springer-Verlag, 1985.

    Google Scholar 

  4. E. Astesiano and M. Wirsing. Bisimulation in algebraic specifications. In H. Ait-Kaci and M. Nivat, editors, Resolution of Equations in Algebraic Structures, Algebraic Techniques, Vol. 1, pages 1–32. Academic Press, London, 1989.

    Google Scholar 

  5. S. FrØlund. Inheritance of synchronisation constraints in concurrent object-oriented programming languages. In O. Lehrmann Madsen, editor, European Conf. on Object-Oriented Programming (ECOOP'92), Lecture Notes in Computer Science 615, pages 185–196. Springer-Verlag, 1992.

    Google Scholar 

  6. J.A. Goguen, C. Kirchner, H. Kirchner, A. Megrélis, J. Meseguer, and T. Winkler. An introduction to OBJ3. In J.-P. Jouannaud and S. Kaplan, editors, Proc. First Int. Workshop on Conditional Term Rewriting Systems, Lecture Notes in Computer Science 308, pages 258–263. Springer-Verlag, 1988.

    Google Scholar 

  7. T. Hartmann, G. Saake, R. Jungclaus, P. Hartel, and J. Kusch. Revised version of the modelling language TROLL (Version 2.0). Technical Report Informatik-Bericht 94-03, TU Braunschweig, 1994.

    Google Scholar 

  8. A.E. Haxthausen and F. Nickl. Pushouts of order-sorted algebraic specifications. In AMAST'96, Lecture Notes in Computer Science. Springer-Verlag, 1996. To appear.

    Google Scholar 

  9. U. Lechner and C. Lengauer. Modal-Μ-Maude — properties and specification of concurrent objects. In B. Freitag, C. B. Jones, C. Lengauer, and H.-J. Schek, editors, Object Orientation with Parallelism and Persistence. Kluwer, 1996. To appear.

    Google Scholar 

  10. U. Lechner, C. Lengauer, and M. Wirsing. An Object-Oriented Airport: Specification and Refinement in Maude. In E. Astesiano, G. Reggio, and A. Tarlecki, editors, 10th Workshop on Specification of Abstract Data Types Joint with the 5th COMPASS Workshop, Selected papers, Lecture Notes in Computer Science 906, pages 351–367. Springer-Verlag, 1995.

    Google Scholar 

  11. S. Matsuoka and A. Yonezawa. Analysis of inheritance anomaly in concurrent object-oriented languages. In G. Agha, P. Wegner, and A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming, pages 107–150. MIT Press, 1993.

    Google Scholar 

  12. J. Meseguer. A logical theory of concurrenty objects and its realization in the Maude language. In G. Agha, P. Wegner, and A. Yonezawa, editors, Research Directions in Concurrent Object-Oriented Programming, pages 314–390. MIT Press, 1993.

    Google Scholar 

  13. J. Meseguer. Solving the inheritance anomaly in concurrent object-oriented programming. In O. Nierstrasz, editor, ECOOP '93 — Object-Oriented Programming, Lecture Notes in Computer Science 707, pages 220–246. Springer-Verlag, 1993.

    Google Scholar 

  14. J. Meseguer and T. Winkler. Parallel programming in Maude. In J.-P. Banâtre and D. Le Métayer, editors, Research Directions in High-Level Parallel Programming Languages, Lecture Notes in Computer Science 574, pages 253–293. Springer-Verlag, 1992.

    Google Scholar 

  15. O. Nierstrasz and M. Papathomas. Towards a type theory for active objects. ACM OOPS Messenger, 2(2):89–93, April 1991. (Proceedings OOPSLA/ECOOP 90 Workshop on Object-Based Concurrent Systems).

    Google Scholar 

  16. M. Wirsing, F. Nickl, and U. Lechner. Concurrent Object-Oriented Design Specification in Spectrum. In P.-Y. Schobbens, editor, MeDiCis '94: Methodology for the Development of Computer System Specifications, Working Notes of a Workshop held in the Chateau de Namur 1994, pages 163–179, 1994. Full version: Concurrent Object-Oriented Design Specification in SPECTRUM, Technical Report 9418, Institut für Informatik, Ludwig-Maximilians-Universität München, December 1994.

    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

Lechner, U., Lengauer, C., Nickl, F., Wirsing, M. (1996). (Objects + concurrency) & reusability — A proposal to circumvent the inheritance anomaly. 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/BFb0053064

Download citation

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

  • 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