Actor Languages

A family of languages (not a specific language) based on the ActorsModel.

Some of these languages are described by GulAgha in Actors: A Model of Concurrent Computation in Distributed Systems (The Mit Press Series in Artificial Intelligence) ISBN 0-262-01092-5 .

Actors are objects that change role and send messages to mailboxes instead of directly to each other. They are a very elegant distributed programming concept.

Some discussion of the actors model that was here previously has been moved to ActorsModel.


SteveDekorte maintains a list of actor languages at http://wayback.archive.org/web/20060615012035/http://www.dekorte.com/docs/actors/

PlasmaLanguage? and ActLanguage? (Act 1, 2 and 3) are the original actor languages designed at MIT by CarlHewitt et al.

SalsaLanguage is an actor dialect of JavaLanguage.

EeLanguage is an actor language that focusses on the security benefits of the actors model.

GeraldSussman and GuySteele's attempt to understand CarlHewitt's ActorsModel resulted in the creation of the SchemeLanguage. A language based on Scheme that is even closer to the pure actors model is DoubleYouSeven.

Sussman and Steele arguably got continuations wrong; continuations in the actor model do not have the security problems that caused them to be omitted from DoubleYouSeven. In particular, Scheme continuations can return more than once to code that is unprepared for this. In the actor model, OTOH, an actor can be written to respond a continuation more than once, but that would have to be explicitly programmed. Also note that actor continuations are a derived concept, whereas in implementations of Scheme they have to be supported as a primitive.

CalLanguage (also called Caltrop) (not really... but it uses the word 'actor' to describe DataflowProgramming units.)

IoLanguage (but not OriginalIoLanguage, which despite being based on continuations is sequential).

ErlangLanguage (Erlang processes correspond approximately to actors, although in the current implementations port/process IDs can be forged).

The ActorFoundry is a Java implementation of actors.

ToonTalk is an actors-based GraphicalProgrammingLanguage.

JoCaml is based on the JoinCalculus, which is equivalent to actors.

CeeOmega is also based on the JoinCalculus.

PictLanguage is based on a variant of the PiCalculus. The differences between this variant and the usual PiCalculus make it much closer to actors.

ActorProlog? see http://www.cplire.ru/Lab144/start/e_intro.html

AcTalk? is a Smalltalk library (available for Squeak) the implements an Actors workbenck.


Not the same as the circa 1990 Whitewater Group Win16 pascal-like OO programming language ActorLanguage.

Also see CommunicatingSequentialProcesses, JoinCalculus, PiCalculus, ObjectCapabilityLanguage.


EditText of this page (last edited February 11, 2013) or FindPage with title or text search