Message Passing (Object Communication)¶
Objects (or actors, or services) communicate by sending messages requesting behavior, rather than directly manipulating each other's state; this decouples sender from receiver's implementation.
Tension Addressed¶
Explicit vs. Implicit State
Recognizable As¶
Method calls as messages, actor systems, event buses, REST APIs, remote procedure calls, command objects
Canonical Sources¶
Alan Kay, Smalltalk papers (1970s); Carl Hewitt, Actor Model (1973); Joe Armstrong, Erlang thesis (2003)
Transfers To¶
Distributed Systems (service communication), Concurrency (actor model), Event-Driven Architecture, Microservices
Alan Kay considered message passing the core of OOP: "The big idea is messaging." This concept scales from method calls to distributed systems.