S<[ B<-i>[I<extension>] ]> S<[ B<-e> I<'command'> ]
[ B<--> ] [ I<programfile> ] [ I<argument> ]...>
-For ease of access, the Perl manual has been split up into several
-sections:
+If you're new to Perl, you should start with L<perlintro>, which is a
+general intro for beginners and provides some background to help you
+navigate the rest of Perl's extensive documentation.
+
+For ease of access, the Perl manual has been split up into several sections.
+
+=head2 Overview
perl Perl overview (this section)
- perldelta Perl changes since previous version
- perl5005delta Perl changes in version 5.005
- perl5004delta Perl changes in version 5.004
- perlfaq Perl frequently asked questions
+ perlintro Perl introduction for beginners
perltoc Perl documentation table of contents
- perldata Perl data structures
- perlsyn Perl syntax
- perlop Perl operators and precedence
- perlre Perl regular expressions
- perlrun Perl execution and options
- perlfunc Perl builtin functions
- perlopentut Perl open() tutorial
- perlvar Perl predefined variables
- perlsub Perl subroutines
- perlmod Perl modules: how they work
- perlmodlib Perl modules: how to write and use
- perlmodinstall Perl modules: how to install from CPAN
- perlform Perl formats
- perllocale Perl locale support
+=head2 Tutorials
perlreftut Perl references short introduction
- perlref Perl references, the rest of the story
perldsc Perl data structures intro
perllol Perl data structures: arrays of arrays
+
+ perlrequick Perl regular expressions quick start
+ perlretut Perl regular expressions tutorial
+
perlboot Perl OO tutorial for beginners
perltoot Perl OO tutorial, part 1
- perltootc Perl OO tutorial, part 2
+ perltooc Perl OO tutorial, part 2
+ perlbot Perl OO tricks and examples
+
+ perlstyle Perl style guide
+
+ perltrap Perl traps for the unwary
+ perldebtut Perl debugging tutorial
+
+ perlfaq Perl frequently asked questions
+ perlfaq1 General Questions About Perl
+ perlfaq2 Obtaining and Learning about Perl
+ perlfaq3 Programming Tools
+ perlfaq4 Data Manipulation
+ perlfaq5 Files and Formats
+ perlfaq6 Regexes
+ perlfaq7 Perl Language Issues
+ perlfaq8 System Interaction
+ perlfaq9 Networking
+
+=head2 Reference Manual
+
+ perlsyn Perl syntax
+ perldata Perl data structures
+ perlop Perl operators and precedence
+ perlsub Perl subroutines
+ perlfunc Perl built-in functions
+ perlopentut Perl open() tutorial
+ perlpacktut Perl pack() and unpack() tutorial
+ perlpod Perl plain old documentation
+ perlpodspec Perl plain old documentation format specification
+ perlrun Perl execution and options
+ perldiag Perl diagnostic messages
+ perllexwarn Perl warnings and their control
+ perldebug Perl debugging
+ perlvar Perl predefined variables
+ perlre Perl regular expressions, the rest of the story
+ perlref Perl references, the rest of the story
+ perlform Perl formats
perlobj Perl objects
perltie Perl objects hidden behind simple variables
- perlbot Perl OO tricks and examples
+ perldbmfilter Perl DBM filters
+
perlipc Perl interprocess communication
perlfork Perl fork() information
+ perlnumber Perl number semantics
+
perlthrtut Perl threads tutorial
- perldbmfilter Perl DBM Filters
+ perlothrtut Old Perl threads tutorial
- perlcompile Perl compiler suite intro
- perldebug Perl debugging
- perldiag Perl diagnostic messages
- perlsec Perl security
- perltrap Perl traps for the unwary
perlport Perl portability guide
- perlstyle Perl style guide
+ perllocale Perl locale support
+ perluniintro Perl Unicode introduction
+ perlunicode Perl Unicode support
+ perlebcdic Considerations for running Perl on EBCDIC platforms
- perlpod Perl plain old documentation
- perlbook Perl book information
+ perlsec Perl security
+
+ perlmod Perl modules: how they work
+ perlmodlib Perl modules: how to write and use
+ perlmodstyle Perl modules: how to write modules with style
+ perlmodinstall Perl modules: how to install from CPAN
+ perlnewmod Perl modules: preparing a new module for distribution
+
+ perlutil utilities packaged with the Perl distribution
+
+ perlcompile Perl compiler suite intro
+
+ perlfilter Perl source filters
+
+=head2 Internals and C Language Interface
perlembed Perl ways to embed perl in your C or C++ application
- perlapio Perl internal IO abstraction interface
- perlxs Perl XS application programming interface
+ perldebguts Perl debugging guts and tips
perlxstut Perl XS tutorial
+ perlxs Perl XS application programming interface
+ perlclib Internal replacements for standard C library functions
perlguts Perl internal functions for those doing extensions
perlcall Perl calling conventions from C
+
perlapi Perl API listing (autogenerated)
perlintern Perl internal functions (autogenerated)
+ perliol C API for Perl's implementation of IO in Layers
+ perlapio Perl internal IO abstraction interface
- perltodo Perl things to do
perlhack Perl hackers guide
+
+=head2 Miscellaneous
+
+ perlbook Perl book information
+ perltodo Perl things to do
+
perlhist Perl history records
+ perldelta Perl changes since previous version
+ perl572delta Perl changes in version 5.7.2
+ perl571delta Perl changes in version 5.7.1
+ perl570delta Perl changes in version 5.7.0
+ perl561delta Perl changes in version 5.6.1
+ perl56delta Perl changes in version 5.6
+ perl5005delta Perl changes in version 5.005
+ perl5004delta Perl changes in version 5.004
+
+=head2 Language-Specific
+
+ perlcn Perl for Simplified Chinese (in EUC-CN)
+ perljp Perl for Japanese (in EUC-JP)
+ perlko Perl for Korean (in EUC-KR)
+ perltw Perl for Traditional Chinese (in Big5)
+
+=head2 Platform-Specific
+
+ perlaix Perl notes for AIX
+ perlamiga Perl notes for AmigaOS
+ perlapollo Perl notes for Apollo DomainOS
+ perlbeos Perl notes for BeOS
+ perlbs2000 Perl notes for POSIX-BC BS2000
+ perlce Perl notes for WinCE
+ perlcygwin Perl notes for Cygwin
+ perldgux Perl notes for DG/UX
+ perldos Perl notes for DOS
+ perlepoc Perl notes for EPOC
+ perlhpux Perl notes for HP-UX
+ perlhurd Perl notes for Hurd
+ perlmachten Perl notes for Power MachTen
+ perlmacos Perl notes for Mac OS (Classic)
+ perlmint Perl notes for MiNT
+ perlmpeix Perl notes for MPE/iX
+ perlnetware Perl notes for NetWare
+ perlos2 Perl notes for OS/2
+ perlos390 Perl notes for OS/390
+ perlplan9 Perl notes for Plan 9
+ perlqnx Perl notes for QNX
+ perlsolaris Perl notes for Solaris
+ perltru64 Perl notes for Tru64
+ perluts Perl notes for UTS
+ perlvmesa Perl notes for VM/ESA
+ perlvms Perl notes for VMS
+ perlvos Perl notes for Stratus VOS
+ perlwin32 Perl notes for Windows
-(If you're intending to read these straight through for the first time,
-the suggested order will tend to reduce the number of forward references.)
By default, the manpages listed above are installed in the
F</usr/local/man/> directory.
Begun in 1993 (see L<perlhist>), Perl version 5 is nearly a complete
rewrite that provides the following additional benefits:
-=over
+=over 4
-=item * modularity and reusability using innumerable modules
+=item *
+
+modularity and reusability using innumerable modules
Described in L<perlmod>, L<perlmodlib>, and L<perlmodinstall>.
-=item * embeddable and extensible
+=item *
+
+embeddable and extensible
Described in L<perlembed>, L<perlxstut>, L<perlxs>, L<perlcall>,
L<perlguts>, and L<xsubpp>.
-=item * roll-your-own magic variables (including multiple simultaneous DBM implementations)
+=item *
+
+roll-your-own magic variables (including multiple simultaneous DBM implementations)
Described in L<perltie> and L<AnyDBM_File>.
-=item * subroutines can now be overridden, autoloaded, and prototyped
+=item *
+
+subroutines can now be overridden, autoloaded, and prototyped
Described in L<perlsub>.
-=item * arbitrarily nested data structures and anonymous functions
+=item *
+
+arbitrarily nested data structures and anonymous functions
Described in L<perlreftut>, L<perlref>, L<perldsc>, and L<perllol>.
-=item * object-oriented programming
+=item *
-Described in L<perlobj>, L<perltoot>, and L<perlbot>.
+object-oriented programming
-=item * compilability into C code or Perl bytecode
+Described in L<perlobj>, L<perlboot>, L<perltoot>, L<perltooc>,
+and L<perlbot>.
+
+=item *
+
+compilability into C code or Perl bytecode
Described in L<B> and L<B::Bytecode>.
-=item * support for light-weight processes (threads)
+=item *
+
+support for light-weight processes (threads)
Described in L<perlthrtut> and L<Thread>.
-=item * support for internationalization, localization, and Unicode
+=item *
+
+support for internationalization, localization, and Unicode
Described in L<perllocale> and L<utf8>.
-=item * lexical scoping
+=item *
+
+lexical scoping
Described in L<perlsub>.
-=item * regular expression enhancements
+=item *
+
+regular expression enhancements
Described in L<perlre>, with additional examples in L<perlop>.
-=item * enhanced debugger and interactive Perl environment, with integrated editor support
+=item *
+
+enhanced debugger and interactive Perl environment,
+with integrated editor support
+
+Described in L<perldebtut>, L<perldebug> and L<perldebguts>.
-Described in L<perldebug>.
+=item *
-=item * POSIX 1003.1 compliant library
+POSIX 1003.1 compliant library
Described in L<POSIX>.
=head1 AVAILABILITY
Perl is available for most operating systems, including virtually
-all Unix-like platforms.
-
-As of May 1999, the following platforms are able to build Perl
-from the standard source code distribution available at
-http://www.perl.com/CPAN/src/index.html
-
- AIX Linux SCO ODT/OSR
- A/UX MachTen Solaris
- BeOS MPE/iX SunOS
- BSD/OS NetBSD SVR4
- DG/UX NextSTEP Tru64 UNIX 3)
- DomainOS OpenBSD Ultrix
- DOS DJGPP 1) OpenSTEP UNICOS
- DYNIX/ptx OS/2 VMS
- FreeBSD OS390 2) VOS
- HP-UX PowerMAX Windows 3.1 1)
- Hurd QNX Windows 95 1) 4)
- IRIX Windows 98 1) 4)
- Windows NT 1) 4)
-
- 1) in DOS mode either the DOS or OS/2 ports can be used
- 2) formerly known as MVS
- 3) formerly known as Digital UNIX and before that DEC OSF/1
- 4) compilers: Borland, Cygwin, Mingw32 EGCS/GCC, VC++
-
-The following platforms have been known to build Perl from source,
-but we haven't been able to verify their status for the current release,
-either because the hardware/software platforms are rare or
-because we don't have an active champion on these platforms--or both.
-
- 3b1 FPS Plan 9
- AmigaOS GENIX PowerUX
- ConvexOS Greenhills RISC/os
- CX/UX ISC Stellar
- DC/OSx MachTen 68k SVR2
- DDE SMES MiNT TI1500
- DOS EMX MPC TitanOS
- Dynix NEWS-OS UNICOS/mk
- EP/IX Opus Unisys Dynix
- ESIX Unixware
-
-Support for the following platforms is planned for the next major
-Perl release.
-
- BS2000
- Netware
- Rhapsody
- VM/ESA
-
-The following platforms have their own source code distributions and
-binaries available via http://www.perl.com/CPAN/ports/index.html.
-
- Perl release
-
- AS/400 5.003
- MacOS 5.004
- Netware 5.003_07
- Tandem Guardian 5.004
-
-The following platforms have only binaries available via
-http://www.perl.com/CPAN/ports/index.html.
-
- Perl release
-
- Acorn RISCOS 5.005_02
- AOS 5.002
- LynxOS 5.004_02
+all Unix-like platforms. See L<perlport/"Supported Platforms">
+for a listing.
=head1 ENVIRONMENT
a2p awk to perl translator
s2p sed to perl translator
- http://www.perl.com/ the Perl Home Page
- http://www.perl.com/CPAN the Comprehensive Perl Archive
+ http://www.perl.com/ the Perl Home Page
+ http://www.cpan.org/ the Comprehensive Perl Archive
+ http://www.perl.org/ Perl Mongers (Perl user groups)
=head1 DIAGNOSTICS
-The B<-w> switch produces some lovely diagnostics.
+The C<use warnings> pragma (and the B<-w> switch) produces some
+lovely diagnostics.
See L<perldiag> for explanations of all Perl's diagnostics. The C<use
diagnostics> pragma automatically turns Perl's normally terse warnings
You may mail your bug reports (be sure to include full configuration
information as output by the myconfig program in the perl source
-tree, or by C<perl -V>) to perlbug@perl.com . If you've succeeded
-in compiling perl, the perlbug script in the utils/ subdirectory
+tree, or by C<perl -V>) to perlbug@perl.org . If you've succeeded
+in compiling perl, the B<perlbug> script in the F<utils/> subdirectory
can be used to help mail in a bug report.
Perl actually stands for Pathologically Eclectic Rubbish Lister, but