Channels ▼

Developer Reading List

, April 02, 2013 New books on Java, Erlang, Unit Testing, Windows and more.
  • E-mail
  • Print

Learn You Some Erlang for Great Good

by Fred Héber

Erlang is the functional language, developed at Swedish phone-maker Ericsson, for use in large-scale, fault-tolerant applications. The language, which embraces the functional model, relies on message passing (with actors) and is generally deployed on multiple nodes, in which the failure of any one instance simply requires a restart of the Erlang VM. Because of this use case, Erlang is frequently thought of as specializing in parallel programming contexts; but while it does handle concurrency well, it's really the elegant fault handling that delivers the language's principal value.

The key obstacle is that the language is hard to learn. The functional model and actor implementation will be new to many developers. The difficulties these features present are compounded by an opaque syntax and less-than-helpful error messages. Consequently, to get up and running with Erlang requires dedication and a long-term commitment. The previous widely used tutorial on Erlang was written by Joe Armstrong, the language's principal developer. However, it was in many ways as unapproachable as the language.

This new book by Fred Hébert changes the whole landscape. It's an enjoyable and approachable introduction to Erlang. The author presents the topics in an intelligent, easy-to-navigate sequence that reveals Erlang in small chunks that build successively on each other. The presentation is laced with humor that is at times a relief, even if it occasionally veers into gallows style. (A dead worker thread, for example, is represented by a cartoon of a corpse floating face-down in a pool.)

Hebert is well-regarded in Erlang circles for this tutorial, which is available online at no cost. The high esteem for this material is well deserved and this book is without a doubt the best way to get on board with Erlang. Recommended.






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.