by Larry Wall, Tom Christiansen, and Jon Orwant
O'Reilly Press, 1092 Pages
When you're programming with Perl, there's more than one way to do it. This feature is often helpful, but it can often be equally confusing. Programming Perl, by Larry Wall, Tom Christiansen, and Jon Orwant, provides an extensive guide through the vast jungles of opportunity that Perl provides the programmer. This Almost-All-You-Need-To-Know book on the worlds first post-modern programming language is almost a necessity for those who would master this ever-useful programming language.
Wall, Christiansen, and Orwant have created a book that's both useful as a learning tool and as a reference. The first chapter gives an overview of Perl's features for the beginner, explaining Perl basics through simple explanation and demonstration. The book then moves on to explaining almost everything there is to know about Perl, starting with the simplest things, "atoms", moving to "molecules", then expanding the explanation of Perl programming as each concept builds upon the previous ones. However, the book is not merely a tutorial to Perl; its 1063 pages are also designed to be used as a definitive reference book. Like the Perl programming language itself, there's more than one way to use the book that best describes it.
Programming Perl is truly worthy of the O'Reilly publishing label it comes under. It combines an informative and informal style, creating a book that truly accomplishes the goal of presenting a Perl learning guide and reference tool in one book. Ever serious and scholarly, the authors somehow manage to combine that with a undercurrent of humor and just-have-fun attitudes. A good example of this would be the sections in Chapter 24 on code efficiency and what they call "fluent Perl" (an obfuscator's dream come true). At the same time, it's not a book I would recommend reading the whole way through in one sitting. Just the first 649 pages, after which comes a whopping amount of normal reference material.
This book has been particularly helpful to me in my web programming development. Since Perl encompasses a wide range of technologies, I have often used the book to help me learn the basics of non-Perl technology, such as regular expressions, unicode, and others. The "Camel" book, well known and well loved by many is the book to have if you're going to be doing any Perl programming at all. A well-written guide that contains a wealth of knowledge worthy of Croesus himself, Programming Perl is the definitive book on this great language.