The A-Z of Programming Languages: Erlang

Our series on the most popular programming languages continues as we chat to Erlang creator Joe Armstrong

Joe Armstrong

Joe Armstrong

Computerworld is undertaking a series of investigations into the most widely-used programming languages. Previously we have spoken to Larry Wall, creator of the Perl programming language, Don Syme, senior researcher at Microsoft Research Cambridge, who developed F#, Simon Peyton-Jones on the development of Haskell, Alfred v. Aho of AWK fame, S. Tucker Taft on the Ada 1995 and 2005 revisions, Microsoft about its server-side script engine ASP, Chet Ramey about his experiences maintaining Bash, Bjarne Stroustrup of C++ fame, and Charles H. Moore about the design and development of Forth.

We’ve also had a chat with the irreverent Don Woods about the development and uses of INTERCAL, as well as Stephen C. Johnson on YACC, Steve Bourne on Bourne shell, Falcon creator Giancarlo Niccolai, Luca Cardelli on Modula-3, Walter Bright on D, Brendan Eich on JavaScript, Anders Hejlsberg on C#, Guido van Rossum on Python and Prof. Roberto Ierusalimschy on Lua. We most recently spoke to Tcl creator John Ousterhout.

In this interview Erlang creator Joe Armstrong, took some time to tell Computerworld about Erlang's development over the past 20 years, and what's in store for the language in the future.

If you wish to submit any suggestions for programming languages or language authors you would like to see covered, please email kathryn@computerworld.com.au


What's behind the name Erlang?

Either it's short for "Ericsson Language" or it's named after the Danish mathematician Agner Krarup Erlang. We have never revealed which of these is true, so you'll have to keep guessing!

What prompted its creation?

It was an accident. There was never a project "to create a new programming language". There was an Ericsson research project "to find better ways of programming telephony applications" and Erlang was the result.

Was there a particular problem the language aimed to solve?

Yes, we wanted to write a control program for a small telephone exchange in the best possible manner. A lot of the properties of Erlang can be traced back to this problem. Telephone exchanges should never stop, so we have to be able to upgrade code without stopping the system.

The application should never fail disastrously so we need to developed sophisticated strategies for dealing with software and hardware errors during run-time.

Why was Erlang released as open source? What's the current version of open source Erlang?

To stimulate the spread of Erlang outside Ericsson. The current version is release 13 - so it's pretty mature. We release about two new versions per year.

What's the Erlang eco-system like?

There's a very active mailing list where we have a lot of discussions about architectures and applications and help solve beginners problems.

Currently there are several conferences which are dedicated to Erlang. The oldest is the Erlang User Conference that runs once a year in Stockholm. The ACM Functional Programming Conference has had an "Erlang day" for the last few years and last year the "Erlang Factory" started.

The "Erlang Factory" runs twice a year. The last conference was in Palo Alto and the next one will be in London. These conferences are explosions of enthusiasm. They are become the meeting place for people who want to build large scale systems that never stop.

It's difficult to get overall picture. Erlang is best suited for writing fault-tolerant servers. These are things that are not particularly visible to the end-user. If you have a desktop application it's pretty easy to find out how its been implement. But for a server this is much more difficult. The only way to talk to a server is through an agreed protocol, so you have no idea how the server has been implemented.

Tags a-z of programming languageserlang

More about Ericsson AustraliaetworkGoogleIntelMicrosoftSonySony Ericsson

6 Comments

Reboltutorial

1

What about Carl Sassenrath creator of Rebol

I can't see Carl Sassenrath, do you intend to interview him since he's the creator of the amazing Rebol Language ?

See http://reboltutorial.com

Anonymous

2

Erlang - the name

You didn't do you homework
As you can find on erlang.org in faq - 10.1

10.1 Why is Erlang called "Erlang"?

Erlang is named after the mathematician Agner Erlang. Among other things, he worked on queueing theory. The original implementors also tend to avoid denying that Erlang sounds a little like "ERicsson LANGuage".

regards

Long

3

Integrated IDE

<cite>Instead of having external revision control systems like Git or Subversion I'd like to see revision control and re-factoring built into the language itself with fine-grain mechanism for introspection and version control.</cite>

For many years now, Smalltalk has Envy/Developer revision control and refactoring built-in into its IDE. I am sure there are a good many ideas can still be learned here.

One potential drawback of such an integrated environment is the risk of becoming a closed system. Smalltalk did live in its own "bubble".

Mix Teco

4

Erlang is a <> programming

Erlang is a <<great>> programming language! Something didn't say by Armstrong is that Erlang comes from Prolog; in a certain way, it is a "functionalization" of Prolog, so that Erlang avoids the ferocious Prolog backtracking and passively waits for new inputs to come.

Markus Peloquin

5

Yeah! That joker needs to go do research on the history of his own language before conducting interviews on it.

Markus Peloquin

6

This 'reply' mechanism is broken. My previous post was in response to 'Erlang - the name'.

Comments are now closed

Payment Adviser finds value in desktop-as-a-service

READ THIS ARTICLE
MORE IN Virtualisation
DO NOT SHOW THIS BOX AGAIN [ x ]
CIO
ARN
Techworld
CMO