Skip to content

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.