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
Interprocess communication (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
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
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.
When 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
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.
Added the DATE to the NAME section, indicating which sections have changed.
Mentioned 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 initial release.