Catalogue of Artificial Intelligence Techniques
Keywords: Pascal, SmallTalk, message-passing
Categories: Computer Architecture , Programming Languages
Author(s): Mark Drummond
The actor model of computation was developed by Hewitt in order to explore the fundamental issues involved with computation via message-passing. Actors are objects which know about other actors and can receive messages from other actors. Each actor is specified by detailing what kind of messages it will receive, and the sequence of actions of the actor, should it be sent one of these messages. Everything in an actor based programming system is an actor. To increment a value, for instance, a message would be sent to the actor representing the number, asking the actor to increment itself. The essential difference between the actor model of computation and the SmallTalk-80 language is that the sequencing of computations by actors depends critically on the concept of a `continuation'. A continuation is an actor which is prepared to accept an (intermediate) value as a message, and continue the computation. In SmallTalk-80, an object (or actor) will instead return a message to the object which instigated the computation, in much the same way that a Pascal function will return a value to the routine which called it.
- Hewitt, C., Viewing control structures as patterns of passing messages Artificial Intelligence 8 (1977), 323--364, also appears in Artificial Intelligence: an
MIT Perspective (Winston, P.H. and Brown, R.G.,
eds.), MIT Press, 1979, pp. 433--465