Skip to main content

Composable Message Semantics in Oberon

  • Conference paper
Modular Programming Languages (JMLC 2000)

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

Included in the following conference series:

Abstract

Most object-oriented languages offer a limited number of invocation semantics. At best, they define a default mode of synchronous invocation, plus some keywords to express additional semantic attributes, e.g. synchronisation. The very few approaches that offer rich libraries of invocation abstractions usually introduce significant overhead and do not support the composition of those abstractions.

This paper describes a pragmatic approach for abstracting invocation semantics with emphasise on remote invocations. Invocation semantics, such as synchronous, asynchronous, remote, transactional or replicated, are all considered first class citizens. Using an elegant combination of the Strategy and Decorator design patterns, we suggest an effective way to compose various invocation semantics. We completely separate the class definition from the invocation semantics of its methods and we go a step further towards full polymorphism: the invocation of the same method can have different semantics on two objects of the same class. The very same invocation on a given object may even vary according to the client performing the invocation. To reduce the overhead induced by the flexibility underlying our approach, we rely on just-in-time stub generation techniques.

Technical areas: Adaptive Communication Systems, Distributed Systems, Architecture

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Agha, G., Hewitt, C., Wegner, P., Yonezawa, A.(eds.): Proceedings of the OOPSLA/ECOOP 1990 Workshop on Object-Based Concurrent Programming. ACM OOPS Messenger 2(2) (1991)

    Google Scholar 

  2. Agha, G., Wegner, P., Yonezawa, A.(eds.): Proceedings of the ACM Sigplan Workshop on Object-Based Concurrent Programming. ACM Sigplan 24(4) (1989)

    Google Scholar 

  3. Agha, G., Wegner, P., Yonezawa, A.: Research Directions in Concurrent Object-Oriented Programming. MIT Press, Cambridge (1993)

    Google Scholar 

  4. Bergmans, L.: Composing Concurrent Objects. ISBN 90-9007359-0

    Google Scholar 

  5. Briot, J.-P., Guerraoui, R., Lohr, K.-P.: Concurrency and Distribution in Object-Oriented Programming. ACM Computing Surveys (September 1998)

    Google Scholar 

  6. Dijkstra, E.: Hierarchical Ordering of Sequential Processes. Acta Informatica 1(2), 115–138 (1971)

    Article  MathSciNet  Google Scholar 

  7. Guerraoui, R., Capobianchi, R., Lanusse, A., Roux, P.: Nesting Actions through Asynchronous Message Passing: the ACS Protocol. In: Lehrmann Madsen, O. (ed.) ECOOP 1992. LNCS, vol. 615, pp. 170–184. Springer, Heidelberg (1992)

    Chapter  Google Scholar 

  8. Guerraoui, R., Nierstrasz, O., Riveill, M.: ECOOP-WS 1993. LNCS, vol. 791. Springer, Heidelberg (1994)

    Book  MATH  Google Scholar 

  9. Garbinato, B., Guerraoui, R.: Using the Strategy Design Pattern to Compose Reliable Distributed Protocols. In: Proceedings of the Usenix Conference on Object-Oriented Technologies and Systems (COOTS 1997), Usenix (June 1997)

    Google Scholar 

  10. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)

    Google Scholar 

  11. Hof, M.: Just-in-Time Stub Generation. In: Proc. Joint Modular Languages Conference 1997, Hagenberg, March 1997. LNCS (1997) ISSN 0302-9743

    Google Scholar 

  12. Hof, M.: Composable Message Semantics in Object-Oriented Languages. PhD Thesis University of Linz (1999)

    Google Scholar 

  13. Keller, R., Hölzle, U.: Binary Component Adaptation. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, p. 307. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  14. Liskov, B., Sheifler, R.: Guardians and Actions: Linguistic Support for Robust, Distributed Programs. ACM Transactions on Programming Languages and Systems 5(3) (1983)

    Google Scholar 

  15. The Object Management Group, http://www.omg.org

  16. Tripathi, A., Noonan, T.: Design of a Remote Procedure Call System for Object-Oriented Distributed Programming. Software-Practice and Experience 28(1), 23–47 (1998)

    Article  Google Scholar 

  17. Tokoro, M., Nierstrasz, O., Wegner, P. (eds.): ECOOP-WS 1991. LNCS, vol. 612. Springer, Heidelberg (1992)

    Google Scholar 

  18. Waldo, J., Wyant, G., Wollrath, A., Kendall, S.: A Note on Distributed Computing. Technical Report, Sun Microsystems Laboratories, Inc. (November 1994)

    Google Scholar 

  19. Yonezawa, A., Tokoro, M. (eds.): Object-Oriented Concurrent Programming. MIT Press, Cambridge (1987)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hof, M. (2000). Composable Message Semantics in Oberon. In: Weck, W., Gutknecht, J. (eds) Modular Programming Languages. JMLC 2000. Lecture Notes in Computer Science, vol 1897. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10722581_2

Download citation

  • DOI: https://doi.org/10.1007/10722581_2

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-44519-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics