I just read the original 1973 Actor paper. The story is, in 1973 Alan Kay gave a talk to Carl Hewitt's group at Stanford about Kay's object-oriented model of computation. A few months later, Hewitt published the actor paper, which summarizes Kay's OO model, and describes the Actor model, which is an elaboration of the OO model that gives an explicit account of concurrency, and renames 'objects' to 'actors'. Kay's original OO model is pretty general, and doesn't specify how concurrency works. Actors is a more specific form of OO. Likewise, Smalltalk is an implementation of OO that makes some specific design decisions: message passing is synchronous, all objects are instances of classes, and there is single inheritance between classes. Actors supports asynchronous message passing, and supports delegation instead of class inheritance. The Actors paper says that everything is an actor: numbers are actors, lambda expressions are actors, etc. Recursive functions don't appear to be ruled out. AFAIK Erlang is a specific implementation of Actors that makes specific design decisions, although I don't use Erlang and don't understand the subtleties here.