The Isolation Trap: What Erlang shows about the limits of concurrency through isolation (repost)

phild
Thu, 12 Mar 2026 12:48:15 +0000
Chat / Discussions

I found this an interesting read.

We’re continuing to look at the state of concurrency in programming languages and identifying what’s wrong with it. As a reminder, in Message Passing Is Shared Mutable State I argued that Go’s channels are shared mutable state with extra steps. But you may think Go’s channels aren’t true message passing. The honor for “best case for message passing” probably falls to Erlang. So let’s look at Erlang.

Causality

The Isolation Trap — Causality

Erlang's mailbox design is more disciplined than Go's channels: only the owning process can read from a mailbox, and sends are asynchronous. Yet the four failure modes of shared mutable state still show up, just in different shapes.

8 posts - 6 participants