from Hacker News

Ask HN: Why Erlang never got the mainstream status?

by ved_a on 6/4/13, 1:47 PM with 1 comments

Erlang is a twenty-five-year-old programming language that has yet to win a popularity contest but has won many a hearts with its ability to do things just right. Erlang has got almost everything right - concurrency, functional programming, Garbage Collection, Network I/O, etc. Still, Erlang never got the mainstream popularity and widespread acceptance it always deserved. I wonder what might be the reasons
  • by bjourne on 6/4/13, 4:20 PM

    Some reasons I can think of:

    1. Writing C extensions is a horrible experience. Also, they have to manually yield priority so if they crash, the whole BEAM crash so the whole "fault tolerance" propaganda becomes a lie.

    2. Erlang doesn't cooperate well with it's environment. Starting, supervising and communicating with external processes correctly is tough in any language but harder in Erlang.

    3. BEAM:s memory usage is hard to predict, so running multiple vm:s on the same system can easily run you out of memory.

    4. It's hard to run Erlang code as standalone scripts. Points 2-4 address the same issue which is that basically that Erlang's environment is a walled garden.

    5. While Erlang is open source, it's mostly run by a group of developers at Ericsson and doesn't have much of a community. For example, it doesn't have a public bug tracker (maybe that have changed).

    6. It's syntax is, objectively, butt-ugly.

    7. Maybe most important: It is not a good fit for about 99% of all programming problems which are mostly sequential and doesn't benefit at all from rock-solid (Erlang) process communication.