perlfaq - frequently asked questions about Perl ($Date: 1997/04/24 22:46:06
This document is structured into the following sections:
- perlfaq: Structural overview of the FAQ.
- perlfaq1: General Questions About Perl
Very general, high-level information about Perl.
- perlfaq2: Obtaining and Learning about Perl
Where to find source and documentation to Perl, support and training, and
- perlfaq3: Programming Tools
Programmer tools and programming support.
- perlfaq4: Data Manipulation
Manipulating numbers, dates, strings, arrays, hashes, and miscellaneous
- perlfaq5: Files and Formats
I/O and the ``f'' issues: filehandles, flushing,
formats and footers.
- perlfaq6: Regexps
Pattern matching and regular expressions.
- perlfaq7: General Perl Language Issues
General Perl language issues that don't clearly fit into any of the other
- perlfaq8: System Interaction
(IPC), control over the user-interface (keyboard,
screen and pointing devices).
- perlfaq9: Networking
Networking, the Internet, and a few on the web.
This document is posted regularly to comp.lang.perl.announce and several other related newsgroups. It is available in a variety of formats from
CPAN in the /CPAN/doc/FAQs/FAQ/ directory, or on the web at http://www.perl.com/perl/faq/ .
You may mail corrections, additions, and suggestions to firstname.lastname@example.org . Mail sent to the old perlfaq alias will merely cause the
FAQ to be sent to you.
Your questions will probably go unread, unless they're suggestions of new questions to add to the
FAQ, in which case they should have gone to the email@example.com instead.
You should have read section 2 of this faq. There you would have learned
that comp.lang.perl.misc is the appropriate place to go for free advice. If
your question is really important and you require a prompt and correct
answer, you should hire a consultant.
I first began the Perl
FAQ in the late 80s,
I never realized it would have grown to over a hundred pages, nor that Perl would ever become so popular and widespread. This document could not have been written without the tremendous help provided by Larry Wall and the rest of the Perl Porters.
Copyright (c) 1997 Tom Christiansen and Nathan Torkington. All rights
Permission is granted to distribute this document, in part or in full, via
electronic means or printed copy providing that (1) that all credits and
copyright notices be retained, (2) that no charges beyond reproduction be
involved, and (3) that a reasonable attempt be made to use the most current
Furthermore, you may include this document in any distribution of the full Perl source or binaries, in its verbatim documentation, or on a complete dump of the
CPAN archive, providing that the three stipulations given above continue to be met.
Requests for all other distribution rights, including the incorporation in
part or in full of this text or its code into commercial products such as
but not limited to books, magazine articles, or CD-ROMs, must be made to firstname.lastname@example.org. Any
commercial use of any portion of this document without prior written
authorization by its authors will be subject to appropriate action.
This information is offered in good faith and in the hope that it may be of
use, but is not guaranteed to be correct, up to date, or suitable for any
particular purpose whatsoever. The authors accept no liability in respect
of this information or its use.
Style and whitespace changes from Chip, new question on reading one character at a time from a terminal using
POSIX from Tom.
Added http://www.oasis.leo.org/perl/ to the perlfaq2 manpage. Style fix to
the perlfaq3 manpage. Added floating point precision, fixed complex number arithmetic,
cross-references, caveat for Text::Wrap, alternative answer for initial
capitalizing, fixed incorrect regexp, added example of Tie::IxHash to the perlfaq4 manpage. Added example of passing and storing filehandles, added commify to the perlfaq5 manpage. Restored variable suicide, and added mass commenting to the perlfaq7 manpage. Added Net::Telnet, fixed backticks, added reader/writer pair to telnet
question, added FindBin, grouped module questions together in the perlfaq8 manpage. Expanded caveats for the simple
URL extractor, gave
LWP example, added
CGI security question, expanded on the email address answer in
the perlfaq9 manpage.
Added more info to the binary distribution section of the perlfaq2 manpage. Added Net::Telnet to the perlfaq6 manpage. Fixed typos in the perlfaq8 manpage. Added mail sending example to the perlfaq9 manpage. Added Merlyn's columns to
the perlfaq2 manpage.
DATE to the
NAME section, indicating which sections have changed.
SIGPIPE and the perlipc manpage in the forking open answer in
the perlfaq8 manpage.
Fixed description of a regular expression in the perlfaq4 manpage.
- /March/97 Version
Various typos fixed throughout.
Added new question on Perl
BNF on the perlfaq7 manpage.
- Initial Release: 11/March/97
This is the initial release of version 3 of the
FAQ; consequently there have been no changes since its