Abstract
We introduce an object-oriented language following a “process algebra” style. The idea is to define a formalism that enjoys a clean formal definition allowing the reuse of the rich algebraic theory typical of the process algebras in a context where an high level object oriented programming style is preserved. We provide an operational semantics based on a labelled transition system which allows to discuss, e.g., how different notions of equivalence, such as standard and asynchronous bisimulation, can be adapted to reason about our language. Finally, we illustrate the framework showing that an explicit receive primitive expressing a synchronization constraint or an update operation on the state of an object can be implemented in the language preserving a notion of observation equivalence among objects.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
M. Abadi and L. Cardelli. An Imperative Object Calculus. Theory and Practice of Object Systems, 1 (3): 151–166, 1995.
G. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, Cambridge, MA, 1986.
G. Agha. Concurrent Object-Oriented Programming. Communications of the ACM, 33 (9): 125–141, September 1990.
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.
G. Agha, I.A. Mason, S. Smith, and C. Talcott. Towards a Theory of Actor Computation. In Proc. of CONCUR ‘82, volume 630 of Lecture Notes in Computer Science, pages 564–579. Springer Verlag, 1992.
G. Agha, I.A. Mason, S. Smith, and C. Talcott. A Foundation of Actor Computation. Technical report, University of Illinois, 1993.
R. Amadio, I. Castellani, and D. Sangiorgi. On Bisimulations for the Asynchronous r-Calculus. Theoretical Computer Science, 195 (2): 291–324, 1998.
G. Boudol. Asynchrony and the ir—calculus. Technical Report INRIA-92–1702, INRIA Sophia-Antipolis., 1992.
M. Gaspari. Concurrency and knowledge-level communication in agent languages. Artificial Intelligence, 1998. To appear.
M. Gaspari and G. Zavattaro. An algebra of actors. Technical Report UBLCS97–4, Comp. Science Laboratory, Università di Bologna, Italy, May 1997.
M. Gaspari and G. Zavattaro. An actor algebra for specifying distributed systems: the hurried philosophers case study. In G. Agha and F. Decindio, editors, Concurrent Object-Oriented Programming and Petri Nets, Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1998. To appear.
M. Hamilton. Java and the Shift to Net-Centric Computing. IEEE Computer, 29 (8): 31–39, 1996.
C. Hewitt. Viewing control structures as patterns of passing messages. Artificial Intelligence, 8 (3): 323–364, 1977.
CAR. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.
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.
I.A. Mason and C. Talcott. A Semantically sound Actor Translation. In Proc. of ICALP’97, volume 1256 of Lecture Notes in Computer Science, pages 369–378. Springer Verlag, 1997.
R. Milner. Communication and Concurrency. Prentice Hall, 1989.
R. Milner. Functions as processes. Mathematical Structures in Computer Science, 2 (2): 119–141, 1992.
R. Milner. Elements of interaction. Communications of the ACM, 36 (1): 79–89, January 1993.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes I and II. Information and Computation, 100(1):1–40 — 41–77, 1992.
E. Najm and JB. Stefani. Computational Models for Open Distributed Systems. In H. Bowman and J. Derrick, editors, Proc. 2nd IFIP Conf on Formal Methods for Open Object-Based Distributed Systems (FMOODS), pages 157–176, Canterbury, UK, 1997. Chapmann & Hall.
C. Palamidessi. Comparing the expressive power of the Synchronous and the Asynchronous pi-calculus. In Proc. ACM Symposium on Principles of Programming Languages (POPL), pages 256–265, 1997.
B. C. Pierce and D. N. Turner. Concurrent Objects in a Process Calculus. In invited lecture at Theory and Practice of Parallel Programming (TPPP),volume 907 of Lecture Notes in Computer Science,pages 187–215, Sendai, Japan, nov 1994. Springer-Verlag, Berlin.
G. Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, Department of Computer Science, Aarhus University, Denmark, 1981.
C. Talcott. An actor rewriting theory. In Workshop on Rewriting Logic, number 4 in Electronic Notes in Theoretical Computer Science. Elsevier, 1996.
C. Talcott. Interaction Semantics for Components of Distributed Systems. In Proc. of Formal Methods for Open Object-Based Distributed Systems, pages 154–169. Chapman & Hall, 1996.
V.T. Vasconcelos. Typed Concurrent Objects. In 8th European Conference on Object Oriented Programming, volume 821 of Lecture Notes in Computer Science, pages 100–117. Springer-Verlag, Berlin, 1994.
S. Vinoski. CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments. IEEE Communications Magazines, 14 (2), February 1997.
D. Walker. ir-calculus Semantics of Object-Oriented Programming Languages. Information and Computation, 116 (2): 253–271, 1995.
E. Yourdon. Java, the Web, and Software Development. IEEE Computer, 29 (8): 25–30, 1996.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer Science+Business Media New York
About this paper
Cite this paper
Gaspari, M., Zavattaro, G. (1999). An Algebra of Actors. In: Ciancarini, P., Fantechi, A., Gorrieri, R. (eds) Formal Methods for Open Object-Based Distributed Systems. FMOODS 1999. IFIP — The International Federation for Information Processing, vol 10. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-35562-7_2
Download citation
DOI: https://doi.org/10.1007/978-0-387-35562-7_2
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4757-5266-3
Online ISBN: 978-0-387-35562-7
eBook Packages: Springer Book Archive