, , ,

We don’t have shared memory. I have my memory. You have yours. We have two brains, one each. They are not joined together. To change your memory, I send you a message: I talk, or I wave my arms. You listen, you see, and your memory changes; however, without asking you a question or observing your response, I do not know that you have received my messages.

This is Joe Armstrong explaining Erlang processes in his book Programming Erlang. I have never seen an explanation more neat and cool than this one to explain the usage of Message Passing instead of Shared Memory.