Actors: a model of concurrent computation in distributed systems
Actors: a model of concurrent computation in distributed systems
Concepts and experiments in computational reflection
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Reflection and semantics in LISP
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Reification: Reflection without metaphysics
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
A foundation for actor computation
Journal of Functional Programming
Hi-index | 0.00 |
We present in this article reflection in concurrent languages, and in particular, in PlasmaII which is an implementation of the actor model defined by C. Hewitt and G. Agha. We propose to implement structural and behavioural reflection with an approach based on a fine-grained decomposition of actors management. In this reflective architecture, the actor life cycle is described as a system of cooperative elementary entities that can be easily changed. This approach provides the user with an expressive and concise description of reflective programs. The paper describes this architecture and how it is used to fit various paradigms of concurrent systems such as the actor model of Hewitt and Agha. We also present several examples and emphasize the components specialization leading to black-board communication, ported-object system, or rendezvous synchronization. We also use the semantics of Agha's actors to formalize components cooperation and its ability to treat concrete examples. We compare our approach to others such as facets of CodA or Meta-Interpreters and Meta-Object of ABCL/R3