Hacker News new | ask | show | jobs
by rbehrends 4920 days ago
No, they wouldn't trivialize the problems. Both message-passing and immutability pay a price for performance in ways that matter for real-world problems.

Example 1: Algorithms that operate on large matrices. Immutability means (1) that you can't have destructive updates of small parts, but need to copy the matrix in its entirety, and (2) that you can't have in-place operations, increasing your memory usage (and thus decreasing L2 cache performance).

Example 2: Caching expensive operations. You want to share these among as many threads as possible to maximize hit rates, but you also need to avoid serialization bottlenecks. This is incompatible with both pure message passing and, say, the standard implementations for immutable maps.