I got my New Blue Camel from Amazon and was firstly amazed at the bulk. The previous two versions of the book were only about half that size. I soon found out this was due to the tons of extra information added since the last edition. The Table of Contents spans 9 pages and alone is enough to flip through and find something interesting to read about. If you're needing a quick reference, you can flip to the index and look up and keyword such as a topic, a special variable, a standard module, etc.. I've always been amazed the camel's ability to play the roles of a quick reference, an all encompasing standard, and a step by step tutorial all at once and all well, and this edition is no different.
Kept over from the old editions are the overview and "Gory Details" of Perl, as the book puts it. A few of the new things include...
- Chapters on Regular Expressions - Regular expressions are one of the hardest concepts in Unix, and also one of the most integral concepts in Perl. The NBC has a great explaination of thier construction and usage.
- Chapter on The Perl Interpreter and Compiler - Another greatly misunderstood part of Perl is the way it interprets and compiles the code at runtime. This chapter sets the record straight and gives you a look at the Perl compiler you really couldn't otherwise have without being in the core development team.
- Chapter on Unicode - Unicode is the system Perl adopted to replace ASCII internally in Perl. It generally works the same as ASCII, but there are some very important differences that this chapter addresses. It also gives great information of string handling internally in Perl and ways to make your Perl code more portable.
- Revamped Perl Culture Bits - The Camel has always been the ultimate source of information about Perl culture, and the addition of the Perl Poetry section and more examples make this more true in the new book than ever before.
- Threading - With Perl 5.6 came the foundation of threaded Perl, and the New Camel gives you both and in depth understanding of Perl threads and a step by step instruction to start using them now. Really, threads aren't that difficult to use in and of themselves, so the threading chapter focuses mainly on writing thread safe code and knowing how and when to implement threads.
- Perl 5.6 - Perl 5.6 is a different world from previous versions and the New Camel is ready for it. It covers Threading, Overloading, and Unicode. If you're going to be using the advanced features of 5.6, you *need* the New Camel; the second edition just won't do anymore.
- Other Enhancements - The basic text has been corrected and added to as necessary to make this Camel up to date for 5.6. Also most of the tables have been reworked in one way or another to make them more usable and more useful.
If you haven't owned a Camel before, it's Larry's (and Tom Christiansen's, and Jon Orwant's, and Randal Shwartz's) complete Guide to the Perl Programming Language, similar in function to "The C Programming Language" by the infamous K&R. No serious or curious Perl programmer should be without a copy, and it's the next logical step up from "Learning Perl" for beginners. It's written much in the style of Perl itself, you can use it effectively no matter what your level as a Perl coder.
I've always thought the camel gave a great bit of insight into the way a Perl programmer's mind works. Many people claim to speak perl, and that's certainly the way it works. Perl flows evenly and logically, but you can't really tune into that until you read the source of it, and that's Larry Wall, or, barring that, his written incarnation, Programming Perl 3rd Ed..
If you've never had the pleasure of reading an O'Reilly book, you'll find that they are some of the highest quality technical books available. They're always on topic, and usually written by the authority in the field, in this case, the creator and maintainer of Perl himself. Their layout and editorial style is very easy to read with little or no ambiguity. Code segements, tables, etc are seperated clearly with useful captions. Footnotes abound, and cross references point you to exactly where you were headed, even when you have only a vauge idea of where that was. Finally, the lay-flay binding makes the physical books themselves easy to handle on your desk or propped up against a printer or stack of other, now useless Perl books. :P
More than anything else, this book impressed me in the vast amount of information it contained and the ease of use it presented. A great accomplishment in Book UI design. The Perl Compiler chapter finally gives a concise explanation of how the Perl Compiler works; so many people don't understand it. The Unicode parts unveil yet another Perl black box to the mainstream Perlers, and revamped parts such as Threading, IPC, Overloading, Tied Variables, and more from perl 5.6 are included in whole.
To get a true grasp on what's in the book, take a look at the Table of Contents.