Actor Model
Origin. Hewitt, Bishop, Steiger (1973). Concurrent computation via actors. Message passing only. No shared state. Foundation for distributed systems.
Models. Actors: concurrent entities. Mailbox: message queue. Behavior: response to messages. Create, send, become. Asynchronous, location-transparent.
Formalism.
Actor: Independent computational entity. Has: address, behavior, mailbox. Responds to messages one at a time.
Primitive operations: send(a, m): send message m to actor a create(b): create new actor with behavior b become(b): change own behavior to b
Message delivery: Asynchronous: send doesn't wait. Guaranteed delivery (in model). Order not guaranteed between actors.
Behavior: Function from message to actions. b(m) = {send(...), create(...), become(...)}
Operational semantics: Configuration: set of actors + messages in transit. Step: actor processes message, performs actions.
Event ordering: Happens-before: causal ordering. a sends to b happens-before b receives. Local ordering within actor.
Properties: No shared state. Location transparency. Encapsulation. Fairness: messages eventually processed.
Formal models: Agha's actor algebra. Configuration structures. Denotational: powerdomain.
Symbols.
| Symbol | Unicode | Name | Meaning |
|---|---|---|---|
| a, b | — | Actors | Entity addresses |
| m | — | Message | Communication |
| → | U+2192 | Send | Message passing |
| ⟨⟩ | — | Behavior | Response function |
Metatheory. Turing complete. Expressing concurrency. Bisimulation. Fairness properties.
Applies to. Erlang/OTP. Akka. Distributed systems. Cloud computing. Fault tolerance.
Limitations. Ordering challenges. Debugging distributed. Deadlock possible. Performance overhead.
© 2026 Lingenic LLC