Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can really tell that erlang evolved to run self sufficient on special hardware and not in a supportive unix environment.

Well yeah, it was written to run telephony equipment. It's not a general purpose language, though it has been moving that way.



AFAIK it was written as the research, not to run at any specialized hardware, then "sold" as being able to run the phone switch, but it needed a "big iron" computer attached to it just to drive that switch (!) -- it was that slow. And AFAIK it's still very slow. Up to quite recently it wasn't even able to use more cores.


Where did you get all that from? Erlang was never intended for research but as a tool for writing real switch applications. Yes, the original Prolog interpreter was slow, but that has not been used for almost 20 yrs. We never had "big iron" computers to play with, and never really needed them either as the system has been efficient enough to run on computers that were cost effective for the actual applications. The implementations have always been optimised for applications that are highly concurrent and extremely fault-tolerant, like telephone switches. Yes, it was a bit slow in being able to use more cores but that was because Ericsson, who still maintains the BEAM implementation, did not have need of it. Now, it will take as many cores as you can throw at it, and be able to use them if you have written a truly concurrent application (Amdahl's law). Transparently too.


Ericsson could have had a need for multicore already back in 1997, when the first SMP Erlang prototype was written, but the space and power budgets for the processor boards made it impossible to get any matching hardware for it. SMP in those days was not multicore, but several CPUs. It was only usable in servers - not in embedded systems.


I remember reading "Erlang - A survey of the language and its industrial applications" (Joe Armstrong - in INAP'96)

Now I've checked again, so let me summarize:

It started to spread "outside the lab" in 1987. In 1995 there were three commercial applications: network simulator, mobility server and distributed resource controller. First is a simulator, not running on the specialized hardware, the third was running on "a network of Windows NT machines." The second: "acts as a call control system when linked to the PBX"

OK, the second was running on the additional SPARC-based machine, not big iron, but AFAIK certainly more powerful than the PC's of that time.

So I don't see anything that was targeting really "specialized hardware" particularly not what we'd think as embedded (less power consumption, slower processors than the PC CPU's). It was a research project, and it had traditionally performance problems.

Even today, after so many years, when you compare Erlang HiPe (Hi Perf, you can imagine others then!) with something higher than C, let's then say Lua JIT it's easy to see which one is faster:

http://shootout.alioth.debian.org/u32/benchmark.php?test=all...

Edit: Or for multi core 64 bits with Mono:

http://shootout.alioth.debian.org/u64q/benchmark.php?test=al...


Do you realize that rvirding is Robert Virding, one of the creators of Erlang?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: