Customer Reviews

2 Reviews
5 star:
4 star:
3 star:    (0)
2 star:    (0)
1 star:    (0)
Average Customer Review
Share your thoughts with other customers
Create your own review
Most Helpful First | Newest First

4 of 4 people found the following review helpful
5.0 out of 5 stars Essential follow-up reading to The Llama and The Alpaca, 27 Aug 2007
This review is from: Mastering Perl (Paperback)
If you've made it through Learning Perl and Intermediate Perl, you've probably been waiting with no small impatience for a book like this to round off the trilogy and your basic Perl education. If you're interested in Perl as a complete programming language, or want to be able to read and understand the rest of the Perl literature, then you need this.

Note that the thrust of the book is about providing the information you need to use Perl to build applications, so there's nothing about Perl internals, or embedding Perl or dropping down to C to speed things up. For that sort of thing, you might want to look at the various editions of Advanced Perl Programming.

Stylistically, Mastering Perl is a bit of a departure from the previous two books in the series. Gone is the tutorial feel, and there's no overarching pop culture theme to the examples. Instead, you're assumed to be competent and ready to develop your own code, and brian d foy's style treats the reader as an equal.

There are two types of material covered in the book. The first rounds off the rest of the Perl language not covered in the first two books. These are all things which are not exactly necessary for every day programming, but which anyone motivated sufficiently to learn enough Perl to be interested in this book will just want to know. Typeglobs, the symbol table and tied variables top this list. Additionally, there are excellent chapters on error handling and advanced regular expressions, the latter of which introduces the options and anchors used in lexing, and look-ahead and look-behind assertions.

The other material covers useful libraries for developing in Perl. Examples include chapters devoted to documentation with POD, serialization, logging, debugging, profiling, and benchmarking. These are all comprehensive and use fairly long examples with non-trivial code.

You could cobble together a minority of the material presented in this book from other sources (e.g. some of the stuff on ties or the symbol table), such as Effective Perl Programming, Perl Medic, Perl Debugged or Object Oriented Perl (and there's a helpful Appendix which recommends several such books as further reading), but having it presented here in one cohesive whole is a far superior learning experience, thanks to the author's clear explanations and copious examples. Additionally, there's stuff here that you just won't find in those other books (e.g. do you know what the PROPAGATE method does on an object?). I'd like to think I've read most of the important Perl books, but I still learnt a lot, and it filled in a lot of holes. It's bang up to date, too, which many of the other books you'd otherwise be relying on can't claim to be.

Overall, this fills a gaping void in the Perl literature and provides a suitable bridge between Intermediate Perl and the likes of Perl Cookbook and Perl Best Practices. It's an excellent, focussed book which provides almost everything you need to do real Perl programming.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

1 of 1 people found the following review helpful
4.0 out of 5 stars A great addition to every Perl bookshelf, 3 Dec 2007
Michele Beltrame (Maniago, PN, Italy) - See all my reviews
This review is from: Mastering Perl (Paperback)
In recent years, O'Reilly pace regarding the publishing of Perl-related books has slowed down quite a lot. This is likely not because of O'Reilly fault, but it's probably due to the fact that Perl is a mature language for which there is a lot of literature which is still up-to-date. For instance, the 3rd edition of Programming Perl was published in 2001 and is still a reliable reference for the current version of the language - even though that is going to change a bit within a few days, with the release of perl 5.10.

Anyway, it seems there's still to write about Perl as a language as opposed to projects or software powered by Perl, and that it what the book is about: the language and how to use it at best. It's a collection of tips, best practices and suggestions, and can fit into the same category as two other O'Reilly titles: Perl Hacks and Perl Best Practices.

Part of this book is devoted to the usual (and important) areas: writing secure and high-performance programs, debugging, error handling, logging and documentation writing. For all of this, several options are usually described by the author, and they range from rolling your own solution using the core perl compiler to using CPAN modules to automate part of, if not all, the work. For example, the section regarding the profiling of Perl programs explains first what profiling is about and illustrates a general approach at the task, and then how to profile database code with DBI::Profile; it then goes to the full-featured solution involving Devel::DProf and closes with suggestions on how to write your own profiler module.

This book can help you organize your applications better. For instance, do you embed your configuration variables at the top of your programs or in an external Perl module? Think of a different approach by reading chapter 11, and start using configuration files (which can overridden with command-line options) as the whole Unix world does - there are plenty of formats to choose from. Using Windows? Use the Windows Registry. Using MaxOS X? Use the plist format. You can do all of this with ready to use modules, and this book explains you how to get started with this.

The most interesting parts of the book lie in it's "niche" chapters, which explains aspects of Perl which are not needed by most programmers, but of which every programmer would surely benefit. Have you always thought that working with bits was something for mad assembly or C++ coders? Wrong! Chapter 16 will introduce you to binary numbers, bit operators and vectors. You might also want to take a look at chapter 6 which teaches you how to make your code clear and how to de-obfuscate other people's code (all right, obfuscation is a virtue, but there should be limits ;-)).

All in all this book can be very useful to improve the way you use Perl (the language) and perl (the compiler), and is a worth reading, which then becomes a nice reference.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Most Helpful First | Newest First

This product

Mastering Perl
Mastering Perl by brian d foy (Paperback - 26 July 2007)
In stock
Add to basket Add to wishlist
Only search this product's reviews