Erlang
filed in General on Jun.13, 2009
At 13:37, I posted the following to Twitter: “looking a bit into the programming language Erlang, to find out why it is used to develop such advanced pieces of software as CouchDB.”
It’s 14:40 now, and after reading thru the “Getting Started with Erlang” (PDF) tutorial, I’m starting to understand it. Let me quote a few excerpts from the book:
“… so if you know the pid of a process, the “!” operator can be used to send it a message if the process is on the same node or on a different node.”
“spawn() can also be used to start processes in other nodes.”
“This sort of problem can be solved more easily if you use the facilities … which will also provide methods for updating code on the fly etc.”
“…handling of nodes which disappear…”
Add to this that it is a functional language (meaning approximately that it can be used for insane recursivity and your stack will not fill up) , and you get the picture. Erlang is a language specifically tailored for easy interprocess communications, and those processes can be running in the same Erlang instance, or on a different processor in the same machine, or even on a computer on the other side of the planet.
Leave a Reply