Skip to main content

A Language Framework for Multi-Object Coordination

  • Conference paper
  • First Online:

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

Abstract

We have developed language support for the expression of multi-object coordination. In our language, coordination patterns can be specified abstractly, independent of the protocols needed to implement them. Coordination patterns are expressed in the form of constraints that restrict invocation of a group of objects. Constraints are defined in terms of the interface of the objects being invoked rather than their internal representation. Invocation constraints enforce properties, such as temporal ordering and atomicity, that hold when invoking objects in a group. A constraint can permanently control access to a group of objects, thereby expressing an inherent access restriction associated with the group. Furthermore, a constraint can temporarily enforce access restrictions during the activity of individual clients. In that way, constraints can express specialized access schemes required by a group of clients.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Aksit and L. Bergmans. Obstacles in Object-Oriented Software Development. In Proceedings OOPSLA 92. ACM, October 1992.

    Google Scholar 

  2. G. Agha and C.J. Callsen. ActorSpace: An Open Distributed Programming Paradigm. In 1993 ACM Conference on Principles and Practice of Parallel Programming (PPOPP), 1993. (To be published).

    Google Scholar 

  3. G. Agha, S. Frølund, R. Panwar, and D. Sturman. A Linguistic Framework for Dynamic Composition of Dependability Protocols. In Dependable Computing for Critical Applications III. International Federation of Information Processing Societies (IFIP), Elsevier Science Publisher, 1993. (To be published).

    Google Scholar 

  4. G. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.

    Google Scholar 

  5. C. Atkinson, S. Goldsack, A. D. Maio, and R. Bayan. Object-Oriented Concurrency and Distribution in DRAGOON. Journal of Object-Oriented Programming, March/April 1991.

    Google Scholar 

  6. C. Arapis. Specifying Object Interactions. In D. Tsichritzis, editor, Object Composition. University of Geneva, 1991.

    Google Scholar 

  7. K. P. Birman and T. A. Joseph. Communication Support for Reliable Distributed Computing. In Fault-tolerant Distributed Computing. Springer-Verlag, 1987. LNCS.

    Google Scholar 

  8. R. H. Campbell and N. Islam. A Technique for Documenting the Framework of an Object-Oriented System. In Proceedings of the Second International Workshop on Object Orientation in Operating Systems, September 1992.

    Google Scholar 

  9. D. L. Detlefs, M. P. Herlihy, and J. M. Wing. Inheritance of Synchronization and Recovery Properties in Avalon/C++. IEEE Computer, 21(12):57–69, December 1988.

    Google Scholar 

  10. Bjorn N. Freeman-Benson and Alan Borning. Integrating Constraints with an Object-Oriented Language. In O. Lehrmann Madsen, editor, Proceedings ECOOP’ 92, LNCS 615, pages 268–286, Utrecht, The Netherlands, July 1992. Springer-Verlag.

    Google Scholar 

  11. Svend Frølund. Inheritance of Synchronization Constraints in Concurrent Object-Oriented Programming Languages. In O. Lehrmann Madsen, editor, Proceedings ECOOP’ 92, LNCS 615, pages 185–196, Utrecht, The Netherlands, July 1992. Springer-Verlag.

    Google Scholar 

  12. Rachid Guerraoui, Riccardo Capobianchi, Agnes Lanusse, and Pierre Roux. Nesting Actions through Asynchronous Message Passing: the ACS Protocol. In O. Lehrmann Madsen, editor, Proceedings ECOOP’ 92, LNCS 615, pages 170–184, Utrecht, The Netherlands, July 1992. Springer-Verlag.

    Google Scholar 

  13. Richard Helm, Ian M. Holland, and Dipayan Gangopadhyay. Contracts: Specifying Behavioral Compositions in Object-Oriented Systems. In Proceedings OOPSLA/ECOOP’ 90, pages 169–180, October 1990. Published as ACM SIGPLAN Notices, volume 25, number 10.

    Article  Google Scholar 

  14. Ian M. Holland. Specifying Reusable Components Using Contracts. In O. Lehrmann Madsen, editor, Proceedings ECOOP’ 92, LNCS 615, pages 287–308, Utrecht, The Netherlands, July 1992. Springer-Verlag.

    Google Scholar 

  15. G. E. Kaiser, W. Hseush, S. S. Popovich, and S. F. Wu. Multiple Concurrency Control Policies in an Object-Oriented Programming System. In Proceedings of the Second Symposium on Parallel and Distributed Processing, Dallas Texas. IEEE, December 1990.

    Google Scholar 

  16. Barbara Liskov and Robert Scheifler. Guardians and Actions: Linguistic Support for Robust, Distributed Programs. In Conference Record of the Ninth Annual ACM Symposium on Principles of Programming Languages, pages 7–19, Albuquerque, New Mexico, January 1982. ACM.

    Google Scholar 

  17. [LVB+92]_D. C. Luckham, J. Vera, D. Bryan, L. Augustin, and F. Belz. Partial Orderings of Event Sets and Their Application to Prototyping Concurrent Timed Systems. In Proceedings of the 1992 DARPA Software Technology Conference, April 1992.

    Google Scholar 

  18. S. Mishra, L. L. Peterson, and R. D. Schlichting. Consul: A Communication Substrate for Fault-Tolerant Distributed Programs. Technical report, University of Arizona, Tucson, 1991.

    Google Scholar 

  19. C. McHale, B. Walsh, S. Baker, and A. Donnelly. Scheduling Predicates. In M. Tokoro, O. Nierstrasz, and P. Wegner, editors, Object-Based Concurrent Computing, pages 177–193. Springer-Verlag, July 1991. LNCS 612.

    Google Scholar 

  20. Christian Neusius. Synchronizing Actions. In P. America, editor, Proceedings ECOOP’ 91, LNCS 512, pages 128–132, Geneva, Switzerland, July 1991. Springer-Veriag.

    Google Scholar 

  21. Oscar Nierstrasz. Active Objects in Hybrid. In Proceedings OOPSLA’ 87, pages 243–253, December 1987. Published as ACM SIGPLAN Notices, volume 22, number 12.

    Article  Google Scholar 

  22. M. H. Olsen, E. Oskiewicz, and J. P. Warne. A Model for Interface Groups. In Tenth Symposium on Reliable Distributed Systems, Pisa, Italy, 1991. IEEE.

    Google Scholar 

  23. Stefano Crespi Reghizzi, Guido Galli de Paratesi, and Stefano Genolini. Definition of Reusable Concurrent Software Components. In P. America, editor, Proceedings ECOOP’ 91, LNCS 512, pages 148–166, Geneva, Switzerland, July 1991. Springer-Verlag.

    Google Scholar 

  24. Chris Tomlinson and Vineet Singh. Inheritance and Synchronization with Enabled Sets. In Proceedings OOPSLA’ 89, pages 103–112, October 1989. Published as ACM SIGPLAN Notices, volume 24, number 10.

    Article  Google Scholar 

  25. J. van den Bos and C. Laffra. PROCOL, a Concurrent Object-Oriented Language with Protocols Delegation and Constraints. Acta Informatica, 28:511–538, 1991.

    Article  MATH  Google Scholar 

  26. C. T. Wilkes and R. J. LeBlanc. Distributed Locking: A Mechanism for Constructing Highly Available Objects. In Seventh Symposium on Reliable Distributed Systems, Ohio State University, Columbus, Ohio, 1988. IEEE.

    Google Scholar 

  27. K. Wakita and A. Yonezawa. Linguistic Supports for Development of Distributed Organizational Information Systems in Object-Oriented Concurrent Computation Frameworks. In Proceedings of the First Conference on Organizational Computing Systems, Atlanta Georgia. ACM, September 1991.

    Google Scholar 

  28. Y. Yokote, A. Mitsuzawa, N. Fujinami, and M. Tokoro. Reflective Object Management in the Muse Operating System. In Proceedings of the 1991 International Workshop on Object Orientation in Operating Systems, Palo Alto, California, October 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Frølund, S., Agha, G. (1993). A Language Framework for Multi-Object Coordination. In: Nierstrasz, O.M. (eds) ECOOP’ 93 — Object-Oriented Programming. ECOOP 1993. Lecture Notes in Computer Science, vol 707. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-47910-4_18

Download citation

  • DOI: https://doi.org/10.1007/3-540-47910-4_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57120-9

  • Online ISBN: 978-3-540-47910-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics