1.9 KiB
What is an Actor?
A [Syndicated Actor][Actor] (Garnock-Jones 2017) is a collection of stateful [Entities][Entity], organised in a tree of [Facets][Facet], with each facet representing a (sub)conversation that the Actor is engaged in. Each entity belongs to exactly one facet; each facet has exactly one parent and zero or more children; each actor has exactly one associated root facet. When a facet is its actor's root facet, its parent is the actor itself; otherwise, its parent is always another facet.
In the taxonomy of De Koster et al. (2016), the Syndicated Actor model is a Communicating Event-Loop actor model, similar to that offered by the E programming language (Wikipedia; erights.org).
- [Actor], [ActorRef], [Facet], [FacetRef], [ActorState], [Mailbox], [Activation]
References.
-
De Koster, Joeri, Tom Van Cutsem, and Wolfgang De Meuter. “43 Years of Actors: A Taxonomy of Actor Models and Their Key Properties.” In Proc. AGERE, 31–40. Amsterdam, The Netherlands, 2016. DOI. PDF.
-
Garnock-Jones, Tony. “Conversational Concurrency.” PhD, Northeastern University, 2017. Permalink. PDF@Northeastern. PDF@syndicate-lang.org. HTML.