Perl is a versatile, powerful programming language used in a variety of disciplines, ranging from system administration to web programming to database manipulation. One slogan of Perl is that it makes easy things easy and hard things possible. "Intermediate Perl" is about making the leap from the easy things to the hard ones.
Originally released in 2003 as "Learning Perl Objects, References, and Modules" and revised and updated for Perl 5.8, this book offers a gentle but thorough introduction to intermediate programming in Perl. Written by the authors of the best-selling "Learning Perl," it picks up where that book left off. Topics include: Packages and namespacesReferences and scopingManipulating complex data structuresObject-oriented programmingWriting and using modulesTesting Perl codeContributing to CPAN
Following the successful format of "Learning Perl," we designed each chapter in the book to be small enough to be read in just an hour or two, ending with a series of exercises to help you practice what you've learned. To use the book, you just need to be familiar with the material in "Learning Perl" and have ambition to go further.
Perl is a different language to different people. It is a quick scripting tool for some, and a fully-featured object-oriented language for others. It is used for everything from performing quick global replacements on text files, to crunching huge, complex sets of scientific data that take weeks to process. Perl is what you make of it. But regardless of what you use Perl for, this book helps you do it more effectively, efficiently, and elegantly.
"Intermediate Perl" is about learning to use Perl as a programming language, and not just a scripting language. This is the book that turns the Perl dabbler into the Perl programmer.
This is a useful book - it explains _why_ you might want to do the things that Programming Perl documents. There are only two drawbacks: firstly, the usual O'Reilly sexism, and secondly, the incredibly intrusive Gilligan's Island thing. It's a programmer's privilege to choose their own examples, but RLS has forgotten that the purpose of examples is to illuminate. This is a supposed to be a Perl manual with examples, not 'Randy's Affectionate Tribute to Gilligan's Island With The Odd Reference to Perl'.
Aside from regular expressions references are probably the biggest source of curlies, angle brackets, forward-slashes, and dollar signs in Perl programs. The view becomes clearer when you understand what these mean.
The author also understands the importance of avoiding for loops. He's absolutely correct that this is one of the things that distinguishes the better programmers. I was spending too much time each day setting up and figuring out how to apply for loops to various problems. Commands like map and grep, although hard to understand at first, reduce for loops to concise one-line expressions. At the end of the day this means going home at 5 instead of 7.
This book made me a much better Perl programmer, and made Perl easier for me to use. I was in awe reading some parts of it -- I know that sounds silly, but that's how it was for me when Schwartz showed me the truth of the Perl language. I'm especially proud that excerpts from a review I wrote of this book for Unix Review magazine was printed on the back cover:
"What a spectacular Perl book it is... this book fills a vacancy for Perl programmers who are looking to improve their skills or to grow in their careers... it’s very personable and easy to follow. More importantly, it has the feel of a master instructing the apprentice."
Honestly...I didn't liked this book...surely I learned quite a few really nice things...but...there's no response for any of the examples...you simple assume that have them right...also the PeGS::PDF examples are pretty good... but there's no explanation on how to reproduce them...and even when checking GitHub the examples are too simple...
I was expecting more from this book...but after reading Beginning Perl...this was a waste of time...I would not recommend it...by any chance...
This book presented good coverage of objects, modules, packages & CPAN. I'd read this all the way through to get a taste of the concepts covered. Then come back to it as a reference when needed.