Skip to main content

An Actor Algebra for Specifying Distributed Systems: The Hurried Philosophers Case Study

  • Chapter
  • First Online:

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

Abstract

In this paper, we introduce an actor language following a “process algebra” notation. The idea is to define a formalism based on a standard process algebraic approach which provides basic object-oriented features, such as object identity, asynchronous message passing, implicit message acceptance and dynamic object creation. This approach allows us to reuse standard results of the theory of concurrency in a context where an high level object oriented specification style is preserved. To illustrate the expressive power of our formalism, we provide a specification of the Hurried Philosophers case study.

This paper has been partially supported by the Italian Ministry of Universities (MURST).

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. Abadi and L. Cardelli. An Imperative Object Calculus. Theory and Practice of Object Systems, 1(3):151–166, 1995.

    Google Scholar 

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

    Google Scholar 

  3. G. Agha, I. Mason, S. Smith, and C. Talcott. Towards a Theory of Actor Computation. In Proc. of CONCUR’92, volume 630 of Lecture Notes in Computer Science, pages 564–579. Springer Verlag, 1992.

    Google Scholar 

  4. G. Agha, I. Mason, S. F. Smith, and C. Talcott. A Foundation for Actor Computation. Journal of Functional Programming, 7(1):1–69, January 1997.

    Article  MATH  MathSciNet  Google Scholar 

  5. R. Amadio, I. Castellani, and D. Sangiorgi. On Bisimulations for the Asynchronous π-Calculus. Theoretical Computer Science, 195(2):291–324, 1998.

    Article  MATH  MathSciNet  Google Scholar 

  6. J. Andreoli and R. Pareschi. Linear Objects: Logical Processes with Built-in Inheritance. New Generation Computing, 9(3#x2013;4):445–473, 1991.

    Google Scholar 

  7. M. Campione and K. Walrath. The Java Tutorial: Object-Oriented Programming for the Internet. Addison Wesley, 1996.

    Google Scholar 

  8. L. Cardelli. A Language with Distributed Scope. Computing Systems, 8(1):27–59, January 1995.

    Google Scholar 

  9. P. Ciancarini, R. Gorrieri, and G. Zavattaro. Towards a Calculus for Generative Communication. In Proc. FMOODS’96, pages 283–297. Chapmann & Hall, 1996.

    Google Scholar 

  10. F. deBoer, J. Klop, and C. Palamidessi. Asynchronous Communication in Process Algebra. In Proc. LICS’92, pages 137–159. IEEE Computer Society Press, 1992.

    Google Scholar 

  11. M. Gaspari. Concurrency and knowledge-level communication in agent languages. Artificial Intelligence, 105(1-2):1–45, 1998.

    Article  MATH  Google Scholar 

  12. M. Gaspari and G. Zavattaro. An algebra of actors. In Proc. 3nd IFIP Conf. on Formal Methods for Open Object-Based Distributed Systems (FMOODS), pages 3–18. Kluwer Academic Publishers, Feb 1999.

    Google Scholar 

  13. M. Gaspari and G. Zavattaro. A process algebraic specification of the new asynchronous corba messaging service. In Proc. European Conf. on Object Oriented Programming (ECOOP), Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1999.

    Google Scholar 

  14. C. Hewitt. Viewing control structures as patterns of passing messages. Artificial Intelligence, 8(3):323–364, 1977.

    Article  Google Scholar 

  15. K. Honda and M. Tokoro. An Object Calculus for Asynchronous Communication. In The Fifth European Conference on Object-Oriented Programming, volume 512 of Lecture Notes in Computer Science, pages 141–162. Springer-Verlag, Berlin, 1991.

    Google Scholar 

  16. S. Khoshafian and G. Copeland. Object Identity. In Proc. OOPSLA’ 86, pages 406–416, September 1986.

    Google Scholar 

  17. N. Lynch. Distributed Algorithms. Morgan Kaufmann Publishers, San Francisco, CA, USA, 1996.

    MATH  Google Scholar 

  18. R. Milner. Communication and Concurrency. Prentice Hall, 1989.

    Google Scholar 

  19. R. Milner. Functions as processes. Mathematical Structures in Computer Science, 2(2):119–141, 1992.

    Article  MATH  MathSciNet  Google Scholar 

  20. R. Milner. Elements of interaction. Communications of the ACM, 36(1):79–89, January 1993.

    Article  Google Scholar 

  21. G. Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, Department of Computer Science, Aarhus University, Denmark, 1981.

    Google Scholar 

  22. C. Talcott. Interaction Semantics for Components of Distributed Systems. In Proc. FMOODS’96, pages 154–169. Chapmann & Hall, 1996.

    Google Scholar 

  23. V. Vasconcelos. Typed Concurrent Objects. In 8th European Conference on Object Oriented Programming, Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1994.

    Google Scholar 

  24. S. Vinoski. CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments. IEEE Communications Magazines, 14(2), February 1997.

    Google Scholar 

  25. D. Walker. Objects in the π-calculus. Information and Computation, 116(2):253–271, 1995.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Gaspari, M., Zavattaro, G. (2001). An Actor Algebra for Specifying Distributed Systems: The Hurried Philosophers Case Study. In: Agha, G.A., De Cindio, F., Rozenberg, G. (eds) Concurrent Object-Oriented Programming and Petri Nets. Lecture Notes in Computer Science, vol 2001. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45397-0_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-45397-0_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41942-6

  • Online ISBN: 978-3-540-45397-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics