Channels ▼

Web Development

The Perl CD Bookshelf Version 4.0

November, 2004: The Perl CD Bookshelf Version 4.0

Jack J. Woehr is an independent consultant and team mentor practicing in Colorado. He can be contacted at

The Perl CD Bookshelf Version 4.0
O'Reilly Press, 2004
600 pp., $99.95
ISBN 0596006225

It's to be strenuously doubted whether any reader of The Perl Journal needs to be told why the Perl programming language is interesting and important. On the other hand, it's certain that many readers are in the midst of the learning process. These readers may well wish to consult The Perl CD Bookshelf, a new version of which, 4.0, has just been released by O'Reilly.

The Perl CD Bookshelf is pretty much a must-have for any Perl team's office library. It consists of the complete text of six famous and worthy Perl books attractively and economically laid out for onscreen reading in a web browser. In addition to appearing on the CD-ROM, one of the texts is also included as a trade glossy paperback in the package. There's also a platform-independent Java search engine. The Bookshelf sets a high standard for presenting programming literature in machine-readable form.

On the grounds that life is not all beer and skittles, I beg to present a couple of trivial quibble points:

  1. There's a bit of Win-centrism. The search engine exhibits some minor misbehavior under UNIX browsers, and the matrix of browser compatibilities is presented as (guess what?) an Excel spreadsheet.
  2. The various archives of code samples and examples, which one normally downloads from O'Reilly's web site upon purchasing a book, are not included on the CD-ROM. While the examples are indeed all present inline in the hypertext of the books themselves, and there's nothing stopping me from cutting and pasting them, I get the warm fuzzies from having all my sample code in plaintext in a .zip or .tar.gz archive. It's not like the CD-ROM was full.

Now let's look at each of the six books that make up the package:

Perl in a Nutshell, 2nd Edition

Nathan Patwardhan, Ellen Siever, and Stephen Spainhour

ISBN 0596002416

Published June 2002

The O'Reilly "Nutshell" series was conceived to impart minimally the core of various programming and technical competencies without being terse or cryptic. Perl in a Nutshell is a coconut shell, weighing in at about 740 pages, making it probably the biggest "Nutshell" book ever. That reflects Perl's size and weight: Perl has always tended to shove features inwards towards the core, while the language's maturity and cheerfully insouciant willingness to embrace change have deposited layered strata of syntax. This toe-breaker is the one book included in the package in hardcopy. It's a good choice, as it is the most comprehensive instructional reference to the language yet printed.

Perl Cookbook, 2nd Edition

Tom Christiansen and Nathan Torkington

ISBN 0596003137

Published August 2003

Yes, it's just like a cookbook. This massive "how-to" book (over 930 pages in print) is a nicely organized selection of examples and explanations of how to do the obvious; the sorts of things that aren't obvious sometimes when you're in a hurry. Need a friendly suggestion from the masters of the Perl arcana? You'll find it here.

Programming Perl, 3rd Edition

Larry Wall, Tom Christiansen, and Jon Orwant

ISBN 0596000278

Published July 2000

Known in the industry as "the camel book," this (or its predecessor editions) is the book from which most of us learned Perl. The "pink camel book" covered early Perl while the 2nd edition, the "blue camel book," added discussion of object Perl, which had appeared in the interim. In a discipline already renowned for witty literary efforts, Learning Perl raised the bar, due largely to the manic evangelistic instructional style of Perl creator Larry Wall's original coauthor Randal Schwartz. Less encyclopedic than Perl in a Nutshell but complete (up to Perl 5.6) and eminently readable, this is probably the rank beginner's best introduction to the entire scope of the Perl language, the pre-6.0 Perl environment, and to the Tao of Perl. Schwartz later moved over to the Learning Perl authorship team. Much of Schwartz's more memorable prose seems to have vanished from subsequent editions of Programming Perl, but despite the resultant increase in the sobriety of the presentation, the value of the treatise lies in its comprehensiveness, authority, pace of learning and readability, all of which remain undiminished over the intervening time.

Learning Perl, 3rd Edition

Randal L. Schwartz and Tom Phoenix

ISBN 0596001320

Published July 2001

This is the "llama book," wherein Schwartz and his talented co-author teach basic Perl in a fashion more amenable to quick learning of the core language than that provided in either of the other two introductory books in this bookshelf. Perl references and objects are banished to the appendices, and precious little is said of them even there. If you want a quick bootstrap into Perl's classic use as a text-processing language, this is the corner of the bookshelf you should visit first.

Learning Perl Objects, References & Modules

Randal L. Schwartz

ISBN 0596004788

Published June 2003

Okay, so they left object Perl out of Learning Perl. Here Schwartz makes up the difference. As the book commences:

"Welcome to next step in your understanding of Perl. You're probably here either because you want to learn to write programs that are more than 100 lines long or because your boss has told you to do so."

That gives you an idea of the flavor of Schwarzt's approach; i.e., he's both funny and right on. Perl very quickly does become unmanageable without objects: With objects, it's merely nearly unmanageable. As with Learning Perl, this book is the way to proceed if you want the quick bootstrap, this time into Perl objects, largely because the humor and sympathy of the author make the task less onerous.

Mastering Regular Expressions, 2nd Edition

Jeffrey Friedl

ISBN 0596002726

Published July 2002

Over the past 20 years, I've come to certain conclusions about software engineering. One is that "all applications are database applications," and another is that "all text processing applications are regex applications." Regular expressions have grown with time from being a peculiar feature of Unix to being part of every programmer's practice, especially in Perl, wherein regexes assume almost supernatural power. O'Reilly calls this meticulous monograph a "bonus book" and presents it in Adobe PDF format. The author maintains his own website for this book at http://www


Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.