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.
Preview
Unable to display preview. Download preview PDF.
References
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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).
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.
Author information
Authors and Affiliations
Editor information
Rights 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