state of Erlang?

Do you have a question? Post it now! No Registration Necessary.  Now with pictures!

Threaded View
Please excuse this OT post.

I have had the experience of attempting to implement some wireless
routing protocols (GPSR and AODV) in Java in the past two years, and
the experience hasn't been particularly fulfilling. The ideas are good
but the technology, Java, leaves something to be desired.

Having some spare time, I picked up Joe Armstrong's book 'Programming
Erlang' and have been going through it. When I got to the sections on
concurrent programming, I felt that the floor just dropped from under
me. Having done some significant network programming in Java, I was
rendered breathless at the ease at which the same thing can be done in

Out of curiosity, I checked the job boards (Dice, etc.) for Erlang
jobs, and there seemed to be precious few. Erlang dates from the same
generation as Perl (mid 80s), and has strengths in concurrent,
distributed, and multi-processor programming. It also had an
impressive framework in the OTP.

So ... just wondering ... why isn't Erlang buzzing? Why does it seem
so dead? Is it because it has a reputation of being extremetly
difficult? It's not. Does a language need some sort of critical mass
before it collects a big following? Perl has a large following which
seems to be keeping it up despite the competition (at least accordting
to TIOBE).

Any thoughts on the state of Erlang from the Perl community?


Re: state of Erlang?

Quoted text here. Click to load it

But it had a completely different target audience - Perl was appealing
for people who want to "process text data in an easy way". I think
is an area where Perl (and Ruby, which I personally even prefer over

As for Erlang, my impression is that it tries to appeal people doing
logic programming (i.e. Prolog) and functional programming (which
back then meant mostly Scheme or ML). I'm not an Erlang programmer,
but from what I have read, Erlang did not fully please these audiences
that much.

Quoted text here. Click to load it

Erlang was used for some time in the telecommunication field, at least
in Germany, and I think they used it for its logic features and that
you can easily write pure functions (i.e. without side effects). AFIK,
Erlang was dropped in favor of other languages in this area, but I
know the reason. So just my personal guess here:

When the telecommunication people abandoned Erlang, one source of
continuing development disappeared. Of course the Functional
community was still interested in Erlang, and seemingly still is (for
instance, there will be an Erlang workshop at this years IFCP, see /), but in the FP field, Erlang seems to share
fate with other remarkable programming languages (such as Miranda);
maybe since the main effort in this field seems to focus on Haskell.
Any FP people hanging around to comment on this?

BTW, in same way one might ask why C++ had so much success and
Eiffel did not, or why nodbody is using the very elegant NIAL language
( /)...


Re: state of Erlang?

cartercc wrote:
Quoted text here. Click to load it



Re: state of Erlang?

Quoted text here. Click to load it

In this case, how do you measure the critical mass? Compare Pascal,
which had a good run in the academic community but never escaped the
ivyed walls, with Ada which should have had a critical mass in the
military-industrial complex but somehow never made it into the

On the other hand, you have languages like C, Perl, Python, and Ruby
that had their starts in backrooms but have generated (at least!) a
lot more buzz than Pascal or Ada. What's the difference between a
language that starts off with a large in-built mass that falls by the
wayside, and a language that starts off with nothing but generates a
respectfull presence in the market?

According to TIOBE, the top four or so languages have 70-80 percent of
the market, depending on how you count it: Java, C/C++, Basic inc. VB,
and Perl, with PHP and C# coming into the mix.

Re: state of Erlang?

Quoted text here. Click to load it

A few ideas:

* Readily available implementations:
  Open source interpreted languages like Perl, Python, and Ruby are
  available on all platforms. C was (in the beginning) a very simple
  language and was rapidly ported to all sorts of platforms. There was
  no Pascal or Modula or Ada compiler available for the unix systems we
  had when I was a student.

* An existing code base:
  Unix and all its utilities were written in C. A unix programmer had to
  learn C. Much open source software was developed on unix systems and
  therefore written in C. Obviously a new language can never have an
  existing code base, but can rapidly get one: Look at JavaScript or

* Portability:
  Perl or C code is reasonably portable. You can write a C or Perl
  program on one platform in such a way that it will require no or only
  little effort to get it to run on another platform. Pascal had a
  gazillion incompatible dialects, and there the target system probably
  didn't have a Pascal compiler at all.

* Hype:
  Sun and Netscape were hyping Java. Java didn't really deliver what Sun
  promised, but everybody believed it was the future: So lots of
  applications were (re)written in Java, Frameworks were developed,
  Universities switched their introductory programming courses to Java,
  etc. And then Java was the future, or already the present.


Site Timeline