Actor Model "Everything is an actor." ~ "Everything is an object." Actor Model Object-Oriented Inherently concurrent Sequential "Sequentiality modeled as special case of concurrent computation" BASIC IDEA Actor receives message(s) and responds (in no specific order): - Send messages to other actors - Create new actors - Designate behavior to be used for next message it receives * Strictly ASYNCHRONOUS communication. * Messages delivered by means of Best effort policy. * Dynamic creation of actors. * Messages are sent to specific "mailing addresses". -> And actor can only sent messages to actors whose adress it has: * Addresses "known" from the beginning * Addresses of dynamically created actors. * Addresses can be included in messages. (for instance to serve as a "return adress") * Possible to model Unbounded determinism: - System always halts - ... but output may be of infinite size (larger than any given size) ( <-> Dijkstra said this is not possible) * The model does not assume messages to be buffered/queued/... * No requirement on order of message arrival. * Locality: Upon receiving a message, actor can only send messages to 1) actors whose addresses are included in the message 2) actors that it was already aware of before it received the msg. 3) actors created during the processing of the message. * said to be Composable