This is the third in O'Reilly's series of landmark Perl tutorials, which started with Learning Perl, the bestselling introduction that taught you the basics of Perl syntax, and Intermediate Perl, which taught you how to create re-usable Perl software. Mastering Perl pulls everything together to show you how to bend Perl to your will. It convey's Perl's special models and programming idioms.
This book isn't a collection of clever tricks, but a way of thinking about Perl programming so you can integrate the real-life problems of debugging, maintenance, configuration, and other tasks you encounter as a working programmer.
The book explains how to:
- Use advanced regular expressions, including global matches, lookarounds, readable regexes, and regex debugging
- Avoid common programing problems with secure programming techniques
- Profile and benchmark Perl to find out where to focus your improvements
- Wrangle Perl code to make it more presentable and readable
- See how Perl keeps track of package variables and how you can use that for some powerful tricks
- Define subroutines on the fly and turn the tables on normal procedural programming.
- Modify and jury rig modules to fix code without editing the original source
- Let your users configure your programs without touching the code
- Learn how you can detect errors Perl doesn't report, and how to tell users about them
- Let your Perl program talk back to you by using Log4perl
- Store data for later use in another program, a later run of the same program, or to send them over a network
- Write programs as modules to get the benefit of Perl's distribution and testing tools
Appendices include "brian's Guide to Solving Any Perl Problem" to improve your troubleshooting skills, as well as suggested reading to continue your Perl education. Mastering Perl starts you on your path to becoming the person with the answers, and, failing that, the person who knows how to find the answers or discover the problem.
If you liked this post, buy me a beer. (Suggested: $3 a beer or $7.5 for a pitcher)


"Network programming"–the term had a distinct meaning once, but now it begs the question, "Is there another kind?" That's why Lincoln Stein's Network Programming with Perl is valuable. It shows how one of the world's top Perl authorities brings the language to bear on problems that require communication among computers, showing that you may not have to resort to Java as soon as you may have thought to meet a networking requirement. What's more, Stein doesn't assume you have a lot of Perl expertise. An intermediate-level familiarity with the language should enable you to understand the examples in the book and follow the commentary: the classic code-and-commentary structure.
Programming on the Web today can involve any of several technologies, but the Common Gateway Interface (CGI) has held its ground as the most mature method–and one of the most powerful ones–of providing dynamic web content. CGI is a generic interface for calling external programs to crunch numbers, query databases, generate customized graphics, or perform any other server-side task. There was a time when CGI was the only game in town for server-side programming; today, although we have ASP, PHP, Java servlets, and ColdFusion (among others), CGI continues to be the most ubiquitous server-side technology on the Web. CGI programs can be written in any programming language, but Perl is by far the most popular language for CGI. Initially developed over a decade ago for text processing, Perl has evolved into a powerful object-oriented language, while retaining its simplicity of use. CGI programmers appreciate Perl's text manipulation features and its CGI.pm module, which gives a well-integrated object-oriented interface to practically all CGI-related tasks. While other languages might be more elegant or more efficient, Perl is still considered the primary language for CGI. CGI Programming with Perl, Second Edition, offers a comprehensive explanation of using CGI to serve dynamic web content. Based on the best-selling CGI Programming on the World Wide Web, this edition has been completely rewritten to demonstrate current techniques available with the CGI.pm module and the latest versions of Perl. The book starts at the beginning, by explaining how CGI works, and then moves swiftly into the subtle details of developing CGI programs. Topics include:
In this smooth, carefully paced course, leading Perl trainers and a Windows NT practitioner teach you to program in the language that promises to emerge as the scripting language of choice on NT. With a foreword by Larry Wall, the creator of Perl, this book is the "official" guide for both formal (classroom) and informal learning. Based on the "llama book," Learning Perl on Win32 Systems features tips for PC users and new NT-specific examples. Perl for Win32 is a language for easily manipulating text, files, user and group profiles, performance and event logs, and registry entries, and a distribution is available on the Windows NT Resource Kit. Peer-to-peer technical support is now available on the perl.win32.users mailing list.
Perl 6 Essentials is a sneak-preview of Perl 6, the widely-anticipated rewrite of the Perl programming language. Still in development, the Perl 6 project is a community-based effort to keep Perl vibrant well into the 21st century. This book covers the development not only of Perl 6 syntax but also Parrot, the language-independent interpreter developed as part of the Perl 6 design strategy.
There have been dozens of books on programming algorithms, but never before has there been one that uses Perl. Whether you are an amateur programmer or know a wide range of algorithms in other languages, this book will teach you how to carry out traditional programming tasks in a high-powered, efficient, easy-to-maintain manner with Perl. Topics range in complexity from sorting and searching to statistical algorithms, numerical analysis, and encryption.
On the World Wide Web, people are accustomed to using graphical browsers such as Netscape Navigator or Mosaic as their only interface for visiting remote sites, accessing up-to-date documents, and filling out forms. But graphical browsers can be limiting: the very interactivity that makes them so intuitive to use also makes them clumsy for automating tasks. If you want to get the latest weather report every few hours, track a Federal Express package online, or use a dictionary server repeatedly throughout the day, using your browser to perform the same task over and over can become cumbersome. As with any repetitive task, these applications are best done by writing a script.
Learning Perl, better known as "the Llama book", starts the programmer on the way to mastery. Written by three prominent members of the Perl community who each have several years of experience teaching Perl around the world, this edition has been updated to account for all the recent changes to the language up to Perl 5.8. Perl is the language for people who want to get work done. It started as a tool for Unix system administrators who needed something powerful for small tasks. Since then, Perl has blossomed into a full-featured programming language used for web programming, database manipulation, XML processing, and system administration–on practically all platforms–while remaining the favorite tool for the small daily tasks it was designed for. You might start using Perl because you need it, but you'll continue to use it because you love it. Informed by their years of success at teaching Perl as consultants, the authors have re-engineered the Llama to better match the pace and scope appropriate for readers getting started with Perl, while retaining the detailed discussion, thorough examples, and eclectic wit for which the Llama is famous. The book includes new exercises and solutions so you can practice what you've learned while it's still fresh in your mind. Here are just some of the topics covered:









