The following is the behavior of an Actor for a simple synchronous channel: However, simple synchronous channels do not suffice for process calculi such as Communicating Sequential Processes (CSP) [Hoare 1978 and 1985] because use of the guarded choice (after Dijkstra) command (called the alternative command in CSP).
According to Knabe [1992], Chandy and Misra [1988] characterized this as analogous to the committee coordination problem: This section presents a simple distributed protocol for channels in synchronous process calculi.
In each attempt to accept a message, Bidder2 is thwarted because the bid that was offered by Bids1 or Bids2 is snatched away by Bidder1 because it turns out that Bidder1 has much faster access than Bidder2 to Bids1 and Bids2.
The following is the behavior of an Actor for a simple asynchronous channel: The Join-calculus programming language (published in 1996) implemented local and distributed concurrent computations.
Will Clinger (building on the work of Irene Greif [1975], Gordon Plotkin [1976], Henry Baker [1978], Michael Smyth [1978], and Francez, Hoare, Lehmann, and de Roever [1979]) published the first satisfactory mathematical denotational theory of the Actor model using domain theory in his dissertation in 1981.
Roscoe [2005] has developed a denotational semantics with unbounded nondeterminism for a subsequent version of Communicating Sequential Processes Hoare [1985].
More recently Carl Hewitt [2006b] developed a denotational semantics for Actors based on timed diagrams.