Want to receive a weekly email containing
the scoop on our new titles along with the
occasional special offer? Just click the button.
(You can always unsubscribe later by editing your
account information).

Give us an email and a password (you can use the password later to log in and
change your preferences). We'll send you a newsletter roughly once a week.

Programming Erlang now in print

About this book:

Moore’s Law tells us that computing power doubles every two years, and we’ve enjoyed faster and faster computers ever since. But Moore’s law is about to break: there’s a physical limit to the number of interconnections you can create on a chip. New multi-core devices—single chips with 2, 4, or more processors each—are the future.

But that only works if your programs are designed to be concurrent; with normal software practices and environments, your code will only run on a single processor at a time. Your users will think that your code is slow. And writing concurrent programs in many popular programming languages can be cumbersome and error-prone.

In Programming Erlang: Software for a Concurrent World (Pragmatic Bookshelf, US$36.95, 1-934356-00-X), creator Joe Armstrong describes Erlang, a programming language designed for building highly parallel, distributed, fault-tolerant systems. It has been used commercially for many years to build massive fault-tolerant systems which run for years with minimal failures.

According to Joe, programming in Erlang more closely matches the real world—where we are naturally concurrent. “Erlang programs model how we think and interact,” says Joe. Programming Erlang is much easier than in conventional languages as in the Erlang world, there are no locks, no synchronized methods, and no possibility of shared memory corruption.

Erlang programs run seamlessly on multi-core computers with no extra code on your part. Erlang combines ideas from the world of functional programming with techniques for building fault-tolerant systems. The result is a powerful language that makes it much easier to building the massively parallel networked applications of the future.

This book includes lots of example code you’ll be able to build upon. In addition, it contains the full source code for two interesting applications:

SHOUTcast server to stream music

Full-text indexing and search engine that can index gigabytes of data

The indexing engine is specially written to illustrate how to maximize throughput on a multi-core CPU.

Erlang is a language used by people in-the-know (just like Ruby was a few years ago). It solves one of the most pressing problems facing developers today: how to write reliable, concurrent, high-performance systems.