Breaking a program into lots of autonomous pieces that communicate via message passing is a great way to help isolate complexity. Even if it didn't have any benefit for performance on a multi-core system or cluster, it would probably still be worth doing to keep everything from turning into a big ball of mud.
Of course, that's Unix pipes all over again. Unix pipes and pattern matching from Prolog. :) A lot of Erlang stuff makes more sense if you've used Prolog, by the way. (Though Erlang is almost certainly a more practical language...)
Of course, that's Unix pipes all over again. Unix pipes and pattern matching from Prolog. :) A lot of Erlang stuff makes more sense if you've used Prolog, by the way. (Though Erlang is almost certainly a more practical language...)