Updates
Latest Tweet
What's New?
Check out for latest innovation, a computer based training video collection
Like this Page
Advanced Perl Programming Review by Ricardo Signes
more a guide to CPAN than to the Perl language
In his preface to Advanced Perl Programming, 2nd Edition, Simon Cozens says that the focus in Perl programming has shifted, since the first edition, from techniques to resources. Rather than write really good new code, authors rely on the CPAN to find existing code and use that to solve the unoriginal parts of their problems. To cater to the discerning Perl programmer, then, the book has been completely rewritten. Instead of covering the parts of the Perl programming language that are often unexploited by more novice hackers, APP2 focuses on providing an overview of some of the major solved problems in Perl, and the modules that provide some of the solutions.
Only Chapter 1, "Advanced Techniques," bears much resemblance to the previous edition of APP. It covers subject matter closer to the language than to the modules involved: globs, CORE::, objects, B, and compilation. Each subsequent chapters discusses a common programming problem, shows off a few existing solutions (in the form of code on the CPAN), and sometimes demonstrates how to put those existing solutions to use. Among the topics covered are parsing, templating, serialization, unicode, and testing. POE, Inline, and Acme also get a chapter each.
Simon's writing is, as always, lucid and easy to follow. He provides good example problems, and he builds solutions that tend to do a good job of selling the modules on display. I must admit to feeling compelled to go do more with POE and some of the Lingua:: tools, after finishing their respective chapters.
In the end, though, I felt unfulfilled. While APP1 was not one of O'Reilly's best Perl books, it delivered what it promised: advanced techniques for writing Perl code. What APP2 delivers is a guide to avoiding the need for advanced techniques. It will save you from needing to use the strangest bits of Perl, not show you how. (The back cover quotes Andy Wardley as saying, "This book of spells goes a long way to unlocking those secrets [of advanced Perl code.]" I think, rather, that it just teaches the incantations.)
Perhaps my disappointment is predicated entirely on my incorrect expectations. If this book had been called "Leveraging the CPAN," I'd probably consider it a great success. You may, instead, be interested in Intermediate Perl or Mastering Perl.