Actor model implementation

In computer science, Actor model implementation concerns implementation issues for the Actor model.
Cosmic Cube.
The Caltech Cosmic Cube was developed by Chuck Seitz "et al." at Caltech providing architectural support for Actor systems. A significant difference between the Cosmic Cube and
most other parallel processors is that this multiple instruction
multiple-data machine uses message passing
instead of shared variables for communication between
concurrent processes. This computational model is reflected
in the hardware structure and operating system,
and is also the explicit message passing communication seen by the programmer. According to Seitz [1985]:
J–Machine.
The J–Machine was developed by Bill Dally "et al." at MIT providing architectural support suitable for Actors.
This included the following:
Concurrent Smalltalk (which can be modeled using Actors) was developed to program the J Machine.
Prototype Actor Programming Language.
Hewitt [2006] presented a prototype Actor programming language in the sense that it directly expresses important aspects of the behavior of Actors.
Messages are expressed in XML using the notation
The semantics of the programming language are defined by defining each program construct as an Actor with its own behavior. Execution is modeled by having Eval messages passed among program constructs during execution.
Environment Actors.
Each Eval message has the address of an Actor that acts as an environment with the bindings of program identifiers. Environment Actors are immutable, i.e., they do not change.
When Request[Bind[identifier value] customer] is received by an Actor Environment, a new environment Actor is created such that
when the new environment Actor receives
Request[Lookup[identifier’] customer’] then if identifier is the same as identifier’ send customer’ Returned[value], else send Environment
Request[Lookup[identifier’] customer’].
The above builds on an Actor EmptyEnvironment which
when it receives Request[Lookup[identifier] customer], sends customer Thrown[NotFound[identifier]].
When it receives a Bind request EmptyEnvironment acts like Environment above.
Expressions.
The prototype programming language has expressions of the following kinds:
Example program.
An example program for a simple storage cell that can contain any Actor address is as follows:
The above program which creates a storage cell makes use of the behavior ReadWrite which is defined as follows:
Note that the above behavior is pipelined, i.e., the behavior might still be processing a previous read or write message while it is processing a subsequent read or write message..
For example, the following expression creates a cell x with initial contents 5 and then concurrently writes to it with the values 7 and 9.
The value of the above expression is 5, 7 or 9.