Wednesday, May 14, 2008

Five Reasons why you should learn Erlang

Here are the 5 resons why you should learn Erlang according to Joe Armstrong who is also the creator of Erlang

• You want to write programs that run faster when you run them on
a multicore computer.
• You want to write fault-tolerant applications that can be modified
without taking them out of service.
• You’ve heard about “functional programming” and you’re wondering
whether the techniques really work.
• You want to use a language that has been battle tested in real
large-scale industrial products that has great libraries and an
active user community.
• You don’t want to wear your fingers out by typing lots of lines of


Janaka Priyadarshana said...

Ohh its seems that you are becoming an expert in Erlang.
I've some problem about the second point that you have given("fault-tolerant applications that can be modified
without taking them out of service").

My opinion is that anyway we have to stop the service for a moment while update the service.
I would like to know some logical explanation about this.

Chamila Ruwanjith Piyasena said...

well, it's bit difficult to reply here how actually it can be achived. I assume that you have some knowladge in Erlang.

Suppose you are writing a server (may be using gen_server) and there is a call back module for it call server1. And you have a function in the code of the orginal server(the gen_server) call swap_code(Name, Mod) which is capable of defining what is the call back module. Then you write anothr call back module called server2 and compile it. And you call the swap_code function which set the call back module to server2. And now if you call a function in the server(the gen_server) it actually calls the functions in the server2 callback module. This is bit hard to explain here. If you go through the book Programmming Erlang by joe amstrong you can find a clear discription startion from page 292. To understand this you shold have good knowladge in Erlang.