++ed by:

142 PAUSE users
117 non-PAUSE users.

Dominic Hargreaves
and 1 contributors


perlbook - Books about and related to Perl


There are many books on Perl and Perl-related. A few of these are good, some are OK, but many aren't worth your money. There is a list of these books, some with extensive reviews, at http://books.perl.org/ . We list some of the books here, and while listing a book implies our endorsement, don't think that not including a book means anything.

Most of these books are available online through Safari Books Online ( http://safaribooksonline.com/ ).

The major reference book on Perl, written by the creator of Perl, is Programming Perl:

Programming Perl (the "Camel Book"):
        by Larry Wall, Tom Christiansen, and Jon Orwant
        ISBN 978-0-596-00027-1  [3rd edition July 2000]

The Ram is a cookbook with hundreds of examples of using Perl to accomplish specific tasks:

The Perl Cookbook (the "Ram Book"):
        by Tom Christiansen and Nathan Torkington,
            with Foreword by Larry Wall
        ISBN 978-0-596-00313-5 [2nd Edition August 2003]

If you want to learn the basics of Perl, you might start with the Llama book, which assumes that you already know a little about programming:

Learning Perl (the "Llama Book")
        by Randal L. Schwartz, Tom Phoenix, and brian d foy
        ISBN 978-0-596-52011-3 [5th edition June 2008]

The tutorial started in the Llama continues in the Alpaca, which introduces the intermediate features of references, data structures, object-oriented programming, and modules:

Intermediate Perl (the "Alpaca Book")
        by Randal L. Schwartz and brian d foy, with Tom Phoenix
                foreword by Damian Conway
        ISBN 978-0-596-00478-1 [1st edition March 2006]


You might want to keep these desktop references close by your keyboard:

Perl 5 Pocket Reference
        by Johan Vromans
        ISBN 978-0-596-00374-6 [4th edition July 2002]
Perl Debugger Pocket Reference
        by Richard Foley
        ISBN 978-0-596-00503-0 [1st edition January 2004]
Regular Expression Pocket Reference
        by Tony Stubblebine
        ISBN 978-0-596-51427-3 [July 2007]


Beginning Perl
        by James Lee
        ISBN 1-59059-391-X [3rd edition April 2010]
Learning Perl
        by Randal L. Schwartz, Tom Phoenix, and brian d foy
        ISBN 978-0-596-52010-6 [5th edition June 2008]
Intermediate Perl (the "Alpaca Book")
        by Randal L. Schwartz and brian d foy, with Tom Phoenix
                foreword by Damian Conway
        ISBN 0-596-10206-2 [1st edition March 2006]
Mastering Perl
        by brian d foy
        ISBN 978-0-596-10206-7 [1st edition July 2007]
Effective Perl Programming
        by Joseph N. Hall, Joshua A. McAdams, brian d foy
        ISBN 0-321-49694-9 [2nd edition 2010]


Writing Perl Modules for CPAN
        by Sam Tregar
        ISBN 1-59059-018-X [1st edition August 2002]
The Perl Cookbook
        by Tom Christiansen and Nathan Torkington
            with foreword by Larry Wall
        ISBN 1-56592-243-3 [2nd edition August 2003]
Automating System Administration with Perl
        by David N. Blank-Edelman
        ISBN 978-0-596-00639-6 [2nd edition May 2009]
Real World SQL Server Administration with Perl
        by Linchi Shea
        ISBN 1-59059-097-X [1st edition July 2003]

Special Topics

Regular Expressions Cookbook
        by Jan Goyvaerts and Steven Levithan
        ISBN 978-0-596-52069-4 [May 2009]
Programming the Perl DBI
        by Tim Bunce and Alligator Descartes
        ISBN 978-1-56592-699-8 [February 2000]
Perl Best Practices
        by Damian Conway
        ISBN: 978-0-596-00173-5 [1st edition July 2005]
Higher-Order Perl
        by Mark-Jason Dominus
        ISBN: 1-55860-701-3 [1st edition March 2005]
Mastering Regular Expressions
        by Jeffrey E. F. Friedl
        ISBN 978-0-596-52812-6 [3rd edition August 2006]
Network Programming with Perl
        by Lincoln Stein
        ISBN 0-201-61571-1 [1st edition 2001]
Perl Template Toolkit
        by Darren Chamberlain, Dave Cross, and Andy Wardley
        ISBN 978-0-596-00476-7 [December 2003]
Object Oriented Perl
        by Damian Conway
            with foreword by Randal L. Schwartz
        ISBN 1-884777-79-1 [1st edition August 1999]
Data Munging with Perl
        by Dave Cross
        ISBN 1-930110-00-6 [1st edition 2001]
Mastering Perl/Tk
        by Steve Lidie and Nancy Walsh
        ISBN 978-1-56592-716-2 [1st edition January 2002]
Extending and Embedding Perl
        by Tim Jenness and Simon Cozens
        ISBN 1-930110-82-0 [1st edition August 2002]
Pro Perl Debugging
        by Richard Foley with Andy Lester
        ISBN 1-59059-454-1 [1st edition July 2005]

Free (as in beer) books

Some of these books are available as free downloads.

Higher-Order Perl: http://hop.perl.plover.com/

Writing Perl Modules for CPAN: http://www.apress.com/resource/freeebook/9781590590188

Other interesting, non-Perl books

You might notice several familiar Perl concepts in this collection of ACM columns from Jon Bentley. The similarity to the title of the major Perl book (which came later) is not completely accidental:

Programming Pearls
        by Jon Bentley
        ISBN 978-0-201-65788-3 [2 edition, October 1999]
More Programming Pearls
        by Jon Bentley
        ISBN 0-201-11889-0 [January 1988]

A note on freshness

Each version of Perl comes with the documentation that was current at the time of release. This poses a problem for content such as book lists. There are probably very nice books published after this list was included in your Perl release, and you can check the latest released version at http://perldoc.perl.org/perlbook.html .

Some of the books we've listed appear almost ancient in internet scale, but we've included those books because they still describe the current way of doing things. Not everything in Perl changes every day. Many of the beginner-level books, too, go over basic features and techniques that are still valid today. In general though, we try to limit this list to books published in the past five years.

Get your book listed

If your Perl book isn't listed and you think it should be, let us know.