This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Document the use of Third Degree (sparsely).
[perl5.git] / pod / perl.pod
index 7e940ad..fd55b8d 100644 (file)
@@ -12,81 +12,115 @@ B<perl>    S<[ B<-sTuU> ]> S<[ B<-hv> ] [ B<-V>[:I<configvar>] ]>
     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:
+For ease of access, the Perl manual has been split up into several sections:
 
     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
     perltoc            Perl documentation table of contents
+    perlbook           Perl book information
 
-    perldata           Perl data structures
     perlsyn            Perl syntax
+    perldata           Perl data structures
     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
-    perlunicode                Perl unicode support
-    perllocale         Perl locale support
-
+    perlfunc           Perl builtin functions
     perlreftut         Perl references short introduction
-    perlref            Perl references, the rest of the story
     perldsc            Perl data structures intro
+    perlrequick                Perl regular expressions quick start
+    perlpod            Perl plain old documentation
+    perlstyle          Perl style guide
+    perltrap           Perl traps for the unwary
+
+    perlrun            Perl execution and options
+    perldiag           Perl diagnostic messages
+    perllexwarn                Perl warnings and their control
+    perldebtut         Perl debugging tutorial
+    perldebug          Perl debugging
+
+    perlvar            Perl predefined variables
     perllol            Perl data structures: arrays of arrays
+    perlopentut                Perl open() tutorial
+    perlretut          Perl regular expressions tutorial
+
+    perlre             Perl regular expressions, the rest of the story
+    perlref            Perl references, the rest of the story
+
+    perlform           Perl formats
+
     perlboot           Perl OO tutorial for beginners
     perltoot           Perl OO tutorial, part 1
     perltootc          Perl OO tutorial, part 2
     perlobj            Perl objects
-    perltie            Perl objects hidden behind simple variables
     perlbot            Perl OO tricks and examples
+    perltie            Perl objects hidden behind simple variables
+
     perlipc            Perl interprocess communication
     perlfork           Perl fork() information
+    perlnumber         Perl number semantics
     perlthrtut         Perl threads tutorial
-    perllexwarn                Perl warnings and their control
-    perlfilter         Perl source filters
-    perldbmfilter      Perl DBM filters
 
-    perlcompile                Perl compiler suite intro
-    perldebug          Perl debugging
-    perldiag           Perl diagnostic messages
-    perlnumber         Perl number semantics
-    perlsec            Perl security
-    perltrap           Perl traps for the unwary
     perlport           Perl portability guide
-    perlstyle          Perl style guide
+    perllocale         Perl locale support
+    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
+    perlmodinstall     Perl modules: how to install from CPAN
+    perlnewmod         Perl modules: preparing a new module for distribution
+
+    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
+
+    perlcompile                Perl compiler suite intro
 
     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
+    perlutil           utilities packaged with the Perl distribution
+    perlfilter         Perl source filters
+    perldbmfilter      Perl DBM filters
     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
+
     perlhist           Perl history records
+    perldelta          Perl changes since previous version
+    perl56delta                Perl changes in version 5.6
+    perl5005delta      Perl changes in version 5.005
+    perl5004delta      Perl changes in version 5.004
 
+    perlaix            Perl notes for AIX
     perlamiga          Perl notes for Amiga
+    perlbs2000         Perl notes for POSIX-BC BS2000
     perlcygwin         Perl notes for Cygwin
     perldos            Perl notes for DOS
+    perlepoc           Perl notes for EPOC
     perlhpux           Perl notes for HP-UX
+    perlmachten                Perl notes for Power MachTen
+    perlmpeix          Perl notes for MPE/iX
     perlos2            Perl notes for OS/2
     perlos390          Perl notes for OS/390
+    perlsolaris        Perl notes for Solaris
+    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,
@@ -160,58 +194,85 @@ But wait, there's more...
 Begun in 1993 (see L<perlhist>), Perl version 5 is nearly a complete
 rewrite that provides the following additional benefits:
 
-=over
+=over 4
+
+=item *
 
-=item * modularity and reusability using innumerable modules 
+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 *
+
+object-oriented programming
 
 Described in L<perlobj>, L<perltoot>, and L<perlbot>.
 
-=item * compilability into C code or Perl bytecode
+=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<perldebug>.
 
-=item * POSIX 1003.1 compliant library
+=item *
+
+POSIX 1003.1 compliant library
 
 Described in L<POSIX>.
 
@@ -222,73 +283,8 @@ Okay, that's I<definitely> enough hype.
 =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
 
@@ -317,7 +313,8 @@ Perl developers, please write to perl-thanks@perl.org .
 
 =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
@@ -355,8 +352,8 @@ affected by wraparound).
 
 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