View Review Details


Book:   Programming Erlang
Subject:   Masterfully Done!
Date:   2007-08-13 19:03:34
From:   Anonymous Reader
Rating:  StarStarStarStarStar

Programming Erlang is a must-read for anyone interested in learning how to use the unique and powerful Erlang language to create distributed, fault-tolerant, and concurrent systems. Author Joe Armstrong masterfully explains all that is needed to get up to speed. Numerous bite-sized examples are sprinkled throughout the book. There are also three larger examples that show how a more sizable program might be written. These are a SHOUTcast server, an IRC-like chat system, and a full-text indexing and search engine.


The basic language features are thoroughly explained including everything that a new user might struggle with (e.g. pattern matching, non-destructive assignment, the syntax, using the erlang shell, etc). The normally difficult topics of concurrency, distributed programming, and fault-tolerance are shown to not be so difficult given the right tools and language for the job. The tools include the impressive OTP libraries and the Mnesia database system. Both of these are covered with enough detail to get you up and running with pointers to appropriate manual pages to help you when you progress beyond that.


The entire book is written in a very pragmatic style that gives you just enough information to get up and running without weighing you down with a bunch of extraneous material. The writing reads very easily. I often felt as if the author was speaking directly to me.


Multi-core processors are becoming increasingly common. Programs have to be written with concurrency in mind in order to run faster on these newer processors. Programming Erlang shows how easy this can be with a programming language that was designed from the ground up to solve the very problems multiple cores introduce. Even if you don't plan on using Erlang on a daily basis you may very well benefit from an alternative view of the concurrent programming universe. I know I have.

Programming Erlang