One of the pleasant surprises and great features of Perl is that it comes with a comprehensive documentation set, perhaps more information than you'll ever want or need to know.
You'll find tons of webpages on your own computer providing you with detailed information on every aspect of the language. Once you learn how to access the information, you can use the documentation to continue your learning process indefinitely.
Online HTML Documentation
Your ActivePerl distribution includes a list of html files that can be accessed from your hard drive. Point your browser at C:\Perl\html\index.html and you'll be looking at the top level view of the HTML perl documentation. You will immediately realize that there is a great deal of information here. So much that it can be difficult to get started.
The going might be tough at first, but several of these pages are important to learn. Beginners can cut straight to the real goodies by going to these sections down the left hand menu. Under the Core Perl Docs section, look for
- perl - a general overview of Perl
- perlfaq - frequently asked questions
- perltoc - the table of contents to the documentation
- perlsyn - perl syntax, including if-else, for, while...
- perlfunc - core functions that are always in Perl
- perlop - a discussion of Perl operators
- perlre - regular expressions in Perl
Have a look at these sections to see how much of them you can fathom and bring your questions to class.
Perldoc - Command Line Documentation
Perl has been around longer than web browsers, so there is a documentation set for the plain old command line as well. This can be handy if you are working in a DOS or Unix session and you want a quick answer. This output is not as attractive as the HTML format, but sometimes it comes in handy. From your DOS prompt, type:
as a way to learn how to use it further.
I'm sure there are many Perl and CGI lists out there. I have joined two in particular which I can recommend. The first is just a daily frequently asked question about perl. It's just something that comes into your email once a day, and reading it will gradually increase your understanding. Send a blank email message to
to sign up.
The next list is a dialog among members, and there are some excellent Perl programmers that are willing to help you. You will learn a lot by following the questions here. To sign up, send a message to
with only the words "subscribe cgi-list" in the email body.
CPAN stands for the Comprehensive Perl Archive Network and it can be found at www.cpan.org. This place is the official authoritative resource for Perl modules. Perl modules are like extensions to the language and this is where people make their modules available to others. The modules as listed here are intended more for a Unix audience, but they can be used by Windows Perl developers as well.
Active State's website is also a tremendous Perl resource. The have complete documentation available, as well as their very useful PPM Repository. PPM stands for Perl Package Manager, and it gives Windows programmers convenient access to the modules available from Active State. This is very much like a CPAN site for Windows, and the installation of these modules is easier with PPM.
Another excellent source of Perl knowledge are the two "Camel" books:
- Programming Perl, O'Reilly, Wall, Christiansen and Schwartz
- Perl Cookbook, O'Reilly, Christiansen and Torkington
Programming Perl is a bit hard going for a beginner's book, but it is a definitive reference for Perl that will hold up over time. The Perl Cookbook is full of recipes showing you how to accomplish many, many basic tasks in Perl. These are both great books.
Perl.com, Perl.org and Perlmonks.org
These websites are devoted to all things Perl and are well worth knowing about.
In particular, perlmonks.org has an online tutorial that would make an excellent follow-on to this course.
These are sites I have bookmarked in my explorations as a Perl developer. The list is rather disjointed but worth looking into:
Please carry on to the lesson for the next session, when you are ready.
Email me your comments!