I have not read the first two books on the series (Learning Perl and Intermediate Perl) both of which are mentioned a few times in Mastering Perl, so I wasn't entirely sure what to expect, but I can only assume they have a similar structure. The content of Mastering Perl is not unlike a cookbook, however rather that showing you individual recipes, it takes an ingredient and shows you numerous things you can do with it.
Each chapter starts with an introduction on the simple concept of the subject matter, then builds on these giving (usually) multiple approaches/solutions plus a good indication as to what the author's own favourite is. Each section contains enough code examples to reinforce the theory, but keeps them brief enough not to detract from the overall flow.
The exception to this was the chapter on 'Advanced Regular Expressions' which I found a little tricky to get through, although it would challenge the greatest of authors to write a chapter on this topic with complete finesse. However it does appear at the start of the book so it would be a shame if it managed to put a reader off the rest of the book.
The chapters which were particularly interesting to me were:
- Profiling Perl : This goes from simple methods for simple benchmarks to writing your own profiler, while in between lies a very useful section on DBI profiling.
- Symbol Tables and Typeglobs : Used as a grounding for many of the concepts discussed in later chapters, this is very much in the category of things you do not really need to know, but that once you do a lot of Perl internals become clearer.
- Dynamic Subroutines : Following on from the chapter on Symbol Tables this chapter will have you treating your functions like they were standard variables without a second thought.
- The Magic of Tied Variables : If you are like me and have never really used tied variables, this section will have you itching to try them out.
I don't think, nor would I expect from a 'Mastering' title, that this book contains essential information for a Perl programmer. But it does contain a lot of tricks which, as well as being useful in their own right, go a long way to explain both the inner workings of Perl and the construction of many core modules. So if you want to know what goes on behind the scenes when you 'use constant => foo' or how the Exporter module works, this is the book for you.
Table of contents
Mastering Perl 1. Introduction: Becoming a Master 2. Advanced Regular Expressions 3. Secure Programming Techniques 4. Debugging Perl 5. Profiling Perl 6. Benchmarking Perl 7. Cleaning Up Perl 8. Symbol Tables and Typeglobs 9. Dynamic Subroutines 10. Modifying and Jury-Rigging Modules 11. Configuring Perl Programs 12. Detecting and Reporting Errors 13. Logging 14. Data Persistence 15. Working with Pod 16. Working with Bits Index