Perl
Revision as of 00:21, 28 December 2006 by Woozle (talk | contribs) (→Tutorials: Perl Advent Calendar links)
computing: software: programming: Perl
Overview
Perl is a programming language widely used for web sites and Linux servers. It can be somewhat baffling to the eye – largely due to the frequent use of regular expressions – but due to its popularity it has been greatly refined and there is a large base of existing code available for reuse.
Articles
Usage
- Perl reference
- Perl built-in functions
- Perl regex
- official documentation
Design
Links
Reference
- official Perl web site
- Wikipedia
- CPAN: documentation links at the Comprehensive Perl Archive Network
Tutorials
- From the Perl Advent Calendar (2006):
- Good things come in small packages: the standard profiler and a new line-by-line profiler
- Peeking under the tree: an object-oriented directory-tree spider
- Are you naughty or nice?: a lighter version of the CGI module
- Made my sister eat a bug: the Perl debugger, and an alternative
- Putting Tinsel on the Tree: using GD and GD::Simple graphics-drawing libraries
Other
- PUGS, the Perl6 User's Golfing System: online simulation of Perl6
- Perl, the first postmodern computer language by Larry Wall
Libraries and Modules
- Collections:
- CPAN: search the Comprehensive Perl Archive Network
- Frequently-used libraries:
- Frameworks
- Catalyst: web applications
Notes
- Although single-quoted strings are widely cited as not interpreting anything, you do have to backslash certain characters if you want them represented literally:
- the single-quote itself ( \' )
- period ( \. )
- One of the reasons for PHP's popularity over Perl for developing web applications is that it prints errors to the web browser, rather than simply quitting abruptly (causing either an incomplete page or, more likely, a 5xx Server Error). Perl does not do this by default. It is, however, quite easy to make this happen, by including the following line of code near the beginning of a program:
use CGI::Carp qw(fatalsToBrowser);
- Although there is apparently no formal block-quote syntax (like /* */ in c/c++), a syntax used for documentation seems to accomplish the same thing. It's not presently known whether this is documented anywhere. "=anystring", at the beginning of a line, starts a block comment, and "=cut" at the beginning of a line ends the comment. This has not been tested thoroughly, but the exact string "cut" does seem to be necessary. Example:
regular_code_here(); ==something This part is commented, i.e. ignored by the parser. Anything up until the "cut" line. ==cut more_code();