Skip to main content

Sender-initiated and receiver-initiated coordination in a global object space

  • Conference paper
  • First Online:
Book cover Object-Based Models and Languages for Concurrent Systems (ECOOP 1994)

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

Included in the following conference series:

Abstract

This paper features a case study of a complex parallel application (in the area of Molecular Dynamics Simulation) modelled in a concurrent object-oriented language. In this computational model, application objects can exhibit some autonomous behaviour and reside in a global object space. At runtime, this object space can physically be mapped onto a distributed memory machine.

The case study indicates the pitfalls of pure name-based object interaction. We show that due to the dynamic nature of the interaction schemes between the application objects, coordination primitives are necessary to achieve expressive lucidity within a programming language. As a result, two kinds of semantics exist for coordination in the object space:

  1. 1.

    Sender-initiated coordination by means of pattern-based group communication.

  2. 2.

    Receiver-initiated coordination by means of multi-object synchronisation constraints.

A language framework is proposed that enables a programmer to express both kinds of coordination, and a concise implementation based on a meta-level architecture is presented.

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. Gul Agha and Christian Callsen. ActorSpace: An Open Distributed Programming Paradigm. In PPOPP'93: Principles and Practice of Parallel Programming, pages 23–32. ACM Press, May 1993.

    Google Scholar 

  2. G. Agha. ACTORS: A Model of Concurrent Computation in Distributed Systems. The MIT Press series in artificial intelligence, 1986.

    Google Scholar 

  3. Pierre America. Pool-T: A Parallel Object-Oriented Language. In M. Tokoro and A. Yonezawa, editors, Object-Oriented Concurrent Programming, pages 199–220. The MIT Press, Cambridge, Massachusetts, 1987.

    Google Scholar 

  4. Inc. American National Standards Institute. The Programming Language Ada Reference Manual. Lecture Notes in Computer Science, 155, 1983.

    Google Scholar 

  5. S. Bijnens. The Correlate Language Definition and Architecture. Technical Report 94-4SB, Dept. of Computer Science, KULeuven, 1994.

    Google Scholar 

  6. Bob Bywater, Wouter Joosen, Stijn Bijnens, Pierre Verbaeten, Thomas Larsen, and John Perram. Parallel Simulation Software for Drug Design. In HPCN Europe 94, pages 189–196. Lecture Notes in Computer Science 796, Springer Verlag, 1994.

    Google Scholar 

  7. Stijn Bijnens, Wouter Joosen, Johan Van Oeyen, and Pierre Verbaeten. The XENOOPS Object-Oriented Framework for Dynamic Resource Management. 1994. Submitted for Publication.

    Google Scholar 

  8. Stijn Bijnens, Wouter Joosen, and Pierre Verbaeten. A Reflective Invocation Scheme to Realise Advanced Object Management. In R. Guerraoui, O Nierstrasz, and M. Riveill, editors, Object-Based Distributed Programming, Lecture Notes in Computer Science 791, pages 139–151. Springer-Verlag, 1994.

    Google Scholar 

  9. D. Caromel. Towards a Method of Object-Oriented Concurrent Programming. Communications of the ACM, 36(9):90–102, September 1993.

    Google Scholar 

  10. Nicholas Carriero and David Gelernter. Linda in Context. Communications of the ACM, 32(4):444–458, April 1989.

    Google Scholar 

  11. Andrew Chien. Concurrent Aggregates: Supporting Modularity in Massively Parallel Programs. The MIT Press, 1993.

    Google Scholar 

  12. Svend Frolund and Gul Agha. A Language Framework for Multi-Object Coordination. In ECOOP'93, pages 346–360. Lecture Notes in Computer Science Vol. 707, Springer Verlag, July 1993.

    Google Scholar 

  13. Jacques Ferber. Computational Reflection in class-based object-oriented languages. In Proceedings of OOPSLA'89, pages 317–326. ACM Sigplan Notices, October 1989.

    Google Scholar 

  14. Yutaka Ishikawa. Communication Mechanism on Autonomous Objects. In Proceedings of OOPSLA'92, pages 303–314. ACM Sigplan Notices, 1992.

    Google Scholar 

  15. Robin Milner. The Polyadic π Calculus: a tutorial. Technical report, ECS-LFCS-91-180, Comp. Science Dept. University of Edinburgh, October 1991.

    Google Scholar 

  16. Satoshi Matsuoka, Takuo Watanabe, and Akinori Yonezawa. Hybrid group reflective architecture for object-oriented concurrent reflective programming. In Proceedings of ECOOP'91, pages 231–250. Lecture Notes in Computer Science, Springer-Verlag, 1991.

    Google Scholar 

  17. Oscar Nierstrasz. Regular Types for Active Objects. In Proceedings of OOPSLA'93, pages 1–15. ACM Sigplan Notices, October 1993.

    Google Scholar 

  18. J.W. Perram, S.W. de Leeuw, and H.G. Petersen. Hamilton's Equations for Constrained Dynamical Systems. J. Stat. Phys., 61:1203–1222, 1990.

    Google Scholar 

  19. Rajendra K. Ray, Ewan Tempero, and Henry M. Levy. Emerald: A General-Purpose Programming Language. Software: Practice and Experience, 21(1):91–92, January 1991.

    Google Scholar 

  20. Peter Wegner. Dimensions of Object-Based Language Design. In Proceedings of OOPSLA '87, pages 168–182. ACM Sigplan Notices, December 1987.

    Google Scholar 

  21. A. Yonezawa. ABCL: An Object Oriented Concurrent System. The MIT Press series in artificial intelligence, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Paolo Ciancarini Oscar Nierstrasz Akinori Yonezawa

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bijnens, S., Joosen, W., Verbaeten, P. (1995). Sender-initiated and receiver-initiated coordination in a global object space. In: Ciancarini, P., Nierstrasz, O., Yonezawa, A. (eds) Object-Based Models and Languages for Concurrent Systems. ECOOP 1994. Lecture Notes in Computer Science, vol 924. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-59450-7_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-59450-7_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-49269-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics