Nicholas Clark's podulator. The win32 makefile
Jarkko Hietaniemi [Tue, 19 Aug 2003 12:04:22 +0000 (12:04 +0000)]
generation doesn't seem to be working yet.

p4raw-id: //depot/perl@20766

MANIFEST
Makefile.SH
pod.lst [new file with mode: 0644]
pod/Makefile.SH
pod/buildtoc [new file with mode: 0644]
pod/buildtoc.PL [deleted file]
pod/perl.pod
pod/perltoc.pod
vms/descrip_mms.template
win32/pod.mak

index 69399a0..6262105 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -19,11 +19,11 @@ Changes5.004                Differences between 5.003 and 5.004
 Changes5.005           Differences between 5.004 and 5.005
 Changes5.6             Differences between 5.005 and 5.6
 Changes5.8             Differences between 5.6.0 and 5.8.0 (and maint-5.6)
+config_h.SH            Produces config.h
 configpm               Produces lib/Config.pm
 Configure              Portability tool
 configure.com          Configure-equivalent for VMS
 configure.gnu          Crude emulation of GNU configure
-config_h.SH            Produces config.h
 cop.h                  Control operator header
 Copying                        The GNU General Public License
 Cross/config           Cross-compilation
@@ -61,9 +61,9 @@ embedvar.h            C namespace management
 epoc/config.sh         EPOC port config.sh template
 epoc/createpkg.pl      EPOC port generate PKG file
 epoc/epoc.c            EPOC port
+epoc/epoc_stubs.c      EPOC port
 epoc/epocish.c         EPOC port
 epoc/epocish.h         EPOC port
-epoc/epoc_stubs.c      EPOC port
 epoc/link.pl           EPOC port link a exe
 ext/attrs/attrs.pm             attrs extension Perl module
 ext/attrs/attrs.xs             attrs extension external subroutines
@@ -142,10 +142,10 @@ ext/Data/Dumper/t/overload.t      See if Data::Dumper works for overloaded data
 ext/Data/Dumper/t/pair.t       See if Data::Dumper pair separator works
 ext/Data/Dumper/Todo           Data pretty printer, futures
 ext/DB_File/Changes    Berkeley DB extension change log
-ext/DB_File/dbinfo     Berkeley DB database version checker
 ext/DB_File/DB_File.pm Berkeley DB extension Perl module
 ext/DB_File/DB_File.xs Berkeley DB extension external subroutines
 ext/DB_File/DB_File_BS Berkeley DB extension mkbootstrap fodder
+ext/DB_File/dbinfo     Berkeley DB database version checker
 ext/DB_File/hints/dynixptx.pl  Hint for DB_File for named architecture
 ext/DB_File/hints/sco.pl       Hint for DB_File for named architecture
 ext/DB_File/Makefile.PL        Berkeley DB extension makefile writer
@@ -192,7 +192,6 @@ ext/Digest/MD5/t/files.t    See if Digest::MD5 extension works
 ext/Digest/MD5/t/md5-aaa.t     See if Digest::MD5 extension works
 ext/Digest/MD5/t/utf8.t                See if Digest::MD5 extension works
 ext/Digest/MD5/typemap         Digest::MD5 extension
-ext/DynaLoader/dlutils.c       Dynamic loader utilities for dl_*.xs files
 ext/DynaLoader/dl_aix.xs       AIX implementation
 ext/DynaLoader/dl_beos.xs      BeOS implementation
 ext/DynaLoader/dl_dld.xs       GNU dld style implementation
@@ -206,6 +205,7 @@ ext/DynaLoader/dl_next.xs   NeXT implementation
 ext/DynaLoader/dl_none.xs      Stub implementation
 ext/DynaLoader/dl_vmesa.xs     VM/ESA implementation
 ext/DynaLoader/dl_vms.xs       VMS implementation
+ext/DynaLoader/dlutils.c       Dynamic loader utilities for dl_*.xs files
 ext/DynaLoader/DynaLoader_pm.PL        Dynamic Loader perl module
 ext/DynaLoader/hints/aix.pl    Hint for DynaLoader for named architecture
 ext/DynaLoader/hints/linux.pl  Hint for DynaLoader for named architecture
@@ -231,13 +231,13 @@ ext/Encode/EBCDIC/Makefile.PL     Encode extension
 ext/Encode/encengine.c         Encode extension
 ext/Encode/Encode.pm           Mother of all Encode extensions
 ext/Encode/Encode.xs           Encode extension
+ext/Encode/Encode/_PM.e2x      Skeleton file for enc2xs
+ext/Encode/Encode/_T.e2x       Skeleton file for enc2xs
 ext/Encode/Encode/Changes.e2x  Skeleton file for enc2xs
 ext/Encode/Encode/ConfigLocal_PM.e2x   Skeleton file for enc2xs
 ext/Encode/Encode/encode.h     Encode extension header file
 ext/Encode/Encode/Makefile_PL.e2x      Skeleton file for enc2xs
 ext/Encode/Encode/README.e2x   Skeleton file for enc2xs
-ext/Encode/Encode/_PM.e2x      Skeleton file for enc2xs
-ext/Encode/Encode/_T.e2x       Skeleton file for enc2xs
 ext/Encode/encoding.pm         Perl Pragmatic Module
 ext/Encode/JP/JP.pm            Encode extension
 ext/Encode/JP/Makefile.PL      Encode extension
@@ -271,14 +271,14 @@ ext/Encode/t/big5-eten.utf        test data
 ext/Encode/t/big5-hkscs.enc    test data
 ext/Encode/t/big5-hkscs.utf    test data
 ext/Encode/t/CJKT.t            test script
-ext/Encode/t/Encode.t          test script
-ext/Encode/t/Encoder.t         test script
-ext/Encode/t/encoding.t                test script
 ext/Encode/t/enc_data.t                test script for utf8 DATA
 ext/Encode/t/enc_eucjp.t       test script
 ext/Encode/t/enc_module.enc    test data for t/enc_module.t
 ext/Encode/t/enc_module.t      test script
 ext/Encode/t/enc_utf8.t                test script
+ext/Encode/t/Encode.t          test script
+ext/Encode/t/Encoder.t         test script
+ext/Encode/t/encoding.t                test script
 ext/Encode/t/fallback.t                test script
 ext/Encode/t/gb2312.enc                test data
 ext/Encode/t/gb2312.utf                test data
@@ -973,10 +973,10 @@ lib/bignum/t/bigint.t             See if bignum works
 lib/bignum/t/bignum.t          See if bignum works
 lib/bignum/t/bigrat.t          See if bignum works
 lib/bignum/t/biinfnan.t                See if bignum works
-lib/bignum/t/bninfnan.t                See if bignum works
 lib/bignum/t/bn_lite.t         See if bignum works
-lib/bignum/t/brinfnan.t                See if bignum works
+lib/bignum/t/bninfnan.t                See if bignum works
 lib/bignum/t/br_lite.t         See if bignum works
+lib/bignum/t/brinfnan.t                See if bignum works
 lib/bignum/t/infnan.inc                See if bignum works
 lib/bignum/t/option_a.t                See if bignum works
 lib/bignum/t/option_l.t                See if bignum works
@@ -1131,9 +1131,9 @@ lib/ExtUtils/t/Constant.t See if ExtUtils::Constant works
 lib/ExtUtils/t/Embed.t         See if ExtUtils::Embed and embedding works
 lib/ExtUtils/t/hints.t         See if hint files are honored.
 lib/ExtUtils/t/INST.t          Check MakeMaker INST_* macros
+lib/ExtUtils/t/INST_PREFIX.t   See if MakeMaker can apply PREFIXs
 lib/ExtUtils/t/Install.t       See if ExtUtils::Install works
 lib/ExtUtils/t/Installed.t     See if ExtUtils::Installed works
-lib/ExtUtils/t/INST_PREFIX.t   See if MakeMaker can apply PREFIXs
 lib/ExtUtils/t/Liblist.t       See if ExtUtils::Liblist works
 lib/ExtUtils/t/Manifest.t      See if ExtUtils::Manifest works
 lib/ExtUtils/t/Mkbootstrap.t   See if ExtUtils::Mkbootstrap works
@@ -1320,16 +1320,16 @@ lib/Math/BigInt/t/constant.t    Test Math::BigInt/BigFloat under :constant
 lib/Math/BigInt/t/downgrade.t  Test if use Math::BigInt(); under downgrade works
 lib/Math/BigInt/t/inf_nan.t    Special tests for inf and NaN handling
 lib/Math/BigInt/t/isa.t                Test for Math::BigInt inheritance
+lib/Math/BigInt/t/mbi_rand.t   Test Math::BigInt randomly
 lib/Math/BigInt/t/mbimbf.inc   Actual BigInt/BigFloat accuracy, precision and fallback, round_mode tests
 lib/Math/BigInt/t/mbimbf.t     BigInt/BigFloat accuracy, precision and fallback, round_mode
-lib/Math/BigInt/t/mbi_rand.t   Test Math::BigInt randomly
-lib/Math/BigInt/t/require.t    Test if require Math::BigInt works
 lib/Math/BigInt/t/req_mbf0.t   test: require Math::BigFloat; ->bzero();
 lib/Math/BigInt/t/req_mbf1.t   test: require Math::BigFloat; ->bone();
 lib/Math/BigInt/t/req_mbfa.t   test: require Math::BigFloat; ->bnan();
 lib/Math/BigInt/t/req_mbfi.t   test: require Math::BigFloat; ->binf();
 lib/Math/BigInt/t/req_mbfn.t   test: require Math::BigFloat; ->new();
 lib/Math/BigInt/t/req_mbfw.t   require Math::BigFloat; import ( with => );
+lib/Math/BigInt/t/require.t    Test if require Math::BigInt works
 lib/Math/BigInt/t/sub_mbf.t    Empty subclass test of BigFloat
 lib/Math/BigInt/t/sub_mbi.t    Empty subclass test of BigInt
 lib/Math/BigInt/t/sub_mif.t    Test A & P with subclasses using mbimbf.inc
@@ -1346,13 +1346,13 @@ lib/Math/BigInt/t/use_mbfw.t    use BigFloat w/ with and lib at the same time
 lib/Math/BigInt/t/with_sub.t   Test use Math::BigFloat with => package
 lib/Math/BigInt/Trace.pm       bignum tracing
 lib/Math/BigRat.pm             Math::BigRat
+lib/Math/BigRat/t/big_ap.t             Math::BigRat test
 lib/Math/BigRat/t/bigfltpm.inc         Math::BigRat test
 lib/Math/BigRat/t/bigfltrt.t           Math::BigRat test
 lib/Math/BigRat/t/bigrat.t             Math::BigRat test
 lib/Math/BigRat/t/bigratpm.inc         Math::BigRat test
 lib/Math/BigRat/t/bigratpm.t           Math::BigRat test
 lib/Math/BigRat/t/bigratup.t   test under $Math::BigInt::upgrade
-lib/Math/BigRat/t/big_ap.t             Math::BigRat test
 lib/Math/BigRat/t/requirer.t   see if require works properly
 lib/Math/BigRat/t/trap.t       see if trap_nan and trap_inf work
 lib/Math/Complex.pm            A Complex package
@@ -1381,11 +1381,11 @@ lib/Memoize/t/normalize.t       Memoize 'normalizer' feature tests
 lib/Memoize/t/prototype.t      Memoize prototyped function handling tests
 lib/Memoize/t/speed.t          "Makes functions faster" advertisement test
 lib/Memoize/t/tie.t            Memoize tied file test
-lib/Memoize/t/tiefeatures.t    Memoize FAULT / MERGE / HASH options test
 lib/Memoize/t/tie_gdbm.t       Memoize GDBM interface test
 lib/Memoize/t/tie_ndbm.t       Memoize NDBM interface test
 lib/Memoize/t/tie_sdbm.t       Memoize SDBM interface test
 lib/Memoize/t/tie_storable.t   Memoize Storable interface test
+lib/Memoize/t/tiefeatures.t    Memoize FAULT / MERGE / HASH options test
 lib/Memoize/t/unmemoize.t      Memoize 'unmemoize' function test
 lib/Memoize/TODO               Memoize to-do list
 lib/Net/ChangeLog.libnet       libnet
@@ -1620,8 +1620,8 @@ lib/Test/Simple/t/strays.t        Test::Builder stray newline checks
 lib/Test/Simple/t/threads.t    Test::Builder thread-safe checks
 lib/Test/Simple/t/todo.t       Test::More test, TODO tests
 lib/Test/Simple/t/undef.t      Test::More test, undefs don't cause warnings
-lib/Test/Simple/t/useing.t     Test::More test, compile test
 lib/Test/Simple/t/use_ok.t     Test::More test, use_ok()
+lib/Test/Simple/t/useing.t     Test::More test, compile test
 lib/Test/t/fail.t              See if Test works
 lib/Test/t/mix.t               See if Test works
 lib/Test/t/onfail.t            See if Test works
@@ -1693,8 +1693,8 @@ lib/Tie/File/t/25_gen_nocache.t   Like 01_gen.t, but with caching disabled
 lib/Tie/File/t/26_twrite.t     Unit tests for Tie::File::_twrite
 lib/Tie/File/t/27_iwrite.t     Unit tests for Tie::File::_iwrite
 lib/Tie/File/t/28_mtwrite.t    Unit tests for Tie::File::_mtwrite
-lib/Tie/File/t/29a_upcopy.t    Unit tests for Tie::File::_upcopy
 lib/Tie/File/t/29_downcopy.t   Unit tests for Tie::File::_downcopy
+lib/Tie/File/t/29a_upcopy.t    Unit tests for Tie::File::_upcopy
 lib/Tie/File/t/30_defer.t      deferred writing feature tests for Tie::File
 lib/Tie/File/t/31_autodefer.t  'autodefer' feature tests for Tie::File
 lib/Tie/File/t/32_defer_misc.t Like 17_misc_meth.t, but with deferred writing
@@ -1750,6 +1750,9 @@ lib/unicore/Index.txt             Unicode character database
 lib/unicore/Jamo.txt           Unicode character database
 lib/unicore/JamoShort.pl       Unicode character database
 lib/unicore/Lbrk.pl            Unicode character database
+lib/unicore/lib/_CanonDC.pl    Unicode character database
+lib/unicore/lib/_CaseIgn.pl    Unicode character database
+lib/unicore/lib/_CombAbo.pl    Unicode character database
 lib/unicore/lib/Alnum.pl       Unicode character database
 lib/unicore/lib/Alpha.pl       Unicode character database
 lib/unicore/lib/Alphabet.pl    Unicode character database
@@ -1973,6 +1976,7 @@ lib/unicore/lib/Kannada.pl        Unicode character database
 lib/unicore/lib/Katakana.pl    Unicode character database
 lib/unicore/lib/Khmer.pl       Unicode character database
 lib/unicore/lib/L.pl           Unicode character database
+lib/unicore/lib/L_.pl          Unicode character database
 lib/unicore/lib/Lao.pl         Unicode character database
 lib/unicore/lib/Latin.pl       Unicode character database
 lib/unicore/lib/Limbu.pl       Unicode character database
@@ -1985,7 +1989,6 @@ lib/unicore/lib/Lower.pl  Unicode character database
 lib/unicore/lib/Lowercas.pl    Unicode character database
 lib/unicore/lib/Lt.pl          Unicode character database
 lib/unicore/lib/Lu.pl          Unicode character database
-lib/unicore/lib/L_.pl          Unicode character database
 lib/unicore/lib/M.pl           Unicode character database
 lib/unicore/lib/Malayala.pl    Unicode character database
 lib/unicore/lib/Math.pl                Unicode character database
@@ -2057,9 +2060,6 @@ lib/unicore/lib/Z.pl              Unicode character database
 lib/unicore/lib/Zl.pl          Unicode character database
 lib/unicore/lib/Zp.pl          Unicode character database
 lib/unicore/lib/Zs.pl          Unicode character database
-lib/unicore/lib/_CanonDC.pl    Unicode character database
-lib/unicore/lib/_CaseIgn.pl    Unicode character database
-lib/unicore/lib/_CombAbo.pl    Unicode character database
 lib/unicore/LineBreak.txt      Unicode character database
 lib/unicore/Makefile           Unicode character database
 lib/unicore/mktables           Unicode character database generator
@@ -2195,8 +2195,8 @@ opcode.pl                 Opcode header generator
 opnames.h                      Automatically generated opcode header
 os2/Changes                    Changelog for OS/2 port
 os2/diff.configure             Patches to Configure
-os2/dlfcn.h                    Addon for dl_open
 os2/dl_os2.c                   Addon for dl_open
+os2/dlfcn.h                    Addon for dl_open
 os2/Makefile.SHs               Shared library generation for OS/2
 os2/os2.c                      Additional code for OS/2
 os2/os2.sym                    Additional symbols to export
@@ -2242,10 +2242,10 @@ os2/OS2/REXX/t/rx_tieydb.t      DLL access module
 os2/OS2/REXX/t/rx_varset.t     DLL access module
 os2/OS2/REXX/t/rx_vrexx.t      DLL access module
 os2/OS2/typemap                        Common typemap for OS/2 types
+os2/os2_base.t                 Additional tests for builtin methods
 os2/os2add.sym                 Overriding symbols to export
 os2/os2ish.h                   Header for OS/2
 os2/os2thread.h                        pthread-like typedefs
-os2/os2_base.t                 Additional tests for builtin methods
 os2/perl2cmd.pl                        Corrects installed binaries under OS/2
 os2/perlrexx.c                 Support perl interpreter embedded in REXX
 os2/perlrexx.cmd               Test perl interpreter embedded in REXX
@@ -2268,8 +2268,8 @@ perly.c                           A byacc'ed perly.y
 perly.fixer                    A program to remove yacc stack limitations
 perly.h                                The header file for perly.c
 perly.y                                Yacc grammar for perl
-perlyline.pl                   Perl code to fix #line directives and gcc warnings in perly.c
 perly_c.diff                   Fixup perly.c to allow recursion
+perlyline.pl                   Perl code to fix #line directives and gcc warnings in perly.c
 plan9/aperl                    Shell to make Perl error messages Acme-friendly
 plan9/arpa/inet.h              Plan9 port: replacement C header file
 plan9/buildinfo                        Plan9 port: configuration information
@@ -2285,104 +2285,103 @@ plan9/plan9.c                 Plan9 port: Plan9-specific C routines
 plan9/plan9ish.h               Plan9 port: Plan9-specific C header file
 plan9/setup.rc                 Plan9 port: script for easy build+install
 plan9/versnum                  Plan9 port: script to print version number
-pod/buildtoc.PL                        generate buildtoc which generates perltoc.pod
 pod/checkpods.PL               Tool to check for common errors in pods
 pod/Makefile.SH                        generate Makefile which makes pods into something else
-pod/perl.pod                   Top level perl documentation
-pod/perl5004delta.pod          Changes from 5.003 to 5.004
-pod/perl5005delta.pod          Changes from 5.004 to 5.005
-pod/perl561delta.pod           Changes from 5.6.0 to 5.6.1
-pod/perl56delta.pod            Changes from 5.005 to 5.6
-pod/perl570delta.pod           Changes from 5.6 to 5.7.0
-pod/perl571delta.pod           Changes from 5.7.0 to 5.7.1
-pod/perl572delta.pod           Changes from 5.7.1 to 5.7.2
-pod/perl573delta.pod           Changes from 5.7.2 to 5.7.3
-pod/perl58delta.pod            Changes from 5.6 to 5.8.0
-pod/perlapi.pod                        Perl API documentation (autogenerated)
-pod/perlapio.pod               PerlIO IO API info
-pod/perlartistic.pod           Perl Artistic License (pod) 
+pod/perl.pod                   Perl overview (this section)
+pod/perl5004delta.pod          Perl changes in version 5.004
+pod/perl5005delta.pod          Perl changes in version 5.005
+pod/perl561delta.pod           Perl changes in version 5.6.1
+pod/perl56delta.pod            Perl changes in version 5.6
+pod/perl570delta.pod           Perl changes in version 5.7.0
+pod/perl571delta.pod           Perl changes in version 5.7.1
+pod/perl572delta.pod           Perl changes in version 5.7.2
+pod/perl573delta.pod           Perl changes in version 5.7.3
+pod/perl58delta.pod            Perl changes in version 5.8.0
+pod/perlapi.pod                        Perl API listing (autogenerated)
+pod/perlapio.pod               Perl internal IO abstraction interface
+pod/perlartistic.pod           Perl Artistic License
 pod/perlbook.pod               Perl book information
-pod/perlboot.pod               Beginner's Object-oriented Tutorial
-pod/perlbot.pod                        Object-oriented Bag o' Tricks
-pod/perlcall.pod               Callback info
+pod/perlboot.pod               Perl OO tutorial for beginners
+pod/perlbot.pod                        Perl OO tricks and examples
+pod/perlcall.pod               Perl calling conventions from C
 pod/perlcheat.pod              Perl cheat sheet
 pod/perlclib.pod               Internal replacements for standard C library functions
-pod/perlcompile.pod            Info on using the Compiler suite
-pod/perldata.pod               Data structure info
-pod/perldbmfilter.pod          Info about DBM Filters
-pod/perldebguts.pod            Debugger guts info
+pod/perlcompile.pod            Perl compiler suite intro
+pod/perldata.pod               Perl data structures
+pod/perldbmfilter.pod          Perl DBM filters
+pod/perldebguts.pod            Perl debugging guts and tips
 pod/perldebtut.pod             Perl debugging tutorial
-pod/perldebug.pod              Debugger info
-pod/perldelta.pod              Changes since last version
-pod/perldiag.pod               Diagnostic info
-pod/perldoc.pod                        docs for utils/perldoc
-pod/perldsc.pod                        Data Structures Cookbook
+pod/perldebug.pod              Perl debugging
+pod/perldelta.pod              Perl changes since previous version
+pod/perldiag.pod               Perl diagnostic messages
+pod/perldoc.pod                        Look up Perl documentation in Pod format
+pod/perldsc.pod                        Perl data structures intro
 pod/perlebcdic.pod             Considerations for running Perl on EBCDIC platforms
-pod/perlembed.pod              Embedding info
-pod/perlfaq.pod                        Frequently Asked Questions, Top Level
-pod/perlfaq1.pod               Frequently Asked Questions, Part 1
-pod/perlfaq2.pod               Frequently Asked Questions, Part 2
-pod/perlfaq3.pod               Frequently Asked Questions, Part 3
-pod/perlfaq4.pod               Frequently Asked Questions, Part 4
-pod/perlfaq5.pod               Frequently Asked Questions, Part 5
-pod/perlfaq6.pod               Frequently Asked Questions, Part 6
-pod/perlfaq7.pod               Frequently Asked Questions, Part 7
-pod/perlfaq8.pod               Frequently Asked Questions, Part 8
-pod/perlfaq9.pod               Frequently Asked Questions, Part 9
-pod/perlfilter.pod             Source filters info
-pod/perlfork.pod               Info about fork()
-pod/perlform.pod               Format info
-pod/perlfunc.pod               Function info
-pod/perlgpl.pod                        GNU General Public License (pod) 
-pod/perlguts.pod               Internals info
+pod/perlembed.pod              Perl ways to embed perl in your C or C++ application
+pod/perlfaq.pod                        Perl frequently asked questions
+pod/perlfaq1.pod               General Questions About Perl
+pod/perlfaq2.pod               Obtaining and Learning about Perl
+pod/perlfaq3.pod               Programming Tools
+pod/perlfaq4.pod               Data Manipulation
+pod/perlfaq5.pod               Files and Formats
+pod/perlfaq6.pod               Regexes
+pod/perlfaq7.pod               Perl Language Issues
+pod/perlfaq8.pod               System Interaction
+pod/perlfaq9.pod               Networking
+pod/perlfilter.pod             Perl source filters
+pod/perlfork.pod               Perl fork() information
+pod/perlform.pod               Perl formats
+pod/perlfunc.pod               Perl built-in functions
+pod/perlgpl.pod                        GNU General Public License
+pod/perlguts.pod               Perl internal functions for those doing extensions
 pod/perlhack.pod               Perl hackers guide
-pod/perlhist.pod               Perl history info
-pod/perlintern.pod             Perl internal function docs (autogenerated)
+pod/perlhist.pod               Perl history records
+pod/perlintern.pod             Perl internal functions (autogenerated)
 pod/perlintro.pod              Perl introduction for beginners
-pod/perliol.pod                        Internals of PerlIO with layers.
-pod/perlipc.pod                        IPC info
-pod/perllexwarn.pod            Lexical Warnings info
-pod/perllocale.pod             Locale support info
-pod/perllol.pod                        How to use lists of lists
-pod/perlmod.pod                        Module mechanism info
-pod/perlmodinstall.pod         Installing CPAN Modules
+pod/perliol.pod                        C API for Perl's implementation of IO in Layers
+pod/perlipc.pod                        Perl interprocess communication
+pod/perllexwarn.pod            Perl warnings and their control
+pod/perllocale.pod             Perl locale support
+pod/perllol.pod                        Perl data structures: arrays of arrays
+pod/perlmod.pod                        Perl modules: how they work
+pod/perlmodinstall.pod         Perl modules: how to install from CPAN
 pod/perlmodlib.PL              Generate pod/perlmodlib.pod
-pod/perlmodlib.pod             Module policy info
-pod/perlmodstyle.pod           Perl module style guide
-pod/perlnewmod.pod             Preparing a new module for distribution
-pod/perlnumber.pod             Semantics of numbers and numeric operations
-pod/perlobj.pod                        Object info
-pod/perlop.pod                 Operator info
-pod/perlopentut.pod            open() tutorial
-pod/perlothrtut.pod            Threads old tutorial
-pod/perlpacktut.pod            pack() tutorial
-pod/perlpod.pod                        Pod info
-pod/perlpodspec.pod            Pod specification
-pod/perlport.pod               Portability guide
-pod/perlre.pod                 Regular expression info
-pod/perlref.pod                        References info
-pod/perlreftut.pod             Mark's references tutorial
-pod/perlrequick.pod            Quick start guide for Perl regular expressions
-pod/perlreref.pod              Perl regular expressions reference
-pod/perlretut.pod              Tutorial for Perl regular expressions
-pod/perlrun.pod                        Execution info
-pod/perlsec.pod                        Security info
-pod/perlstyle.pod              Style info
-pod/perlsub.pod                        Subroutine info
-pod/perlsyn.pod                        Syntax info
-pod/perlthrtut.pod             Threads tutorial
-pod/perltie.pod                        Tieing an object class into a simple variable
-pod/perltoc.pod                        Table of Contents info
-pod/perltodo.pod               Todo list explained
-pod/perltooc.pod               Tom's object-oriented tutorial (more on class data)
-pod/perltoot.pod               Tom's object-oriented tutorial
-pod/perltrap.pod               Trap info
-pod/perlunicode.pod            Unicode support info
-pod/perluniintro.pod           Unicode introduction
-pod/perlutil.pod               Accompanying utilities explained
-pod/perlvar.pod                        Variable info
-pod/perlxs.pod                 XS api info
-pod/perlxstut.pod              XS tutorial
+pod/perlmodlib.pod             Perl modules: how to write and use
+pod/perlmodstyle.pod           Perl modules: how to write modules with style
+pod/perlnewmod.pod             Perl modules: preparing a new module for distribution
+pod/perlnumber.pod             Perl number semantics
+pod/perlobj.pod                        Perl objects
+pod/perlop.pod                 Perl operators and precedence
+pod/perlopentut.pod            Perl open() tutorial
+pod/perlothrtut.pod            Old Perl threads tutorial
+pod/perlpacktut.pod            Perl pack() and unpack() tutorial
+pod/perlpod.pod                        Perl plain old documentation
+pod/perlpodspec.pod            Perl plain old documentation format specification
+pod/perlport.pod               Perl portability guide
+pod/perlre.pod                 Perl regular expressions, the rest of the story
+pod/perlref.pod                        Perl references, the rest of the story
+pod/perlreftut.pod             Perl references short introduction
+pod/perlrequick.pod            Perl regular expressions quick start
+pod/perlreref.pod              Perl regular expressions quick reference
+pod/perlretut.pod              Perl regular expressions tutorial
+pod/perlrun.pod                        Perl execution and options
+pod/perlsec.pod                        Perl security
+pod/perlstyle.pod              Perl style guide
+pod/perlsub.pod                        Perl subroutines
+pod/perlsyn.pod                        Perl syntax
+pod/perlthrtut.pod             Perl threads tutorial
+pod/perltie.pod                        Perl objects hidden behind simple variables
+pod/perltoc.pod                        Perl documentation table of contents
+pod/perltodo.pod               Perl things to do
+pod/perltooc.pod               Perl OO tutorial, part 2
+pod/perltoot.pod               Perl OO tutorial, part 1
+pod/perltrap.pod               Perl traps for the unwary
+pod/perlunicode.pod            Perl Unicode support
+pod/perluniintro.pod           Perl Unicode introduction
+pod/perlutil.pod               utilities packaged with the Perl distribution
+pod/perlvar.pod                        Perl predefined variables
+pod/perlxs.pod                 Perl XS application programming interface
+pod/perlxstut.pod              Perl XS tutorial
 pod/pod2html.PL                        Precursor for translator to turn pod into HTML
 pod/pod2latex.PL               Precursor for translator to turn pod into LaTeX
 pod/pod2man.PL                 Precursor for translator to turn pod into manpage
@@ -2411,8 +2410,8 @@ Porting/fixvars           Find undeclared variables with C compiler and fix em
 Porting/genlog         Generate formatted changelogs by querying p4d
 Porting/Glossary       Glossary of config.sh variables
 Porting/Maintainers    Program to pretty print info in Maintainers.pl
-Porting/Maintainers.pm Library to pretty print info in Maintainers.pl
 Porting/Maintainers.pl Information about maintainers
+Porting/Maintainers.pm Library to pretty print info in Maintainers.pl
 Porting/makemeta       Create the top-level META.yml
 Porting/makerel                Release making utility
 Porting/manicheck      Check against MANIFEST
@@ -2438,43 +2437,43 @@ proto.h                         Prototypes
 qnx/ar                         QNX implementation of "ar" utility
 qnx/cpp                                QNX implementation of preprocessor filter
 README                 The Instructions
-README.aix             Notes about AIX port
-README.amiga           Notes about AmigaOS port
-README.apollo          Notes about Apollo DomainOS port
-README.beos            Notes about BeOS port
-README.bs2000          Notes about BS2000 POSIX port
-README.ce              Notes about WinCE port
-README.cn              About using Perl and Simplified Chinese
-README.cygwin          Notes about Cygwin port
-README.dgux            Notes about DG/UX port
-README.dos             Notes about DOS/DJGPP port
-README.epoc            Notes about EPOC port
-README.freebsd         Notes about FreeBSD
-README.hpux            Notes about HP-UX port
-README.hurd            Notes about GNU/Hurd port
-README.irix            Notes about Irix port
-README.jp              About using Perl and Japanese
-README.ko              About using Perl and Korean
-README.machten         Notes about Power MachTen port
-README.macos           Notes about Mac OS (Classic)
-README.macosx          Notes about Mac OS X
+README.aix                     Perl notes for AIX
+README.amiga                   Perl notes for AmigaOS
+README.apollo                  Perl notes for Apollo DomainOS
+README.beos                    Perl notes for BeOS
+README.bs2000                  Perl notes for POSIX-BC BS2000
+README.ce                      Perl notes for WinCE
+README.cn                      Perl for Simplified Chinese (in EUC-CN)
+README.cygwin                  Perl notes for Cygwin
+README.dgux                    Perl notes for DG/UX
+README.dos                     Perl notes for DOS
+README.epoc                    Perl notes for EPOC
+README.freebsd                 Perl notes for FreeBSD
+README.hpux                    Perl notes for HP-UX
+README.hurd                    Perl notes for Hurd
+README.irix                    Perl notes for Irix
+README.jp                      Perl for Japanese (in EUC-JP)
+README.ko                      Perl for Korean (in EUC-KR)
+README.machten                 Perl notes for Power MachTen
+README.macos                   Perl notes for Mac OS (Classic)
+README.macosx                  Perl notes for Mac OS X
 README.micro           Notes about microperl
-README.mint            Notes about Atari MiNT port
-README.mpeix           Notes about MPE/iX port
-README.netware         Notes about NetWare port
-README.os2             Notes about OS/2 port
-README.os390           Notes about OS/390 (nee MVS) port
-README.os400           Notes about OS/400 port
-README.plan9           Notes about Plan9 port
-README.qnx             Notes about QNX port
-README.solaris         Notes about Solaris port
-README.tru64           Notes about Tru64
-README.tw              About using Perl and Traditional Chinese
-README.uts             Notes about UTS
-README.vmesa           Notes about VM/ESA port
-README.vms             Notes about installing the VMS port
-README.vos             Notes about Stratus VOS port
-README.win32           Notes about Win32 port
+README.mint                    Perl notes for MiNT
+README.mpeix                   Perl notes for MPE/iX
+README.netware                 Perl notes for NetWare
+README.os2                     Perl notes for OS/2
+README.os390                   Perl notes for OS/390
+README.os400                   Perl notes for OS/400
+README.plan9                   Perl notes for Plan 9
+README.qnx                     Perl notes for QNX
+README.solaris                 Perl notes for Solaris
+README.tru64                   Perl notes for Tru64
+README.tw                      Perl for Traditional Chinese (in Big5)
+README.uts                     Perl notes for UTS
+README.vmesa                   Perl notes for VM/ESA
+README.vms                     Perl notes for VMS
+README.vos                     Perl notes for Stratus VOS
+README.win32                   Perl notes for Windows
 README.Y2K             Notes about Year 2000 concerns
 reentr.c                       Reentrant interfaces
 reentr.h                       Reentrant interfaces
@@ -2598,9 +2597,9 @@ t/lib/sample-tests/shbang_misparse        Test data for Test::Harness
 t/lib/sample-tests/simple              Test data for Test::Harness
 t/lib/sample-tests/simple_fail         Test data for Test::Harness
 t/lib/sample-tests/skip                        Test data for Test::Harness
+t/lib/sample-tests/skip_nomsg          Test data for Test::Harness
 t/lib/sample-tests/skipall             Test data for Test::Harness
 t/lib/sample-tests/skipall_nomsg       Test data for Test::Harness
-t/lib/sample-tests/skip_nomsg          Test data for Test::Harness
 t/lib/sample-tests/switches            Test data for Test::Harness
 t/lib/sample-tests/taint               Test data for Test::Harness
 t/lib/sample-tests/todo                        Test data for Test::Harness
@@ -2745,6 +2744,7 @@ t/op/qq.t                 See if qq works
 t/op/quotemeta.t               See if quotemeta works
 t/op/rand.t                    See if rand works
 t/op/range.t                   See if .. works
+t/op/re_tests                  Regular expressions for regexp.t
 t/op/read.t                    See if read() works
 t/op/readdir.t                 See if readdir() works
 t/op/readline.t                        See if <> / readline / rcatline work
@@ -2755,7 +2755,6 @@ t/op/regexp_noamp.t               See if regular expressions work with optimizations
 t/op/regmesg.t                 See if one can get regular expression errors
 t/op/repeat.t                  See if x operator works
 t/op/reverse.t                 See if reverse operator works
-t/op/re_tests                  Regular expressions for regexp.t
 t/op/runlevel.t                        See if die() works from perl_call_*()
 t/op/sleep.t                   See if sleep works
 t/op/sort.t                    See if sort works
@@ -2766,11 +2765,11 @@ t/op/srand.t                    See if srand works
 t/op/stash.t                   See if %:: stashes work
 t/op/stat.t                    See if stat works
 t/op/study.t                   See if study works
+t/op/sub_lval.t                        See if lvalue subroutines work
 t/op/subst.t                   See if substitution works
-t/op/substr.t                  See if substr works
 t/op/subst_amp.t               See if $&-related substitution works
 t/op/subst_wamp.t              See if substitution works with $& present
-t/op/sub_lval.t                        See if lvalue subroutines work
+t/op/substr.t                  See if substr works
 t/op/sysio.t                   See if sysread and syswrite work
 t/op/taint.t                   See if tainting works
 t/op/tie.t                     See if tie/untie functions work
@@ -2826,6 +2825,7 @@ t/run/exit.t                      Test perl's exit status.
 t/run/fresh_perl.t             Tests that require a fresh perl.
 t/run/noswitch.t               Test aliasing ARGV for other switch tests
 t/run/runenv.t                 Test if perl honors its environment variables.
+t/run/switch_A.t               Test the -A switch
 t/run/switcha.t                        Test the -a switch
 t/run/switchC.t                        Test the -C switch
 t/run/switchd.t                        Test the -d switch
@@ -2839,7 +2839,6 @@ t/run/switchPx.t          Test the -Px combination
 t/run/switcht.t                        Test the -t switch
 t/run/switchx.aux              Data for switchx.t
 t/run/switchx.t                        Test the -x switch
-t/run/switch_A.t               Test the -A switch
 t/TEST                         The regression tester
 t/test.pl                      Simple testing library
 t/TestInit.pm                  Preamble library for core tests
@@ -2907,9 +2906,9 @@ vms/ext/Stdio/Stdio.pm            VMS options to stdio routines
 vms/ext/Stdio/Stdio.xs         VMS options to stdio routines
 vms/ext/Stdio/test.pl          regression tests for VMS::Stdio
 vms/ext/XSSymSet.pm            manage linker symbols when building extensions
+vms/gen_shrfls.pl              generate options files and glue for shareable image
 vms/genconfig.pl               retcon config.sh from config.h
 vms/genopt.com                 hack to write options files in case of broken makes
-vms/gen_shrfls.pl              generate options files and glue for shareable image
 vms/make_command.com           record MM[SK] command used to build Perl
 vms/mms2make.pl                        convert descrip.mms to make syntax
 vms/munchconfig.c              performs shell $var substitution for VMS
@@ -2921,9 +2920,9 @@ vms/sockadapt.c                   glue for SockshShr socket support
 vms/sockadapt.h                        glue for SockshShr socket support
 vms/test.com                   DCL driver for regression tests
 vms/vms.c                      VMS-specific C code for Perl core
+vms/vms_yfix.pl                        convert Unix perly.[ch] to VMS perly_[ch].vms
 vms/vmsish.h                   VMS-specific C header for Perl core
 vms/vmspipe.com                        VMS-specific piped command helper script
-vms/vms_yfix.pl                        convert Unix perly.[ch] to VMS perly_[ch].vms
 vms/writemain.pl               Generate perlmain.c from miniperlmain.c+extensions
 vos/Changes                    Changes made to port Perl to the VOS operating system
 vos/compile_full_perl.cm       VOS command macro to build "full" Perl
@@ -2951,8 +2950,8 @@ win32/config_H.vc64               Win64 config header (Visual C++ build)
 win32/config_sh.PL             Perl code to update Win32 config.sh from Makefile
 win32/distclean.bat            Remove _ALL_ files not listed here in MANIFEST
 win32/dl_win32.xs              Win32 port
-win32/FindExt.pm               Scan for extensions
 win32/fcrypt.c                 crypt() implementation
+win32/FindExt.pm               Scan for extensions
 win32/genmk95.pl               Perl code to generate command.com-usable makefile.95
 win32/include/arpa/inet.h      Win32 port
 win32/include/dirent.h         Win32 port
index 2aa52e1..6a30929 100644 (file)
@@ -310,13 +310,11 @@ shextract = Makefile cflags config.h makeaperl makedepend \
 # available.  Dependencies handled manually below (for now).
 
 pl = pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL \
-       pod/pod2usage.PL pod/podchecker.PL pod/podselect.PL \
-       pod/buildtoc.PL
+       pod/pod2usage.PL pod/podchecker.PL pod/podselect.PL
 
 # lib/lib.pm is not listed here because it has a rule of its own.
 plextract = pod/pod2html pod/pod2latex pod/pod2man pod/pod2text \
-       pod/pod2usage pod/podchecker pod/podselect \
-       pod/buildtoc
+       pod/pod2usage pod/podchecker pod/podselect
 
 addedbyconf = UU $(shextract) $(plextract) lib/lib.pm pstruct
 
diff --git a/pod.lst b/pod.lst
new file mode 100644 (file)
index 0000000..29342fb
--- /dev/null
+++ b/pod.lst
@@ -0,0 +1,192 @@
+# O    - Header, omit from toc
+# o    - Item, omit from toc
+# I    - Header, include in toc
+# r    - top level READMEs to be copied/symlinked
+# a    - Item, for auxiliary documentation
+# a    - Header for auxiliary documentation
+# number - indent by
+
+I Overview
+
+  perl                 Perl overview (this section)
+  perlintro            Perl introduction for beginners
+  perltoc              Perl documentation table of contents
+
+I Tutorials
+
+  perlreftut           Perl references short introduction
+  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
+  perltooc             Perl OO tutorial, part 2
+  perlbot              Perl OO tricks and examples
+
+  perlstyle            Perl style guide
+
+  perlcheat            Perl cheat sheet
+  perltrap             Perl traps for the unwary
+  perldebtut           Perl debugging tutorial
+
+  perlfaq              Perl frequently asked questions
+2 perlfaq1             General Questions About Perl
+2 perlfaq2             Obtaining and Learning about Perl
+2 perlfaq3             Programming Tools
+2 perlfaq4             Data Manipulation
+2 perlfaq5             Files and Formats
+2 perlfaq6             Regexes
+2 perlfaq7             Perl Language Issues
+2 perlfaq8             System Interaction
+2 perlfaq9             Networking
+
+I Reference Manual
+
+  perlsyn              Perl syntax
+  perldata             Perl data structures
+  perlop               Perl operators and precedence
+  perlsub              Perl subroutines
+  perlfunc             Perl built-in functions
+2 perlopentut          Perl open() tutorial
+2 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
+  perlreref            Perl regular expressions quick reference
+  perlref              Perl references, the rest of the story
+  perlform             Perl formats
+  perlobj              Perl objects
+  perltie              Perl objects hidden behind simple variables
+2 perldbmfilter                Perl DBM filters
+
+  perlipc              Perl interprocess communication
+  perlfork             Perl fork() information
+  perlnumber           Perl number semantics
+
+  perlthrtut           Perl threads tutorial
+2 perlothrtut          Old Perl threads tutorial
+
+  perlport             Perl portability guide
+  perllocale           Perl locale support
+  perluniintro         Perl Unicode introduction
+  perlunicode          Perl Unicode support
+  perlebcdic           Considerations for running Perl on EBCDIC platforms
+
+  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
+
+I Internals and C Language Interface
+
+  perlembed            Perl ways to embed perl in your C or C++ application
+  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
+
+  perlhack             Perl hackers guide
+
+I Miscellaneous
+
+  perlbook             Perl book information
+  perltodo             Perl things to do
+
+  perldoc              Look up Perl documentation in Pod format
+
+  perlhist             Perl history records
+  perldelta            Perl changes since previous version
+  perl58delta          Perl changes in version 5.8.0
+  perl573delta         Perl changes in version 5.7.3
+  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
+
+  perlartistic         Perl Artistic License
+  perlgpl              GNU General Public License
+
+O Language-Specific
+
+or perlcn              Perl for Simplified Chinese (in EUC-CN)
+or perljp              Perl for Japanese (in EUC-JP)
+or perlko              Perl for Korean (in EUC-KR)
+or perltw              Perl for Traditional Chinese (in Big5)
+
+I Platform-Specific
+
+r perlaix              Perl notes for AIX
+r perlamiga            Perl notes for AmigaOS
+r perlapollo           Perl notes for Apollo DomainOS
+r perlbeos             Perl notes for BeOS
+r perlbs2000           Perl notes for POSIX-BC BS2000
+r perlce               Perl notes for WinCE
+r perlcygwin           Perl notes for Cygwin
+r perldgux             Perl notes for DG/UX
+r perldos              Perl notes for DOS
+r perlepoc             Perl notes for EPOC
+r perlfreebsd          Perl notes for FreeBSD
+r perlhpux             Perl notes for HP-UX
+r perlhurd             Perl notes for Hurd
+r perlirix             Perl notes for Irix
+r perlmachten          Perl notes for Power MachTen
+r perlmacos            Perl notes for Mac OS (Classic)
+r perlmacosx           Perl notes for Mac OS X
+r perlmint             Perl notes for MiNT
+r perlmpeix            Perl notes for MPE/iX
+r perlnetware          Perl notes for NetWare
+r perlos2              Perl notes for OS/2
+r perlos390            Perl notes for OS/390
+r perlos400            Perl notes for OS/400
+r perlplan9            Perl notes for Plan 9
+r perlqnx              Perl notes for QNX
+r perlsolaris          Perl notes for Solaris
+r perltru64            Perl notes for Tru64
+r perluts              Perl notes for UTS
+r perlvmesa            Perl notes for VM/ESA
+r perlvms              Perl notes for VMS
+r perlvos              Perl notes for Stratus VOS
+r perlwin32            Perl notes for Windows
+
+AO Auxiliary Documentation
+
+ao a2p
+ao c2ph
+ao dprofpp
+ao h2ph
+ao h2xs
+ao perlbug
+ao perldoc
+ao pl2pm
+ao pod2html
+ao pod2man
+ao s2p
+ao splain
+ao xsubpp
index a481ca6..ababd51 100644 (file)
@@ -73,9 +73,6 @@ converters: $(CONVERTERS)
 
 regen_pods: perlmodlib.pod toc
 
-buildtoc:      buildtoc.PL perl.pod ../MANIFEST
-       $(PERLILIB) buildtoc.PL
-
 perltoc.pod:   buildtoc
 
 man:   pod2man $(MAN)
diff --git a/pod/buildtoc b/pod/buildtoc
new file mode 100644 (file)
index 0000000..4b5fe1e
--- /dev/null
@@ -0,0 +1,661 @@
+#!/usr/bin/perl -w
+
+use strict;
+use vars qw($masterpodfile %Build %Targets $Verbose $Up %Ignore
+           @Master %Readmes %Pods %Aux %Readmepods %Pragmata %Modules);
+use File::Spec;
+use File::Find;
+use FindBin;
+use Text::Tabs;
+use Text::Wrap;
+use Getopt::Long;
+
+no locale;
+
+$Up = File::Spec->updir;
+$masterpodfile = File::Spec->catdir($Up, "pod.lst");
+
+# Generate any/all of these files
+# --verbose gives slightly more output
+# --build-all tries to build everything
+# --build-foo updates foo as follows
+# --showfiles shows the files to be changed
+
+%Targets
+  = (
+     toc => "perltoc.pod",
+     manifest => File::Spec->catdir($Up, "MANIFEST"),
+     perlpod => "perl.pod",
+     vms => File::Spec->catdir($Up, "vms", "descrip_mms.template"),
+     nmake => File::Spec->catdir($Up, "win32", "Makefile"),
+     dmake => File::Spec->catdir($Up, "win32", "makefile.mk"),
+     podmak => File::Spec->catdir($Up, "win32", "pod.mak"),
+     # plan9 =>  File::Spec->catdir($Up, "plan9", "mkfile"),
+    );
+
+{
+  my @files = keys %Targets;
+  my $filesopts = join(" | ", map { "--build-$_" } "all", sort @files);
+  my $showfiles;
+  die <<__USAGE__
+$0: Usage: $0 [--verbose] [--showfiles] $filesopts
+__USAGE__
+  unless @ARGV
+       && GetOptions (verbose => \$Verbose,
+                      showfiles => \$showfiles,
+                      map {+"build-$_", \$Build{$_}} @files, 'all');
+  # Set them all to true
+  @Build{@files} = @files if ($Build{all});
+  if ($showfiles) {
+      print
+         join(" ",
+              sort { lc $a cmp lc $b }
+              map {
+                  my ($v, $d, $f) = File::Spec->splitpath($_);
+                  my @d;
+                  @d = defined $d ? File::Spec->splitdir($d) : ();
+                  shift @d if @d;
+                  File::Spec->catfile(@d ?
+                                      (@d == 1 && $d[0] eq '' ? () : @d)
+                                      : "pod", $f);
+              } @Targets{grep { $_ ne 'all' && $Build{$_} } keys %Build}),
+          "\n";
+      exit(0);
+  }
+}
+
+# Don't copy these top level READMEs
+%Ignore
+  = (
+     Y2K => 1,
+     micro => 1,
+#     vms => 1,
+     );
+
+if ($Verbose) {
+  print "I'm building $_\n" foreach grep {$Build{$_}} keys %Build;
+}
+
+chdir $FindBin::Bin or die "$0: Can't chdir $FindBin::Bin: $!";
+
+open MASTER, $masterpodfile or die "$0: Can't open $masterpodfile: $!";
+
+foreach (<MASTER>) {
+  next if /^\#/;
+
+  # At least one upper case letter somewhere in the first group
+  if (/^(\S+)\s(.*)/ && $1 =~ tr/A-Z//) {
+    # it's a heading
+    my $flags = $1;
+    my %flags = (header => 1);
+    $flags{toc_omit} = 1 if $flags =~ tr/O//d;
+    $flags{include} = 1 if $flags =~ tr/I//d;
+    $flags{aux} = 1 if $flags =~ tr/A//d;
+    die "$0: Unknown flag found in heading line: $_" if length $flags;
+    push @Master, [\%flags, $2];
+
+  } elsif (/^(\S*)\s+(\S+)\s+(.*)/) {
+    # it's a section
+    my ($flags, $filename, $desc) = ($1, $2, $3);
+
+    my %flags = (indent => 0);
+    $flags{indent} = $1 if $flags =~ s/(\d+)//;
+    $flags{toc_omit} = 1 if $flags =~ tr/o//d;
+    $flags{aux} = 1 if $flags =~ tr/a//d;
+    if ($flags =~ tr/r//d) {
+      my $readme = $filename;
+      $readme =~ s/^perl//;
+      $Readmepods{$filename} = $Readmes{$readme} = $desc;
+      $flags{readme} = 1;
+    } elsif ($flags{aux}) {
+      $Aux{$filename} = $desc;
+    } else {
+      $Pods{$filename} = $desc;
+    }
+    die "$0: Unknown flag found in section line: $_" if length $flags;
+    push @Master, [\%flags, $filename, $desc];
+  } elsif (/^$/) {
+    push @Master, undef;
+  } else {
+    die "$0: Malformed line: $_" if $1 =~ tr/A-Z//;
+  }
+}
+
+close MASTER;
+
+# Sanity cross check
+{
+  my (%disk_pods, @disk_pods);
+  my (@manipods, %manipods);
+  my (@manireadmes, %manireadmes);
+  my (@perlpods, %perlpods);
+  my (%our_pods);
+
+  # Convert these to a list of filenames.
+  foreach (keys %Pods, keys %Readmepods) {
+    $our_pods{"$_.pod"}++;
+  }
+
+  # None of these filenames will be boolean false
+  @disk_pods = glob("*.pod");
+  @disk_pods{@disk_pods} = @disk_pods;
+
+  open(MANI, "../MANIFEST") || die "$0: opening ../MANIFEST failed: $!";
+  while (<MANI>) {
+    if (m!^pod/([^.]+\.pod)\s+!i) {
+      push @manipods, $1;
+    } elsif (m!^README\.(\S+)\s+!i) {
+      next if $Ignore{$1};
+      push @manireadmes, "perl$1.pod";
+    }
+  }
+  close(MANI);
+  @manipods{@manipods} = @manipods;
+  @manireadmes{@manireadmes} = @manireadmes;
+
+  open(PERLPOD, "perl.pod") || die "$0: opening perl.pod failed: $!\n";
+  while (<PERLPOD>) {
+    if (/^For ease of access, /../^\(If you're intending /) {
+      if (/^\s+(perl\S*)\s+\w/) {
+       push @perlpods, "$1.pod";
+      }
+    }
+  }
+  close(PERLPOD);
+  die "$0: could not find the pod listing of perl.pod\n"
+    unless @perlpods;
+  @perlpods{@perlpods} = @perlpods;
+
+  foreach my $i (sort keys %disk_pods) {
+    warn "$0: $i exists but is unknown by buildtoc\n"
+      unless $our_pods{$i};
+    warn "$0: $i exists but is unknown by ../MANIFEST\n"
+      if !$manipods{$i} && !$manireadmes{$i};
+    warn "$0: $i exists but is unknown by perl.pod\n"
+       unless $perlpods{$i};
+  }
+  foreach my $i (sort keys %our_pods) {
+    warn "$0: $i is known by buildtoc but does not exist\n"
+      unless $disk_pods{$i};
+  }
+  foreach my $i (sort keys %manipods) {
+    warn "$0: $i is known by ../MANIFEST but does not exist\n"
+      unless $disk_pods{$i};
+  }
+  foreach my $i (sort keys %perlpods) {
+    warn "$0: $i is known by perl.pod but does not exist\n"
+      unless $disk_pods{$i};
+  }
+}
+
+# Find all the mdoules
+{
+  my @modpods;
+  find \&getpods => qw(../lib ../ext);
+
+  sub getpods {
+    if (/\.p(od|m)$/) {
+      my $file = $File::Find::name;
+      return if $file eq '../lib/Pod/Functions.pm'; # Used only by pod itself
+      return if $file =~ m!(?:^|/)t/!;
+      return if $file =~ m!lib/Attribute/Handlers/demo/!;
+      return if $file =~ m!lib/Net/FTP/.+\.pm!; # Hi, Graham! :-)
+      return if $file =~ m!lib/Math/BigInt/t/!;
+      return if $file =~ m!/Devel/PPPort/[Hh]arness|lib/Devel/Harness!i;
+      return if $file =~ m!XS/(?:APItest|Typemap)!;
+      die "$0: tut $File::Find::name" if $file =~ /TUT/;
+      unless (open (F, "< $_\0")) {
+       warn "$0: bogus <$file>: $!";
+       system "ls", "-l", $file;
+      }
+      else {
+       my $line;
+       while ($line = <F>) {
+         if ($line =~ /^=head1\s+NAME\b/) {
+           push @modpods, $file;
+           #warn "GOOD $file\n";
+           return;
+         }
+       }
+       warn "$0: $file: cannot find =head1 NAME\n";
+      }
+    }
+  }
+
+  die "$0: no pods" unless @modpods;
+
+  my %done;
+  for (@modpods) {
+    #($name) = /(\w+)\.p(m|od)$/;
+    my $name = path2modname($_);
+    if ($name =~ /^[a-z]/) {
+      $Pragmata{$name} = $_;
+    } else {
+      if ($done{$name}++) {
+       # warn "already did $_\n";
+       next;
+      }
+      $Modules{$name} = $_;
+    }
+  }
+}
+
+# OK. Now a lot of ancillay function definitions follow
+# Main program returns at "Do stuff"
+
+sub path2modname {
+    local $_ = shift;
+    s/\.p(m|od)$//;
+    s-.*?/(lib|ext)/--;
+    s-/-::-g;
+    s/(\w+)::\1/$1/;
+    return $_;
+}
+
+sub output ($);
+
+sub output_perltoc {
+  open(OUT, ">perltoc.pod") || die "$0: creating perltoc.pod failed: $!";
+
+  $/ = '';
+
+  ($_= <<"EOPOD2B") =~ s/^\t//gm && output($_);
+
+       =head1 NAME
+
+       perltoc - perl documentation table of contents
+
+       =head1 DESCRIPTION
+
+       This page provides a brief table of contents for the rest of the Perl
+       documentation set.  It is meant to be scanned quickly or grepped
+       through to locate the proper section you're looking for.
+
+       =head1 BASIC DOCUMENTATION
+
+EOPOD2B
+#' make emacs happy
+
+  # All the things in the master list that happen to be pod filenames
+  podset(map {"$_->[1].pod"} grep {defined $_ && @$_ == 3 && !$_->[0]{toc_omit}} @Master);
+
+
+  ($_= <<"EOPOD2B") =~ s/^\t//gm && output($_);
+
+
+
+       =head1 PRAGMA DOCUMENTATION
+
+EOPOD2B
+
+  podset(sort values %Pragmata);
+
+  ($_= <<"EOPOD2B") =~ s/^\t//gm && output($_);
+
+
+
+       =head1 MODULE DOCUMENTATION
+
+EOPOD2B
+
+  podset( @Modules{ sort keys %Modules } );
+
+  $_= <<"EOPOD2B";
+
+
+       =head1 AUXILIARY DOCUMENTATION
+
+       Here should be listed all the extra programs' documentation, but they
+       don't all have manual pages yet:
+
+       =over 4
+
+EOPOD2B
+
+  $_ .=  join "\n", map {"\t=item $_\n"} sort keys %Aux;
+  $_ .= <<"EOPOD2B" ;
+
+       =back
+
+       =head1 AUTHOR
+
+       Larry Wall <F<larry\@wall.org>>, with the help of oodles
+       of other folks.
+
+
+EOPOD2B
+
+  s/^\t//gm;
+  output $_;
+  output "\n";                    # flush $LINE
+}
+
+# Below are all the auxiliary routines for generating perltoc.pod
+
+my ($inhead1, $inhead2, $initem);
+
+sub podset {
+    local @ARGV = @_;
+    my $pod;
+
+    while(<>) {
+       if (s/^=head1 (NAME)\s*/=head2 /) {
+           $pod = path2modname($ARGV);
+           unhead1();
+           output "\n \n\n=head2 ";
+           $_ = <>;
+           if ( /^\s*$pod\b/ ) {
+               s/$pod\.pm/$pod/;       # '.pm' in NAME !?
+               output $_;
+           } else {
+               s/^/$pod, /;
+               output $_;
+           }
+           next;
+       }
+       if (s/^=head1 (.*)/=item $1/) {
+           unhead2();
+           output "=over 4\n\n" unless $inhead1;
+           $inhead1 = 1;
+           output $_; nl(); next;
+       }
+       if (s/^=head2 (.*)/=item $1/) {
+           unitem();
+           output "=over 4\n\n" unless $inhead2;
+           $inhead2 = 1;
+           output $_; nl(); next;
+       }
+       if (s/^=item ([^=].*)/$1/) {
+           next if $pod eq 'perldiag';
+           s/^\s*\*\s*$// && next;
+           s/^\s*\*\s*//;
+           s/\n/ /g;
+           s/\s+$//;
+           next if /^[\d.]+$/;
+           next if $pod eq 'perlmodlib' && /^ftp:/;
+           ##print "=over 4\n\n" unless $initem;
+           output ", " if $initem;
+           $initem = 1;
+           s/\.$//;
+           s/^-X\b/-I<X>/;
+           output $_; next;
+       }
+       if (s/^=cut\s*\n//) {
+           unhead1();
+           next;
+       }
+    }
+}
+
+sub unhead1 {
+    unhead2();
+    if ($inhead1) {
+       output "\n\n=back\n\n";
+    }
+    $inhead1 = 0;
+}
+
+sub unhead2 {
+    unitem();
+    if ($inhead2) {
+       output "\n\n=back\n\n";
+    }
+    $inhead2 = 0;
+}
+
+sub unitem {
+    if ($initem) {
+       output "\n\n";
+       ##print "\n\n=back\n\n";
+    }
+    $initem = 0;
+}
+
+sub nl {
+    output "\n";
+}
+
+my $NEWLINE = 0;       # how many newlines have we seen recently
+my $LINE;              # what remains to be printed
+
+sub output ($) {
+    for (split /(\n)/, shift) {
+       if ($_ eq "\n") {
+           if ($LINE) {
+               print OUT wrap('', '', $LINE);
+               $LINE = '';
+           }
+           if (($NEWLINE) < 2) {
+               print OUT;
+               $NEWLINE++;
+           }
+       }
+       elsif (/\S/ && length) {
+           $LINE .= $_;
+           $NEWLINE = 0;
+       }
+    }
+}
+
+# End of original buildtoc. From here on are routines to generate new sections
+# for and inplace edit other files
+
+sub generate_perlpod {
+  my @output;
+  my $maxlength = 0;
+  foreach (@Master) {
+    my $flags = $_->[0];
+    next if $flags->{aux};
+
+    if (@$_ == 2) {
+      # Heading
+      push @output, "=head2 $_->[1]\n";
+    } elsif (@$_ == 3) {
+      # Section
+      my $start = " " x (4 + $flags->{indent}) . $_->[1];
+      $maxlength = length $start if length ($start) > $maxlength;
+      push @output, [$start, $_->[2]];
+    } elsif (@$_ == 0) {
+      # blank line
+      push @output, "\n";
+    } else {
+      die "$0: Illegal length " . scalar @$_;
+    }
+  }
+  # want at least 2 spaces padding
+  $maxlength += 2;
+  $maxlength = ($maxlength + 3) & ~3;
+  # sprintf gives $1.....$2 where ... are spaces:
+  return unexpand (map {ref $_ ? sprintf "%-${maxlength}s%s\n", @$_ : $_}
+                  @output);
+}
+
+
+sub generate_manifest {
+  # Annyoingly unexpand doesn't consider it good form to replace a single
+  # space before a tab with a tab
+  # Annoyingly (2) it returns read only values.
+  my @temp = unexpand (map {sprintf "%-32s%s\n", @$_} @_);
+  map {s/ \t/\t\t/g; $_} @temp;
+}
+sub generate_manifest_pod {
+  generate_manifest map {["pod/$_.pod", $Pods{$_}]} sort keys %Pods;
+}
+sub generate_manifest_readme {
+  generate_manifest map {["README.$_", $Readmes{$_}]} sort keys %Readmes;
+}
+
+sub generate_roffitall {
+  (map ({"\t\$maindir/$_.1\t\\"}sort keys %Pods),
+   "\t\t\\",
+   map ({"\t\$maindir/$_.1\t\\"}sort keys %Aux),
+   "\t\t\\",
+   map ({"\t\$libdir/$_.3\t\\"}sort keys %Pragmata),
+   "\t\t\\",
+   map ({"\t\$libdir/$_.3\t\\"}sort keys %Modules),
+  )
+}
+
+sub generate_descrip_mms_1 {
+  local $Text::Wrap::columns = 150;
+  my $count = 0;
+  my @lines = map {"pod" . $count++ . " = $_"}
+    split /\n/, wrap('', '', join " ", map "[.lib.pod]$_.pod",
+                    sort keys %Pods, keys %Readmepods);
+  @lines, "pod = " . join ' ', map {"\$(pod$_)"} 0 .. $count - 1;
+}
+
+sub generate_descrip_mms_2 {
+  map {sprintf <<'SNIP', $_, $_}
+[.lib.pod]%s.pod : [.pod]%s.pod
+       @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
+       Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
+SNIP
+   sort keys %Pods, keys %Readmepods;
+}
+
+sub generate_nmake_1 {
+  map {sprintf "\tcopy ..\\README.%-8s .\\perl$_.pod\n", $_}
+    sort keys %Readmes;
+}
+
+# This doesn't have a trailing newline
+sub generate_nmake_2 {
+  # Spot the special case
+  local $Text::Wrap::columns = 76;
+  my $line = wrap ("\t    ", "\t    ",
+                  join " ", sort map {"perl$_.pod"} "vms", keys %Readmes);
+  $line =~ s/$/ \\/mg;
+  $line;
+}
+
+sub generate_pod_mak {
+  my $variable = shift;
+  my @lines;
+  my $line = join "\\\n", "\U$variable = ",
+    map {"\t$_.$variable\t"} sort keys %Pods;
+  # Special case
+  $line =~ s/.*perltoc.html.*\n//m;
+  $line;
+}
+
+sub do_manifest {
+  my $name = shift;
+  my @manifest =
+    grep {! m!^pod/[^.]+\.pod.*\n!}
+      grep {! m!^README\.(\S+)! || $Ignore{$1}} @_;
+  # Dictionary order - fold and handle non-word chars as nothing
+  map  { $_->[0] }
+  sort { $a->[1] cmp $b->[1] || $a->[0] cmp $b->[0] }
+  map  { [ $_, lc $_ ] }
+    @manifest,
+      &generate_manifest_pod(),
+       &generate_manifest_readme();
+}
+
+sub do_nmake {
+  my $name = shift;
+  my $makefile = join '', @_;
+  die "$0: $name contains NUL bytes" if $makefile =~ /\0/;
+  $makefile =~ s/^\tcopy \.\.\\README.*\n/\0/gm;
+  my $sections = () = $makefile =~ m/\0+/g;
+  die "$0: $name contains no README copies" if $sections < 1;
+  die "$0: $name contains discontiguous README copies" if $sections > 1;
+  $makefile =~ s/\0+/join "", &generate_nmake_1/se;
+
+  $makefile =~ s{(cd \$\(PODDIR\) && del /f [^\n]+).*?(pod2html)}
+    {"$1\n" . &generate_nmake_2."\n\t    $2"}se;
+  $makefile;
+}
+
+# shut up used only once warning
+*do_dmake = *do_dmake = \&do_nmake;
+
+sub do_perlpod {
+  my $name = shift;
+  my $pod = join '', @_;
+
+  unless ($pod =~ s{(For\ ease\ of\ access,\ .*\n)
+                   (?:\s+[a-z]{4,}.*\n #   fooo
+                   |=head.*\n          # =head foo
+                   |\s*\n              # blank line
+                  )+
+                 }
+         {$1 . join "", &generate_perlpod}mxe) {
+    die "$0: Failed to insert ammendments in do_perlpod";
+  }
+  $pod;
+}
+
+sub do_podmak {
+  my $name = shift;
+  my $body = join '', @_;
+  foreach my $variable qw(pod man html tex) {
+    die "$0: could not find $variable in $name"
+      unless $body =~ s{\n\U$variable\E = (?:[^\n]*\\\n)*[^\n]*}
+       {"\n" . generate_pod_mak ($variable)}se;
+  }
+  $body;
+}
+
+sub do_vms {
+  my $name = shift;
+  my $makefile = join '', @_;
+  die "$0: $name contains NUL bytes" if $makefile =~ /\0/;
+  $makefile =~ s/\npod\d* =[^\n]*/\0/gs;
+  my $sections = () = $makefile =~ m/\0+/g;
+  die "$0: $name contains no pod assignments" if $sections < 1;
+  die "$0: $name contains $sections discontigous pod assignments"
+    if $sections > 1;
+  $makefile =~ s/\0+/join "\n", '', &generate_descrip_mms_1/se;
+
+  die "$0: $name contains NUL bytes" if $makefile =~ /\0/;
+
+# Looking for rules like this
+# [.lib.pod]perl.pod : [.pod]perl.pod
+#      @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
+#      Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
+
+  $makefile =~ s/\n\Q[.lib.pod]\Eperl[^\n\.]*\.pod[^\n]+\n
+                [^\n]+\n       # Another line
+                [^\n]+\Q[.lib.pod]\E\n         # ends [.lib.pod]
+                   /\0/gsx;
+  $sections = () = $makefile =~ m/\0+/g;
+  die "$0: $name contains no copy rules" if $sections < 1;
+  die "$0: $name contains $sections discontigous copy rules"
+    if $sections > 1;
+  $makefile =~ s/\0+/join "\n", '', &generate_descrip_mms_2/se;
+  $makefile;
+}
+
+# Do stuff
+
+my $built;
+while (my ($target, $name) = each %Targets) {
+  next unless $Build{$target};
+  $built++;
+  if ($target eq "toc") {
+    &output_perltoc;
+    next;
+  }
+  print "Now processing $name\n" if $Verbose;
+  open THING, $name or die "Can't open $name: $!";
+  my @orig = <THING>;
+  my $orig = join '', @orig;
+  close THING;
+  my @new = do {
+    no strict 'refs';
+    &{"do_$target"}($target, @orig);
+  };
+  my $new = join '', @new;
+  if ($new eq $orig) {
+    print "Was not modified\n" if $Verbose;
+    next;
+  }
+  rename $name, "$name.old" or die "$0: Can't rename $name to $name.old: $!";
+  open THING, ">$name" or die "$0: Can't open $name for writing: $!";
+  print THING $new or die "$0: print to $name failed: $!";
+  close THING or die die "$0: close $name failed: $!";
+}
+
+warn "$0: was not instructed to build anything\n" unless $built;
diff --git a/pod/buildtoc.PL b/pod/buildtoc.PL
deleted file mode 100644 (file)
index 14a899a..0000000
+++ /dev/null
@@ -1,537 +0,0 @@
-#!/usr/local/bin/perl
-
-use Config;
-use File::Basename qw(&basename &dirname);
-use Cwd;
-
-# List explicitly here the variables you want Configure to
-# generate.  Metaconfig only looks for shell variables, so you
-# have to mention them as if they were shell variables, not
-# %Config entries.  Thus you write
-#  $startperl
-# to ensure Configure will look for $Config{startperl}.
-
-# This forces PL files to create target in same directory as PL file.
-# This is so that make depend always knows where to find PL derivatives.
-$origdir = cwd;
-chdir(dirname($0));
-($file = basename($0)) =~ s/\.PL$//;
-$file =~ s/\.pl$// if ($^O eq 'os2' or $^O eq 'dos');  # "case-forgiving"
-$file =~ s/\.pl$/.com/ if ($^O eq 'VMS');              # "case-forgiving"
-
-open OUT,">$file" or die "Can't create $file: $!";
-
-print "Extracting $file (with variable substitutions)\n";
-
-# In this section, perl variables will be expanded during extraction.
-# You can use $Config{...} to use Configure variables.
-
-print OUT <<"!GROK!THIS!";
-$Config{'startperl'}
-    eval 'exec perl -S \$0 "\$@"'
-        if 0;
-!GROK!THIS!
-
-# In the following, perl variables are not expanded during extraction.
-
-print OUT <<'!NO!SUBS!';
-
-#
-# buildtoc
-#
-# !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
-# This file is autogenerated by buildtoc.PL.
-# Edit that file and run it to effect changes.
-#
-# Builds perltoc.pod and sanity checks the list of pods against all
-# of the MANIFEST, perl.pod, and ourselves.
-#
-
-use File::Find;
-use Cwd;
-use Text::Wrap;
-
-@PODS = glob("*.pod");
-
-sub output ($);
-
-if (-d "pod") {
-  die "$0: failed to chdir('pod'): $!\n" unless chdir("pod");
-}
-
-@ARCHPODS = qw(
-    perlaix    
-    perlapollo
-    perlamiga          
-    perlbeos
-    perlbs2000
-    perlce
-    perlcygwin          
-    perldgux             
-    perldos             
-    perlepoc             
-    perlfreebsd             
-    perlhpux            
-    perlhurd            
-    perlirix            
-    perlmachten         
-    perlmacos
-    perlmacosx
-    perlmint
-    perlmpeix
-    perlnetware             
-    perlos2             
-    perlos390           
-    perlos400           
-    perlqnx
-    perlplan9
-    perlsolaris
-    perltru64
-    perluts
-    perlvmesa
-    perlvms             
-    perlvos             
-    perlwin32           
-          );
-
-@CJKPODS = qw(
-    perlcn
-    perljp
-    perlko
-    perltw
-          );
-
-@pods = 
-  (
-    qw(
-
-    perl
-    perlintro
-    perlfaq
-    perltoc
-    perlbook
-
-    perlsyn
-    perldata
-    perlop
-    perlsub
-    perlfunc
-    perlreftut
-    perldsc
-    perlrequick
-    perlpod
-    perlpodspec
-    perlstyle
-    perltrap
-    perlcheat
-
-    perlrun
-    perldiag
-    perllexwarn
-    perldebtut
-    perldebug
-
-    perlvar
-    perllol
-    perlopentut
-    perlpacktut
-    perlretut
-
-    perlre
-    perlreref
-    perlref
-
-    perlform
-
-    perlboot
-    perltoot
-    perltooc
-    perlobj
-    perlbot
-    perltie
-
-    perlipc
-    perlfork
-    perlnumber
-
-    perlthrtut
-    perlothrtut
-
-    perlport
-    perllocale
-    perluniintro
-    perlunicode
-    perlebcdic
-
-    perlsec
-
-    perlmod
-    perlmodinstall
-    perlmodlib
-    perlmodstyle
-    perlnewmod
-
-    perlfaq1            
-    perlfaq2            
-    perlfaq3            
-    perlfaq4            
-    perlfaq5            
-    perlfaq6            
-    perlfaq7            
-    perlfaq8            
-    perlfaq9            
-
-    perlcompile        
-
-    perlembed          
-    perldebguts         
-    perlxstut           
-    perlxs              
-    perlclib            
-    perlguts            
-    perlcall            
-    perlutil            
-    perlfilter          
-    perldbmfilter       
-    perlapi             
-    perlintern          
-    perliol            
-    perlapio            
-    perltodo            
-    perlhack            
-    perldoc
-
-    perlhist           
-    perldelta           
-    perl58delta         
-    perl573delta         
-    perl572delta         
-    perl571delta         
-    perl570delta         
-    perl561delta         
-    perl56delta         
-    perl5005delta       
-    perl5004delta       
-
-    perlartistic
-    perlgpl
-
-    ),
-
-    @ARCHPODS,
-
-  );
-
-for (@ARCHPODS) { s/$/.pod/ }
-@ARCHPODS{@ARCHPODS} = ();
-
-for (@CJKPODS) { s/$/.pod/ }
-@CJKPODS{@CJKPODS} = ();
-
-for (@pods) { s/$/.pod/ }
-@pods{@pods} = ();
-@PODS{@PODS} = ();
-
-open(MANI, "../MANIFEST") || die "$0: opening ../MANIFEST failed: $!";
-while (<MANI>) {
-  if (m!^pod/([^.]+\.pod)\s+!i) {
-     push @MANIPODS, $1;
-  }
-}
-close(MANI);
-@MANIPODS{@MANIPODS} = ();
-
-open(PERLPOD, "perl.pod") || die "$0: opening perl.pod failed: $!\n";
-while (<PERLPOD>) {
-  if (/^For ease of access, /../^\(If you're intending /) {
-       if (/^\s+(perl\S*)\s+\w/) {
-               push @PERLPODS, "$1.pod";
-       }
-  }
-}
-close(PERLPOD);
-die "$0: could not find the pod listing of perl.pod\n"
-  unless @PERLPODS;
-@PERLPODS{@PERLPODS} = ();
-
-# Delete the CJK because we cannot mix their encodings.
-delete @PERLPODS{@CJKPODS};
-delete @PODS{@CJKPODS};
-delete @pods{@CJKPODS};
-
-# Cross-check against ourselves
-# Cross-check against the MANIFEST
-# Cross-check against the perl.pod
-
-foreach my $i (sort keys %PODS) {
-  warn "$0: $i exists but is unknown by buildtoc\n"
-       unless exists $pods{$i};
-  warn "$0: $i exists but is unknown by ../MANIFEST\n"
-       if !exists $MANIPODS{$i} && !exists $ARCHPODS{$i} && !exists $CJKPODS{$i};
-  warn "$0: $i exists but is unknown by perl.pod\n"
-       unless exists $PERLPODS{$i};
-}
-foreach my $i (sort keys %pods) {
-  warn "$0: $i is known by buildtoc but does not exist\n"
-       unless exists $PODS{$i};
-}
-foreach my $i (sort keys %MANIPODS) {
-  warn "$0: $i is known by ../MANIFEST but does not exist\n"
-       unless exists $PODS{$i};
-}
-foreach my $i (sort keys %PERLPODS) {
-  warn "$0: $i is known by perl.pod but does not exist\n"
-       unless exists $PODS{$i};
-}
-
-# We are ready to rock.
-open(OUT, ">perltoc.pod") || die "$0: creating perltoc.pod failed: $!";
-
-$/ = '';
-@ARGV = @pods;
-
-($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
-
-       =head1 NAME
-
-       perltoc - perl documentation table of contents
-
-       =head1 DESCRIPTION
-
-       This page provides a brief table of contents for the rest of the Perl
-       documentation set.  It is meant to be scanned quickly or grepped
-       through to locate the proper section you're looking for.
-
-       =head1 BASIC DOCUMENTATION
-
-EOPOD2B
-#' make emacs happy
-
-podset(@pods);
-
-find \&getpods => qw(../lib ../ext);
-
-sub getpods {
-    if (/\.p(od|m)$/) {
-       my $file = $File::Find::name;
-        return if $file eq '../lib/Pod/Functions.pm'; # Used only by pod itself
-        return if $file =~ m!(?:^|/)t/!;
-        return if $file =~ m!lib/Attribute/Handlers/demo/!;
-        return if $file =~ m!lib/Net/FTP/.+\.pm!; # Hi, Graham! :-)
-        return if $file =~ m!lib/Math/BigInt/t/!;
-        return if $file =~ m!/Devel/PPPort/[Hh]arness|lib/Devel/Harness!i;
-        return if $file =~ m!XS/(?:APItest|Typemap)!;
-        die "tut $name" if $file =~ /TUT/;
-       unless (open (F, "< $_\0")) {
-           warn "bogus <$file>: $!";
-           system "ls", "-l", $file;
-       }
-       else {
-           my $line;
-           while ($line = <F>) {
-               if ($line =~ /^=head1\s+NAME\b/) {
-                   push @modpods, $file;
-                   #warn "GOOD $file\n";
-                   return;
-               }
-           }
-           warn "$0: $file: cannot find =head1 NAME\n";
-       }
-    }
-}
-
-die "no pods" unless @modpods;
-
-for (@modpods) {
-    #($name) = /(\w+)\.p(m|od)$/;
-    $name = path2modname($_);
-    if ($name =~ /^[a-z]/) {
-       push @pragmata, $_;
-    } else {
-       if ($done{$name}++) {
-           # warn "already did $_\n";
-           next;
-       }
-       push @modules, $_;
-       push @modname, $name;
-    }
-}
-
-($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
-
-
-
-       =head1 PRAGMA DOCUMENTATION
-
-EOPOD2B
-
-podset(sort @pragmata);
-
-($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
-
-
-
-       =head1 MODULE DOCUMENTATION
-
-EOPOD2B
-
-podset( @modules[ sort { $modname[$a] cmp $modname[$b] } 0 .. $#modules ] );
-
-($_= <<EOPOD2B) =~ s/^\t//gm;
-
-
-       =head1 AUXILIARY DOCUMENTATION
-
-       Here should be listed all the extra programs' documentation, but they
-       don't all have manual pages yet:
-
-       =over 4
-
-       =item a2p
-
-       =item s2p
-
-       =item find2perl
-
-       =item h2ph
-
-       =item c2ph
-
-       =item h2xs
-
-       =item xsubpp
-
-       =item pod2man
-
-       =item wrapsuid
-
-       =back
-
-       =head1 AUTHOR
-
-       Larry Wall <F<larry\@wall.org>>, with the help of oodles
-       of other folks.
-
-
-EOPOD2B
-output $_;
-output "\n";                    # flush $LINE
-exit;
-
-sub podset {
-    local @ARGV = @_;
-
-    while(<>) {
-       if (s/^=head1 (NAME)\s*/=head2 /) {
-           $pod = path2modname($ARGV);
-           unhead1();
-           output "\n \n\n=head2 ";
-           $_ = <>;
-           if ( /^\s*$pod\b/ ) {
-               s/$pod\.pm/$pod/;       # '.pm' in NAME !?
-               output $_;
-           } else {
-               s/^/$pod, /;
-               output $_;
-           }
-           next;
-       }
-       if (s/^=head1 (.*)/=item $1/) {
-           unhead2();
-           output "=over 4\n\n" unless $inhead1;
-           $inhead1 = 1;
-           output $_; nl(); next;
-       }
-       if (s/^=head2 (.*)/=item $1/) {
-           unitem();
-           output "=over 4\n\n" unless $inhead2;
-           $inhead2 = 1;
-           output $_; nl(); next;
-       }
-       if (s/^=item ([^=].*)/$1/) {
-           next if $pod eq 'perldiag';
-           s/^\s*\*\s*$// && next;
-           s/^\s*\*\s*//;
-           s/\n/ /g;
-           s/\s+$//;
-           next if /^[\d.]+$/;
-           next if $pod eq 'perlmodlib' && /^ftp:/;
-           ##print "=over 4\n\n" unless $initem;
-           output ", " if $initem;
-           $initem = 1;
-           s/\.$//;
-           s/^-X\b/-I<X>/;
-           output $_; next;
-       }
-       if (s/^=cut\s*\n//) {
-           unhead1();
-           next;
-       }
-    }
-}
-
-sub path2modname {
-    local $_ = shift;
-    s/\.p(m|od)$//;
-    s-.*?/(lib|ext)/--;
-    s-/-::-g;
-    s/(\w+)::\1/$1/;
-    return $_;
-}
-
-sub unhead1 {
-    unhead2();
-    if ($inhead1) {
-       output "\n\n=back\n\n";
-    }
-    $inhead1 = 0;
-}
-
-sub unhead2 {
-    unitem();
-    if ($inhead2) {
-       output "\n\n=back\n\n";
-    }
-    $inhead2 = 0;
-}
-
-sub unitem {
-    if ($initem) {
-       output "\n\n";
-       ##print "\n\n=back\n\n";
-    }
-    $initem = 0;
-}
-
-sub nl {
-    output "\n";
-}
-
-my $NEWLINE;   # how many newlines have we seen recently
-my $LINE;      # what remains to be printed
-
-sub output ($) {
-    for (split /(\n)/, shift) {
-       if ($_ eq "\n") {
-           if ($LINE) {
-               print OUT wrap('', '', $LINE);
-               $LINE = '';
-           }
-           if ($NEWLINE < 2) {
-               print OUT;
-               $NEWLINE++;
-           }
-       }
-       elsif (/\S/ && length) {
-           $LINE .= $_;
-           $NEWLINE = 0;
-       }
-    }
-}
-
-!NO!SUBS!
-
-close OUT or die "Can't close $file: $!";
-chmod 0755, $file or die "Can't reset permissions for $file: $!\n";
-exec("$Config{'eunicefix'} $file") if $Config{'eunicefix'} ne ':';
-chdir $origdir;
index 73ab3d6..077b03c 100644 (file)
@@ -30,7 +30,7 @@ For ease of access, the Perl manual has been split up into several sections.
     perldsc            Perl data structures intro
     perllol            Perl data structures: arrays of arrays
 
-    perlrequick                Perl regular expressions quick start
+    perlrequick        Perl regular expressions quick start
     perlretut          Perl regular expressions tutorial
 
     perlboot           Perl OO tutorial for beginners
@@ -40,6 +40,7 @@ For ease of access, the Perl manual has been split up into several sections.
 
     perlstyle          Perl style guide
 
+    perlcheat          Perl cheat sheet
     perltrap           Perl traps for the unwary
     perldebtut         Perl debugging tutorial
 
@@ -56,20 +57,18 @@ For ease of access, the Perl manual has been split up into several sections.
 
 =head2 Reference Manual
 
-    perlcheat          Perl cheat sheet
-
     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
+      perlpacktut      Perl pack() and unpack() tutorial
     perlpod            Perl plain old documentation
-    perlpodspec         Perl plain old documentation format specification
+    perlpodspec        Perl plain old documentation format specification
     perlrun            Perl execution and options
     perldiag           Perl diagnostic messages
-    perllexwarn                Perl warnings and their control
+    perllexwarn        Perl warnings and their control
     perldebug          Perl debugging
     perlvar            Perl predefined variables
     perlre             Perl regular expressions, the rest of the story
@@ -85,12 +84,12 @@ For ease of access, the Perl manual has been split up into several sections.
     perlnumber         Perl number semantics
 
     perlthrtut         Perl threads tutorial
-      perlothrtut        Old Perl threads tutorial
+      perlothrtut      Old Perl threads tutorial
 
     perlport           Perl portability guide
     perllocale         Perl locale support
     perluniintro       Perl Unicode introduction
-    perlunicode                Perl Unicode support
+    perlunicode        Perl Unicode support
     perlebcdic         Considerations for running Perl on EBCDIC platforms
 
     perlsec            Perl security
@@ -103,14 +102,14 @@ For ease of access, the Perl manual has been split up into several sections.
 
     perlutil           utilities packaged with the Perl distribution
 
-    perlcompile                Perl compiler suite intro
+    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
-    perldebguts                Perl debugging guts and tips
+    perldebguts        Perl debugging guts and tips
     perlxstut          Perl XS tutorial
     perlxs             Perl XS application programming interface
     perlclib           Internal replacements for standard C library functions
@@ -133,13 +132,13 @@ For ease of access, the Perl manual has been split up into several sections.
 
     perlhist           Perl history records
     perldelta          Perl changes since previous version
-    perl58delta                Perl changes in version 5.8.0
+    perl58delta        Perl changes in version 5.8.0
     perl573delta       Perl changes in version 5.7.3
     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
+    perl56delta        Perl changes in version 5.6
     perl5005delta      Perl changes in version 5.005
     perl5004delta      Perl changes in version 5.004
 
@@ -165,16 +164,16 @@ For ease of access, the Perl manual has been split up into several sections.
     perldgux           Perl notes for DG/UX
     perldos            Perl notes for DOS
     perlepoc           Perl notes for EPOC
-    perlfreebsd                Perl notes for FreeBSD
+    perlfreebsd        Perl notes for FreeBSD
     perlhpux           Perl notes for HP-UX
     perlhurd           Perl notes for Hurd
     perlirix           Perl notes for Irix
-    perlmachten                Perl notes for Power MachTen
+    perlmachten        Perl notes for Power MachTen
     perlmacos          Perl notes for Mac OS (Classic)
     perlmacosx         Perl notes for Mac OS X
     perlmint           Perl notes for MiNT
     perlmpeix          Perl notes for MPE/iX
-    perlnetware                Perl notes for NetWare
+    perlnetware        Perl notes for NetWare
     perlos2            Perl notes for OS/2
     perlos390          Perl notes for OS/390
     perlos400          Perl notes for OS/400
@@ -182,7 +181,7 @@ For ease of access, the Perl manual has been split up into several sections.
     perlqnx            Perl notes for QNX
     perlsolaris        Perl notes for Solaris
     perltru64          Perl notes for Tru64
-    perluts             Perl notes for UTS
+    perluts            Perl notes for UTS
     perlvmesa          Perl notes for VM/ESA
     perlvms            Perl notes for VMS
     perlvos            Perl notes for Stratus VOS
index 984abdb..bd4d0b0 100644 (file)
@@ -103,113 +103,136 @@ Parentheses for capturing, Other regexp features
 
 =back
 
-=head2 perlfaq - frequently asked questions about Perl ($Date: 2003/01/31
-17:37:17 $)
+=head2 perlreftut - Mark's very short tutorial about references
 
 =over 4
 
 =item DESCRIPTION
 
+=item Who Needs Complicated Data Structures?
+
+=item The Solution
+
+=item Syntax
+
 =over 4
 
-=item Where to get the perlfaq
+=item Making References
 
-=item How to contribute to the perlfaq
+=item Using References
 
-=item What will happen if you mail your Perl programming problems to the
-authors
+=item An Example
+
+=item Arrow Rule
 
 =back
 
-=item Credits
+=item Solution
 
-=item Author and Copyright Information
+=item The Rest
+
+=item Summary
+
+=item Credits
 
 =over 4
 
-=item Bundled Distributions
+=item Distribution Conditions
 
-=item Disclaimer
+=back
 
 =back
 
-=item Table of Contents
+=head2 perldsc - Perl Data Structures Cookbook
 
-perlfaq  - this document, perlfaq1 - General Questions About Perl, perlfaq2
-- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4
-- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular
-Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System
-Interaction, perlfaq9 - Networking
+=over 4
 
-=item The Questions
+=item DESCRIPTION
 
-=over 4
+arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
+more elaborate constructs
 
-=item L<perlfaq1>: General Questions About Perl
+=item REFERENCES
 
-=item L<perlfaq2>: Obtaining and Learning about Perl
+=item COMMON MISTAKES
 
-=item L<perlfaq3>: Programming Tools
+=item CAVEAT ON PRECEDENCE
 
-=item L<perlfaq4>: Data Manipulation
+=item WHY YOU SHOULD ALWAYS C<use strict>
 
-=item L<perlfaq5>: Files and Formats
+=item DEBUGGING
 
-=item L<perlfaq6>: Regular Expressions
+=item CODE EXAMPLES
 
-=item L<perlfaq7>: General Perl Language Issues
+=item ARRAYS OF ARRAYS
 
-=item L<perlfaq8>: System Interaction
+=over 4
 
-=item L<perlfaq9>: Networking
+=item Declaration of an ARRAY OF ARRAYS
 
-=back
+=item Generation of an ARRAY OF ARRAYS
+
+=item Access and Printing of an ARRAY OF ARRAYS
 
 =back
 
-=head2 perlbook - Perl book information
+=item HASHES OF ARRAYS
 
 =over 4
 
-=item DESCRIPTION
+=item Declaration of a HASH OF ARRAYS
+
+=item Generation of a HASH OF ARRAYS
+
+=item Access and Printing of a HASH OF ARRAYS
 
 =back
 
-=head2 perlsyn - Perl syntax
+=item ARRAYS OF HASHES
 
 =over 4
 
-=item DESCRIPTION
+=item Declaration of an ARRAY OF HASHES
 
-=over 4
+=item Generation of an ARRAY OF HASHES
 
-=item Declarations
+=item Access and Printing of an ARRAY OF HASHES
 
-=item Comments
+=back
 
-=item Simple Statements
+=item HASHES OF HASHES
 
-=item Compound Statements
+=over 4
 
-=item Loop Control
+=item Declaration of a HASH OF HASHES
 
-=item For Loops
+=item Generation of a HASH OF HASHES
 
-=item Foreach Loops
+=item Access and Printing of a HASH OF HASHES
 
-=item Basic BLOCKs and Switch Statements
+=back
 
-=item Goto
+=item MORE ELABORATE RECORDS
 
-=item PODs: Embedded Documentation
+=over 4
 
-=item Plain Old Comments (Not!)
+=item Declaration of MORE ELABORATE RECORDS
+
+=item Declaration of a HASH OF COMPLEX RECORDS
+
+=item Generation of a HASH OF COMPLEX RECORDS
 
 =back
 
+=item Database Ties
+
+=item SEE ALSO
+
+=item AUTHOR
+
 =back
 
-=head2 perldata - Perl data types
+=head2 perllol - Manipulating Arrays of Arrays in Perl
 
 =over 4
 
@@ -217,533 +240,405 @@ Interaction, perlfaq9 - Networking
 
 =over 4
 
-=item Variable names
-
-=item Context
-
-=item Scalar values
-
-=item Scalar value constructors
+=item Declaration and Access of Arrays of Arrays
 
-=item List value constructors
+=item Growing Your Own
 
-=item Subscripts
+=item Access and Printing
 
 =item Slices
 
-=item Typeglobs and Filehandles
-
 =back
 
 =item SEE ALSO
 
+=item AUTHOR
+
 =back
 
-=head2 perlop - Perl operators and precedence
+=head2 perlrequick - Perl regular expressions quick start
 
 =over 4
 
-=item SYNOPSIS
-
 =item DESCRIPTION
 
+=item The Guide
+
 =over 4
 
-=item Terms and List Operators (Leftward)
+=item Simple word matching
 
-=item The Arrow Operator
+=item Using character classes
 
-=item Auto-increment and Auto-decrement
+=item Matching this or that
 
-=item Exponentiation
+=item Grouping things and hierarchical matching
 
-=item Symbolic Unary Operators
+=item Extracting matches
 
-=item Binding Operators
+=item Matching repetitions
 
-=item Multiplicative Operators
+=item More matching
 
-=item Additive Operators
+=item Search and replace
 
-=item Shift Operators
+=item The split operator
 
-=item Named Unary Operators
+=back
 
-=item Relational Operators
+=item BUGS
 
-=item Equality Operators
+=item SEE ALSO
 
-=item Bitwise And
+=item AUTHOR AND COPYRIGHT
 
-=item Bitwise Or and Exclusive Or
+=over 4
 
-=item C-style Logical And
+=item Acknowledgments
 
-=item C-style Logical Or
+=back
 
-=item C-style Logical Defined-Or
+=back
 
-=item Range Operators
+=head2 perlretut - Perl regular expressions tutorial
 
-=item Conditional Operator
+=over 4
 
-=item Assignment Operators
+=item DESCRIPTION
 
-=item Comma Operator
+=item Part 1: The basics
 
-=item List Operators (Rightward)
+=over 4
 
-=item Logical Not
+=item Simple word matching
 
-=item Logical And
+=item Using character classes
 
-=item Logical or, Defined or, and Exclusive Or
+=item Matching this or that
 
-=item C Operators Missing From Perl
+=item Grouping things and hierarchical matching
 
-unary &, unary *, (TYPE)
+=item Extracting matches
 
-=item Quote and Quote-like Operators
+=item Matching repetitions
 
-=item Regexp Quote-Like Operators
+=item Building a regexp
 
-?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
-qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
-s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
-y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF
+=item Using regular expressions in Perl
 
-=item Gory details of parsing quoted constructs
+=back
 
-Finding the end, Removal of backslashes before delimiters, Interpolation,
-C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
-C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
-C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
-regular expressions
+=item Part 2: Power tools
 
-=item I/O Operators
+=over 4
 
-=item Constant Folding
+=item More on characters, strings, and character classes
 
-=item Bitwise String Operators
+=item Compiling and saving regular expressions
 
-=item Integer Arithmetic
+=item Embedding comments and modifiers in a regular expression
 
-=item Floating-point Arithmetic
+=item Non-capturing groupings
 
-=item Bigger Numbers
+=item Looking ahead and looking behind
 
-=back
+=item Using independent subexpressions to prevent backtracking
 
-=back
+=item Conditional expressions
 
-=head2 perlsub - Perl subroutines
+=item A bit of magic: executing Perl code in a regular expression
 
-=over 4
+=item Pragmas and debugging
 
-=item SYNOPSIS
+=back
 
-=item DESCRIPTION
+=item BUGS
 
-=over 4
+=item SEE ALSO
 
-=item Private Variables via my()
+=item AUTHOR AND COPYRIGHT
 
-=item Persistent Private Variables
+=over 4
 
-=item Temporary Values via local()
+=item Acknowledgments
 
-=item Lvalue subroutines
+=back
 
-Lvalue subroutines are EXPERIMENTAL
+=back
 
-=item Passing Symbol Table Entries (typeglobs)
+=head2 perlboot - Beginner's Object-Oriented Tutorial
 
-=item When to Still Use local()
+=over 4
 
-=item Pass by Reference
+=item DESCRIPTION
 
-=item Prototypes
+=over 4
 
-=item Constant Functions
+=item If we could talk to the animals...
 
-=item Overriding Built-in Functions
+=item Introducing the method invocation arrow
 
-=item Autoloading
+=item Invoking a barnyard
 
-=item Subroutine Attributes
-
-=back
+=item The extra parameter of method invocation
 
-=item SEE ALSO
+=item Calling a second method to simplify things
 
-=back
+=item Inheriting the windpipes
 
-=head2 perlfunc - Perl builtin functions
+=item A few notes about @ISA
 
-=over 4
+=item Overriding the methods
 
-=item DESCRIPTION
+=item Starting the search from a different place
 
-=over 4
+=item The SUPER way of doing things
 
-=item Perl Functions by Category
+=item Where we're at so far...
 
-Functions for SCALARs or strings, Regular expressions and pattern matching,
-Numeric functions, Functions for real @ARRAYs, Functions for list data,
-Functions for real %HASHes, Input and output functions, Functions for fixed
-length data or records, Functions for filehandles, files, or directories,
-Keywords related to the control flow of your perl program, Keywords related
-to scoping, Miscellaneous functions, Functions for processes and process
-groups, Keywords related to perl modules, Keywords related to classes and
-object-orientedness, Low-level socket functions, System V interprocess
-communication functions, Fetching user and group info, Fetching network
-info, Time-related functions, Functions new in perl5, Functions obsoleted
-in perl5
+=item A horse is a horse, of course of course -- or is it?
 
-=item Portability
+=item Invoking an instance method
 
-=item Alphabetical Listing of Perl Functions
+=item Accessing the instance data
 
--I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, abs, accept
-NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
-binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless
-REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp(
-LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER,
-chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE,
-connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT,
-dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete
-EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump,
-each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST,
-exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl
-FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION,
-fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin,
-getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam
-NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname
-NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr
-ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
-getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
-getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
-STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
-endhostent, endnetent, endprotoent, endservent, getsockname SOCKET,
-getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL,
-goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex,
-import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
-FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST,
-last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
-link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
-lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map
-EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget
-KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my
-TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no
-Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct
-EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open
-FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE,
-opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR :
-ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE,
-package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
-print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
-printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
-qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
-rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
-FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
-readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
-ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR,
-require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir
-DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME,
-rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir
-DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT,
-semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
-SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
-WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
-shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
-shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
-EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
-SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
-sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
-splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split
-/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format
-parameter index, flags, vector flag, (minimum) width, precision, or maximum
-width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat
-FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME
-(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK,
-substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
-EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
-FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
-FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
-FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
-FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
-syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
-VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
-FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
-ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
-TEMPLATE,EXPR, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use
-Module VERSION LIST, use Module VERSION, use Module LIST, use Module, use
-VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid
-PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y///
+=item How to build a horse
 
-=back
+=item Inheriting the constructor
 
-=back
+=item Making a method work with either classes or instances
 
-=head2 perlreftut - Mark's very short tutorial about references
+=item Adding parameters to a method
 
-=over 4
+=item More interesting instances
 
-=item DESCRIPTION
+=item A horse of a different color
 
-=item Who Needs Complicated Data Structures?
+=item Summary
 
-=item The Solution
+=back
 
-=item Syntax
+=item SEE ALSO
 
-=over 4
+=item COPYRIGHT
 
-=item Making References
+=back
 
-=item Using References
+=head2 perltoot - Tom's object-oriented tutorial for perl
 
-=item An Example
+=over 4
 
-=item Arrow Rule
+=item DESCRIPTION
 
-=back
+=item Creating a Class
 
-=item Solution
+=over 4
 
-=item The Rest
+=item Object Representation
 
-=item Summary
+=item Class Interface
 
-=item Credits
+=item Constructors and Instance Methods
 
-=over 4
+=item Planning for the Future: Better Constructors
 
-=item Distribution Conditions
+=item Destructors
 
-=back
+=item Other Object Methods
 
 =back
 
-=head2 perldsc - Perl Data Structures Cookbook
+=item Class Data
 
 =over 4
 
-=item DESCRIPTION
-
-arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
-more elaborate constructs
-
-=item REFERENCES
+=item Accessing Class Data
 
-=item COMMON MISTAKES
+=item Debugging Methods
 
-=item CAVEAT ON PRECEDENCE
+=item Class Destructors
 
-=item WHY YOU SHOULD ALWAYS C<use strict>
+=item Documenting the Interface
 
-=item DEBUGGING
+=back
 
-=item CODE EXAMPLES
+=item Aggregation
 
-=item ARRAYS OF ARRAYS
+=item Inheritance
 
 =over 4
 
-=item Declaration of an ARRAY OF ARRAYS
+=item Overridden Methods
 
-=item Generation of an ARRAY OF ARRAYS
+=item Multiple Inheritance
 
-=item Access and Printing of an ARRAY OF ARRAYS
+=item UNIVERSAL: The Root of All Objects
 
 =back
 
-=item HASHES OF ARRAYS
+=item Alternate Object Representations
 
 =over 4
 
-=item Declaration of a HASH OF ARRAYS
-
-=item Generation of a HASH OF ARRAYS
+=item Arrays as Objects
 
-=item Access and Printing of a HASH OF ARRAYS
+=item Closures as Objects
 
 =back
 
-=item ARRAYS OF HASHES
+=item AUTOLOAD: Proxy Methods
 
 =over 4
 
-=item Declaration of an ARRAY OF HASHES
-
-=item Generation of an ARRAY OF HASHES
+=item Autoloaded Data Methods
 
-=item Access and Printing of an ARRAY OF HASHES
+=item Inherited Autoloaded Data Methods
 
 =back
 
-=item HASHES OF HASHES
+=item Metaclassical Tools
 
 =over 4
 
-=item Declaration of a HASH OF HASHES
-
-=item Generation of a HASH OF HASHES
+=item Class::Struct
 
-=item Access and Printing of a HASH OF HASHES
+=item Data Members as Variables
 
 =back
 
-=item MORE ELABORATE RECORDS
+=item NOTES
 
 =over 4
 
-=item Declaration of MORE ELABORATE RECORDS
+=item Object Terminology
 
-=item Declaration of a HASH OF COMPLEX RECORDS
+=back
 
-=item Generation of a HASH OF COMPLEX RECORDS
+=item SEE ALSO
 
-=back
+=item AUTHOR AND COPYRIGHT
 
-=item Database Ties
+=item COPYRIGHT
 
-=item SEE ALSO
+=over 4
 
-=item AUTHOR
+=item Acknowledgments
 
 =back
 
-=head2 perlrequick - Perl regular expressions quick start
+=back
+
+=head2 perltooc - Tom's OO Tutorial for Class Data in Perl
 
 =over 4
 
 =item DESCRIPTION
 
-=item The Guide
+=item Class Data in a Can
+
+=item Class Data as Package Variables
 
 =over 4
 
-=item Simple word matching
+=item Putting All Your Eggs in One Basket
 
-=item Using character classes
+=item Inheritance Concerns
 
-=item Matching this or that
+=item The Eponymous Meta-Object
 
-=item Grouping things and hierarchical matching
+=item Indirect References to Class Data
 
-=item Extracting matches
+=item Monadic Classes
 
-=item Matching repetitions
+=item Translucent Attributes
 
-=item More matching
+=back
 
-=item Search and replace
+=item Class Data as Lexical Variables
 
-=item The split operator
+=over 4
 
-=back
+=item Privacy and Responsibility 
 
-=item BUGS
+=item File-Scoped Lexicals
 
-=item SEE ALSO
+=item More Inheritance Concerns
 
-=item AUTHOR AND COPYRIGHT
+=item Locking the Door and Throwing Away the Key
 
-=over 4
-
-=item Acknowledgments
+=item Translucency Revisited
 
 =back
 
+=item NOTES
+
+=item SEE ALSO
+
+=item AUTHOR AND COPYRIGHT
+
+=item ACKNOWLEDGEMENTS
+
+=item HISTORY
+
 =back
 
-=head2 perlpod - the Plain Old Documentation format
+=head2 perlbot - Bag'o Object Tricks (the BOT)
 
 =over 4
 
 =item DESCRIPTION
 
-=over 4
+=item OO SCALING TIPS
 
-=item Ordinary Paragraph
+=item INSTANCE VARIABLES
 
-=item Verbatim Paragraph
+=item SCALAR INSTANCE VARIABLES
 
-=item Command Paragraph
+=item INSTANCE VARIABLE INHERITANCE
 
-C<=head1 I<Heading Text>>, C<=head2 I<Heading Text>>, C<=head3 I<Heading
-Text>>, C<=head4 I<Heading Text>>, C<=over I<indentlevel>>, C<=item
-I<stuff...>>, C<=back>, C<=cut>, C<=pod>, C<=begin I<formatname>>, C<=end
-I<formatname>>, C<=for I<formatname> I<text...>>
+=item OBJECT RELATIONSHIPS
 
-=item Formatting Codes
+=item OVERRIDING SUPERCLASS METHODS
 
-C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
-C<CE<lt>codeE<gt>> -- code text, C<LE<lt>nameE<gt>> -- a hyperlink,
-C<EE<lt>escapeE<gt>> -- a character escape, C<FE<lt>filenameE<gt>> -- used
-for filenames, C<SE<lt>textE<gt>> -- text contains non-breaking spaces,
-C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a null
-(zero-effect) formatting code
+=item USING RELATIONSHIP WITH SDBM
 
-=item The Intent
+=item THINKING OF CODE REUSE
 
-=item Embedding Pods in Perl Modules
+=item CLASS CONTEXT AND THE OBJECT
 
-=item Hints for Writing Pod
+=item INHERITING A CONSTRUCTOR
 
-=back
+=item DELEGATION
 
 =item SEE ALSO
 
-=item AUTHOR
-
 =back
 
-=head2 perlpodspec - Plain Old Documentation: format specification and
-notes
+=head2 perlstyle - Perl style guide
 
 =over 4
 
 =item DESCRIPTION
 
-=item Pod Definitions
-
-=item Pod Commands
-
-"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item",
-"=back", "=begin formatname", "=end formatname", "=for formatname text..."
-
-=item Pod Formatting Codes
-
-C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
-C<CE<lt>codeE<gt>> -- code text, C<FE<lt>filenameE<gt>> -- style for
-filenames, C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a
-null (zero-effect) formatting code, C<LE<lt>nameE<gt>> -- a hyperlink,
-C<EE<lt>escapeE<gt>> -- a character escape, C<SE<lt>textE<gt>> -- text
-contains non-breaking spaces
-
-=item Notes on Implementing Pod Processors
-
-=item About LE<lt>...E<gt> Codes
+=back
 
-First:, Second:, Third:, Fourth:, Fifth:, Sixth:
+=head2 perlcheat - Perl 5 Cheat Sheet
 
-=item About =over...=back Regions
+=over 4
 
-=item About Data Paragraphs and "=begin/=end" Regions
+=item DESCRIPTION
 
-=item SEE ALSO
+=over 4
 
-=item AUTHOR
+=item The sheet
 
 =back
 
-=head2 perlstyle - Perl style guide
+=item ACKNOWLEDGEMENTS
 
-=over 4
+=item AUTHOR
 
-=item DESCRIPTION
+=item SEE ALSO
 
 =back
 
@@ -832,204 +727,211 @@ LIMIT specified
 
 =back
 
-=head2 perlcheat - Perl 5 Cheat Sheet
+=head2 perldebtut - Perl debugging tutorial
 
 =over 4
 
 =item DESCRIPTION
 
-=over 4
+=item use strict
 
-=item The sheet
+=item Looking at data and -w and v
 
-=back
+=item help
 
-=item ACKNOWLEDGEMENTS
+=item Stepping through code
 
-=item AUTHOR
+=item Placeholder for a, w, t, T
 
-=item SEE ALSO
+=item REGULAR EXPRESSIONS
 
-=back
+=item OUTPUT TIPS
 
-=head2 perlrun - how to execute the Perl interpreter
+=item CGI
 
-=over 4
+=item GUIs
 
-=item SYNOPSIS
+=item SUMMARY
 
-=item DESCRIPTION
+=item SEE ALSO
 
-=over 4
+=item AUTHOR
 
-=item #! and quoting on non-Unix systems
+=item CONTRIBUTORS
 
-OS/2, MS-DOS, Win95/NT, Macintosh, VMS
+=back
 
-=item Location of Perl
+=head2 perlfaq - frequently asked questions about Perl ($Date: 2003/01/31
+17:37:17 $)
 
-=item Command Switches
+=over 4
 
-B<-0>[I<octal/hexadecimal>], B<-A [I<assertions>]>, B<-a>, B<-C
-[I<number/list>]>, B<-c>, B<-d>, B<-d:>I<foo[=bar,baz]>, B<-D>I<letters>,
-B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
-B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
-B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
-B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
-B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-W>,
-B<-X>, B<-x> I<directory>
+=item DESCRIPTION
 
-=back
+=over 4
 
-=item ENVIRONMENT
+=item Where to get the perlfaq
 
-HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap,
-:perlio, :pop, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB,
-PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS,
-PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_HASH_SEED, PERL_HASH_SEED_DEBUG,
-PERL_ROOT (specific to the VMS port), PERL_SIGNALS, PERL_UNICODE, SYS$LOGIN
-(specific to the VMS port)
+=item How to contribute to the perlfaq
+
+=item What will happen if you mail your Perl programming problems to the
+authors
 
 =back
 
-=head2 perldiag - various Perl diagnostics
+=item Credits
+
+=item Author and Copyright Information
 
 =over 4
 
-=item DESCRIPTION
+=item Bundled Distributions
+
+=item Disclaimer
 
 =back
 
-=head2 perllexwarn - Perl Lexical Warnings
+=item Table of Contents
 
-=over 4
+perlfaq  - this document, perlfaq1 - General Questions About Perl, perlfaq2
+- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4
+- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular
+Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System
+Interaction, perlfaq9 - Networking
 
-=item DESCRIPTION
+=item The Questions
 
 =over 4
 
-=item Default Warnings and Optional Warnings
-
-=item What's wrong with B<-w> and C<$^W>
-
-=item Controlling Warnings from the Command Line
+=item L<perlfaq1>: General Questions About Perl
 
-B<-w>, B<-W>, B<-X>
+=item L<perlfaq2>: Obtaining and Learning about Perl
 
-=item Backward Compatibility
+=item L<perlfaq3>: Programming Tools
 
-=item Category Hierarchy
+=item L<perlfaq4>: Data Manipulation
 
-=item Fatal Warnings
+=item L<perlfaq5>: Files and Formats
 
-=item Reporting Warnings from a Module
+=item L<perlfaq6>: Regular Expressions
 
-=back
+=item L<perlfaq7>: General Perl Language Issues
 
-=item TODO
+=item L<perlfaq8>: System Interaction
 
-=item SEE ALSO
+=item L<perlfaq9>: Networking
 
-=item AUTHOR
+=back
 
 =back
 
-=head2 perldebtut - Perl debugging tutorial
+=head2 perlfaq1 - General Questions About Perl ($Revision: 1.12 $, $Date:
+2003/07/09 15:47:28 $)
 
 =over 4
 
 =item DESCRIPTION
 
-=item use strict
+=over 4
 
-=item Looking at data and -w and v
+=item What is Perl?
 
-=item help
+=item Who supports Perl?  Who develops it?  Why is it free?
 
-=item Stepping through code
+=item Which version of Perl should I use?
 
-=item Placeholder for a, w, t, T
+=item What are perl4 and perl5?
 
-=item REGULAR EXPRESSIONS
+=item What is Ponie?
 
-=item OUTPUT TIPS
+=item What is perl6?
 
-=item CGI
+=item How stable is Perl?
 
-=item GUIs
+=item Is Perl difficult to learn?
 
-=item SUMMARY
+=item How does Perl compare with other languages like Java, Python, REXX,
+Scheme, or Tcl?
 
-=item SEE ALSO
+=item Can I do [task] in Perl?
 
-=item AUTHOR
+=item When shouldn't I program in Perl?
 
-=item CONTRIBUTORS
+=item What's the difference between "perl" and "Perl"?
+
+=item Is it a Perl program or a Perl script?
+
+=item What is a JAPH?
+
+=item Where can I get a list of Larry Wall witticisms?
+
+=item How can I convince my sysadmin/supervisor/employees to use version
+5/5.6.1/Perl instead of some other language?
 
 =back
 
-=head2 perldebug - Perl debugging
+=item AUTHOR AND COPYRIGHT
+
+=back
+
+=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.20 $,
+$Date: 2003/01/26 17:50:56 $)
 
 =over 4
 
 =item DESCRIPTION
 
-=item The Perl Debugger
-
 =over 4
 
-=item Debugger Commands
+=item What machines support Perl?  Where do I get it?
 
-h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y
-[level [vars]], T, s [expr], n [expr], r, <CR>, c [line|sub], l, l
-min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/,
-?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b
-subname [condition], b postpone subname [condition], b load filename, b
-compile subname, B line, B *, a [line] command, A line, A *, w expr, W
-expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [
-command ], < *, << command, > ?, > command, > *, >> command, { ?, { [
-command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source
-file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man
-[manpage]
+=item How can I get a binary version of Perl?
 
-=item Configurable Options
+=item I don't have a C compiler on my system.  How can I compile perl?
 
-C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
-C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
-C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<windowSize>,
-C<arrayDepth>, C<hashDepth>, C<dumpDepth>, C<compactDump>, C<veryCompact>,
-C<globPrint>, C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<quote>,
-C<HighBit>, C<undefPrint>, C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>,
-C<NonStop>
+=item I copied the Perl binary from one machine to another, but scripts
+don't work.
 
-=item Debugger input/output
+=item I grabbed the sources and tried to compile but gdbm/dynamic
+loading/malloc/linking/... failed.  How do I make it work?
 
-Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
-listing
+=item What modules and extensions are available for Perl?  What is CPAN? 
+What does CPAN/src/... mean?
 
-=item Debugging compile-time statements
+=item Is there an ISO or ANSI certified version of Perl?
 
-=item Debugger Customization
+=item Where can I get information on Perl?
 
-=item Readline Support
+=item What are the Perl newsgroups on Usenet?  Where do I post questions?
 
-=item Editor Support for Debugging
+=item Where should I post source code?
 
-=item The Perl Profiler
+=item Perl Books
 
-=back
+References, Tutorials, Task-Oriented, Special Topics
 
-=item Debugging regular expressions
+=item Perl in Magazines
 
-=item Debugging memory usage
+=item Perl on the Net: FTP and WWW Access
 
-=item SEE ALSO
+=item What mailing lists are there for Perl?
 
-=item BUGS
+=item Archives of comp.lang.perl.misc
+
+=item Where can I buy a commercial version of Perl?
+
+=item Where do I send bug reports?
+
+=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
 
 =back
 
-=head2 perlvar - Perl predefined variables
+=item AUTHOR AND COPYRIGHT
+
+=back
+
+=head2 perlfaq3 - Programming Tools ($Revision: 1.33 $, $Date: 2003/01/31
+17:34:56 $)
 
 =over 4
 
@@ -1037,337 +939,301 @@ listing
 
 =over 4
 
-=item Predefined Names
+=item How do I do (anything)?
 
-$ARG, $_, $a, $b, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
-$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+,
-HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $,
-IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/,
-HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|,
-IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
-IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS,
-$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
-HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%,
-HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=,
-HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START,
-@-, C<$`> is the same as C<substr($var, 0, $-[0])>, C<$&> is the same as
-C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the same as C<substr($var,
-$+[0])>, C<$1> is the same as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2>
-is the same as C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as
-C<substr $var, $-[3], $+[3] - $-[3])>, HANDLE->format_name(EXPR),
-$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^,
-IO::Handle->format_line_break_characters EXPR,
-$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR,
-$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING},
-$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@,
-$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID,
-$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $),
-$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D,
-$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O,
-${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
-0x100, 0x200, 0x400, $LAST_REGEXP_CODE_RESULT, $^R,
-$EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, ${^UNICODE},
-$PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, $EXECUTABLE_NAME, $^X,
-ARGV, $ARGV, @ARGV, ARGVOUT, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG,
-$SIG{expr}
+=item How can I use Perl interactively?
 
-=item Error Indicators
+=item Is there a Perl shell?
 
-=item Technical Note on the Syntax of Variable Names
+=item How do I find which modules are installed on my system?
 
-=back
+=item How do I debug my Perl programs?
 
-=item BUGS
+=item How do I profile my Perl programs?
 
-=back
+=item How do I cross-reference my Perl programs?
 
-=head2 perllol - Manipulating Arrays of Arrays in Perl
+=item Is there a pretty-printer (formatter) for Perl?
 
-=over 4
+=item Is there a ctags for Perl?
 
-=item DESCRIPTION
+=item Is there an IDE or Windows Perl Editor?
 
-=over 4
+Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, OptiPerl,
+GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright,
+MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
 
-=item Declaration and Access of Arrays of Arrays
+=item Where can I get Perl macros for vi?
 
-=item Growing Your Own
+=item Where can I get perl-mode for emacs?
 
-=item Access and Printing
+=item How can I use curses with Perl?
 
-=item Slices
+=item How can I use X or Tk with Perl?
 
-=back
+=item How can I generate simple menus without using CGI or Tk?
 
-=item SEE ALSO
+=item How can I make my Perl program run faster?
 
-=item AUTHOR
+=item How can I make my Perl program take less memory?
 
-=back
+Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
+stringification, Pass by reference, Tie large variables to disk
 
-=head2 perlopentut - tutorial on opening things in Perl
+=item Is it safe to return a reference to local or lexical data?
 
-=over 4
+=item How can I free an array or hash so my program shrinks?
 
-=item DESCRIPTION
+=item How can I make my CGI script more efficient?
 
-=item Open E<agrave> la shell
+=item How can I hide the source for my Perl program?
 
-=over 4
+=item How can I compile my Perl program into byte code or C?
 
-=item Simple Opens
+=item How can I compile Perl into Java?
 
-=item Indirect Filehandles
+=item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
 
-=item Pipe Opens
+=item Can I write useful Perl programs on the command line?
 
-=item The Minus File
+=item Why don't Perl one-liners work on my DOS/Mac/VMS system?
 
-=item Mixing Reads and Writes
+=item Where can I learn about CGI or Web programming in Perl?
 
-=item Filters 
+=item Where can I learn about object-oriented Perl programming?
 
-=back
+=item Where can I learn about linking C with Perl? [h2xs, xsubpp]
 
-=item Open E<agrave> la C
+=item I've read perlembed, perlguts, etc., but I can't embed perl in
+my C program; what am I doing wrong?
 
-=over 4
+=item When I tried to run my script, I got this message. What does it mean?
 
-=item Permissions E<agrave> la mode
+=item What's MakeMaker?
 
 =back
 
-=item Obscure Open Tricks
+=item AUTHOR AND COPYRIGHT
+
+=back
+
+=head2 perlfaq4 - Data Manipulation ($Revision: 1.44 $, $Date: 2003/07/28
+17:35:21 $)
 
 =over 4
 
-=item Re-Opening Files (dups)
+=item DESCRIPTION
 
-=item Dispelling the Dweomer
+=item Data: Numbers
 
-=item Paths as Opens
+=over 4
 
-=item Single Argument Open
+=item Why am I getting long decimals (eg, 19.9499999999999) instead of the
+numbers I should be getting (eg, 19.95)?
 
-=item Playing with STDIN and STDOUT
+=item Why isn't my octal data interpreted correctly?
 
-=back
+=item Does Perl have a round() function?  What about ceil() and floor()? 
+Trig functions?
 
-=item Other I/O Issues
+=item How do I convert between numeric representations?
 
-=over 4
+How do I convert hexadecimal into decimal, How do I convert from decimal to
+hexadecimal, How do I convert from octal to decimal, How do I convert from
+decimal to octal, How do I convert from binary to decimal, How do I convert
+from decimal to binary
 
-=item Opening Non-File Files
+=item Why doesn't & work the way I want it to?
 
-=item Opening Named Pipes
+=item How do I multiply matrices?
 
-=item Opening Sockets
+=item How do I perform an operation on a series of integers?
 
-=item Binary Files
+=item How can I output Roman numerals?
 
-=item File Locking
+=item Why aren't my random numbers random?
 
-=item IO Layers
+=item How do I get a random number between X and Y?
 
 =back
 
-=item SEE ALSO 
+=item Data: Dates
 
-=item AUTHOR and COPYRIGHT
+=over 4
 
-=item HISTORY
+=item How do I find the day or week of the year?
 
-=back
+=item How can I compare two dates and find the difference?
 
-=head2 perlpacktut - tutorial on C<pack> and C<unpack>
+=item How can I take a string and turn it into epoch seconds?
 
-=over 4
+=item How can I find the Julian Day?
 
-=item DESCRIPTION
+=item How do I find yesterday's date?
 
-=item The Basic Principle
+=item Does Perl have a Year 2000 problem?  Is Perl Y2K compliant?
 
-=item Packing Text
+=back
 
-=item Packing Numbers
+=item Data: Strings
 
 =over 4
 
-=item Integers
+=item How do I validate input?
 
-=item Unpacking a Stack Frame
+=item How do I unescape a string?
 
-=item How to Eat an Egg on a Net
+=item How do I remove consecutive pairs of characters?
 
-=item Floating point Numbers
+=item How do I expand function calls in a string?
 
-=back
+=item How do I find matching/nesting anything?
 
-=item Exotic Templates
+=item How do I reverse a string?
 
-=over 4
+=item How do I expand tabs in a string?
 
-=item Bit Strings
+=item How do I reformat a paragraph?
 
-=item Uuencoding
+=item How can I access or change N characters of a string?
 
-=item Doing Sums
+=item How do I change the Nth occurrence of something?
 
-=item  Unicode
+=item How can I count the number of occurrences of a substring within a
+string?
 
-=item Another Portable Binary Encoding
+=item How do I capitalize all the words on one line?
 
-=back
+=item How can I split a [character] delimited string except when inside
+[character]?
 
-=item Template Grouping
+=item How do I strip blank space from the beginning/end of a string?
 
-=item Lengths and Widths
+=item How do I pad a string with blanks or pad a number with zeroes?
 
-=over 4
+=item How do I extract selected columns from a string?
 
-=item String Lengths
+=item How do I find the soundex value of a string?
 
-=item Dynamic Templates
+=item How can I expand variables in text strings?
 
-=item Counting Repetitions
+=item What's wrong with always quoting "$vars"?
+
+=item Why don't my E<lt>E<lt>HERE documents work?
+
+There must be no space after the E<lt>E<lt> part, There (probably) should
+be a semicolon at the end, You can't (easily) have any space in front of
+the tag
 
 =back
 
-=item Packing and Unpacking C Structures
+=item Data: Arrays
 
 =over 4
 
-=item The Alignment Pit
+=item What is the difference between a list and an array?
 
-=item Alignment, Take 2
+=item What is the difference between $array[1] and @array[1]?
 
-=item Alignment, Take 3
-
-=item Pointers for How to Use Them
-
-=back
-
-=item Pack Recipes
-
-=item Funnies Section
-
-=item Authors
+=item How can I remove duplicate elements from a list or array?
 
-=back
+a), b), c), d), e)
 
-=head2 perlretut - Perl regular expressions tutorial
+=item How can I tell whether a certain element is contained in a list or
+array?
 
-=over 4
+=item How do I compute the difference of two arrays?  How do I compute the
+intersection of two arrays?
 
-=item DESCRIPTION
+=item How do I test whether two arrays or hashes are equal?
 
-=item Part 1: The basics
+=item How do I find the first array element for which a condition is true?
 
-=over 4
+=item How do I handle linked lists?
 
-=item Simple word matching
+=item How do I handle circular lists?
 
-=item Using character classes
+=item How do I shuffle an array randomly?
 
-=item Matching this or that
+=item How do I process/modify each element of an array?
 
-=item Grouping things and hierarchical matching
+=item How do I select a random element from an array?
 
-=item Extracting matches
+=item How do I permute N elements of a list?
 
-=item Matching repetitions
+=item How do I sort an array by (anything)?
 
-=item Building a regexp
+=item How do I manipulate arrays of bits?
 
-=item Using regular expressions in Perl
+=item Why does defined() return true on empty arrays and hashes?
 
 =back
 
-=item Part 2: Power tools
+=item Data: Hashes (Associative Arrays)
 
 =over 4
 
-=item More on characters, strings, and character classes
-
-=item Compiling and saving regular expressions
+=item How do I process an entire hash?
 
-=item Embedding comments and modifiers in a regular expression
+=item What happens if I add or remove keys from a hash while iterating over
+it?
 
-=item Non-capturing groupings
+=item How do I look up a hash element by value?
 
-=item Looking ahead and looking behind
+=item How can I know how many entries are in a hash?
 
-=item Using independent subexpressions to prevent backtracking
+=item How do I sort a hash (optionally by value instead of key)?
 
-=item Conditional expressions
+=item How can I always keep my hash sorted?
 
-=item A bit of magic: executing Perl code in a regular expression
+=item What's the difference between "delete" and "undef" with hashes?
 
-=item Pragmas and debugging
+=item Why don't my tied hashes make the defined/exists distinction?
 
-=back
+=item How do I reset an each() operation part-way through?
 
-=item BUGS
+=item How can I get the unique keys from two hashes?
 
-=item SEE ALSO
+=item How can I store a multidimensional array in a DBM file?
 
-=item AUTHOR AND COPYRIGHT
+=item How can I make my hash remember the order I put elements into it?
 
-=over 4
+=item Why does passing a subroutine an undefined element in a hash create
+it?
 
-=item Acknowledgments
+=item How can I make the Perl equivalent of a C structure/C++ class/hash or
+array of hashes or arrays?
 
-=back
+=item How can I use a reference as a hash key?
 
 =back
 
-=head2 perlre - Perl regular expressions
-
-=over 4
-
-=item DESCRIPTION
-
-i, m, s, x
+=item Data: Misc
 
 =over 4
 
-=item Regular Expressions
-
-[1], [2], [3], cntrl, graph, print, punct, xdigit
-
-=item Extended Patterns
-
-C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
-C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
-code })>, C<(??{ code })>, C<< (?>pattern) >>,
-C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
-
-=item Backtracking
+=item How do I handle binary data correctly?
 
-=item Version 8 Regular Expressions
+=item How do I determine whether a scalar is a number/whole/integer/float?
 
-=item Warning on \1 vs $1
+=item How do I keep persistent data across program calls?
 
-=item Repeated patterns matching zero-length substring
+=item How do I print out or copy a recursive data structure?
 
-=item Combining pieces together
+=item How do I define methods for every class/object?
 
-C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
-C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
-C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
-C<(?(condition)yes-pattern|no-pattern)>
+=item How do I verify a credit card checksum?
 
-=item Creating custom RE engines
+=item How do I pack arrays of doubles or floats for XS code?
 
 =back
 
-=item BUGS
-
-=item SEE ALSO
+=item AUTHOR AND COPYRIGHT
 
 =back
 
-=head2 perlreref - Perl Regular Expressions Reference
+=head2 perlfaq5 - Files and Formats ($Revision: 1.28 $, $Date: 2003/01/26
+17:45:46 $)
 
 =over 4
 
@@ -1375,93 +1241,95 @@ C<(?(condition)yes-pattern|no-pattern)>
 
 =over 4
 
-=item OPERATORS
-
-=item SYNTAX
-
-=item ESCAPE SEQUENCES
-
-=item CHARACTER CLASSES
+=item How do I flush/unbuffer an output filehandle?  Why must I do this?
 
-=item ANCHORS
+=item How do I change one line in a file/delete a line in a file/insert a
+line in the middle of a file/append to the beginning of a file?
 
-=item QUANTIFIERS
+=item How do I count the number of lines in a file?
 
-=item EXTENDED CONSTRUCTS
+=item How can I use Perl's C<-i> option from within a program?
 
-=item VARIABLES
+=item How do I make a temporary file name?
 
-=item FUNCTIONS
+=item How can I manipulate fixed-record-length files?
 
-=item TERMINOLOGY
+=item How can I make a filehandle local to a subroutine?  How do I pass
+filehandles between subroutines?  How do I make an array of filehandles?
 
-=back
+=item How can I use a filehandle indirectly?
 
-=item AUTHOR
+=item How can I set up a footer format to be used with write()?
 
-=item SEE ALSO
+=item How can I write() into a string?
 
-=item THANKS
+=item How can I output my numbers with commas added?
 
-=back
+=item How can I translate tildes (~) in a filename?
 
-=head2 perlref - Perl references and nested data structures
+=item How come when I open a file read-write it wipes it out?
 
-=over 4
+=item Why do I sometimes get an "Argument list too long" when I use
+E<lt>*E<gt>?
 
-=item NOTE
+=item Is there a leak/bug in glob()?
 
-=item DESCRIPTION
+=item How can I open a file with a leading ">" or trailing blanks?
 
-=over 4
+=item How can I reliably rename a file?
 
-=item Making References
+=item How can I lock a file?
 
-=item Using References
+=item Why can't I just open(FH, "E<gt>file.lock")?
 
-=item Symbolic references
+=item I still don't get locking.  I just want to increment the number in
+the file.  How can I do this?
 
-=item Not-so-symbolic references
+=item All I want to do is append a small amount of text to the end of a
+file.  Do I still have to use locking?
 
-=item Pseudo-hashes: Using an array as a hash
+=item How do I randomly update a binary file?
 
-=item Function Templates
+=item How do I get a file's timestamp in perl?
 
-=back
+=item How do I set a file's timestamp in perl?
 
-=item WARNING
+=item How do I print to more than one file at once?
 
-=item SEE ALSO
+=item How can I read in an entire file all at once?
 
-=back
+=item How can I read in a file by paragraphs?
 
-=head2 perlform - Perl formats
+=item How can I read a single character from a file?  From the keyboard?
 
-=over 4
+=item How can I tell whether there's a character waiting on a filehandle?
 
-=item DESCRIPTION
+=item How do I do a C<tail -f> in perl?
 
-=over 4
+=item How do I dup() a filehandle in Perl?
 
-=item Format Variables
+=item How do I close a file descriptor by number?
 
-=back
+=item Why can't I use "C:\temp\foo" in DOS paths?  Why doesn't
+`C:\temp\foo.exe` work?
 
-=item NOTES
+=item Why doesn't glob("*.*") get all the files?
 
-=over 4
+=item Why does Perl let me delete read-only files?  Why does C<-i> clobber
+protected files?  Isn't this a bug in Perl?
 
-=item Footers
+=item How do I select a random line from a file?
 
-=item Accessing Formatting Internals
+=item Why do I get weird spaces when I print an array of lines?
 
 =back
 
-=item WARNINGS
+=item AUTHOR AND COPYRIGHT
 
 =back
 
-=head2 perlboot - Beginner's Object-Oriented Tutorial
+=head2 perlfaq6 - Regular Expressions ($Revision: 1.20 $, $Date: 2003/01/03
+20:05:28 $)
 
 =over 4
 
@@ -1469,418 +1337,409 @@ C<(?(condition)yes-pattern|no-pattern)>
 
 =over 4
 
-=item If we could talk to the animals...
+=item How can I hope to use regular expressions without creating illegible
+and unmaintainable code?
 
-=item Introducing the method invocation arrow
+Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
 
-=item Invoking a barnyard
+=item I'm having trouble matching over more than one line.  What's wrong?
 
-=item The extra parameter of method invocation
+=item How can I pull out lines between two patterns that are themselves on
+different lines?
 
-=item Calling a second method to simplify things
+=item I put a regular expression into $/ but it didn't work. What's wrong?
 
-=item Inheriting the windpipes
+=item How do I substitute case insensitively on the LHS while preserving
+case on the RHS?
 
-=item A few notes about @ISA
+=item How can I make C<\w> match national character sets?
 
-=item Overriding the methods
+=item How can I match a locale-smart version of C</[a-zA-Z]/>?
 
-=item Starting the search from a different place
+=item How can I quote a variable to use in a regex?
 
-=item The SUPER way of doing things
+=item What is C</o> really for?
 
-=item Where we're at so far...
+=item How do I use a regular expression to strip C style comments from a
+file?
 
-=item A horse is a horse, of course of course -- or is it?
+=item Can I use Perl regular expressions to match balanced text?
 
-=item Invoking an instance method
+=item What does it mean that regexes are greedy?  How can I get around it?
 
-=item Accessing the instance data
+=item How do I process each word on each line?
 
-=item How to build a horse
+=item How can I print out a word-frequency or line-frequency summary?
 
-=item Inheriting the constructor
+=item How can I do approximate matching?
 
-=item Making a method work with either classes or instances
+=item How do I efficiently match many regular expressions at once?
 
-=item Adding parameters to a method
+=item Why don't word-boundary searches with C<\b> work for me?
 
-=item More interesting instances
+=item Why does using $&, $`, or $' slow my program down?
 
-=item A horse of a different color
+=item What good is C<\G> in a regular expression?
 
-=item Summary
+=item Are Perl regexes DFAs or NFAs?  Are they POSIX compliant?
 
-=back
+=item What's wrong with using grep or map in a void context?
 
-=item SEE ALSO
+=item How can I match strings with multibyte characters?
 
-=item COPYRIGHT
+=item How do I match a pattern that is supplied by the user?
 
 =back
 
-=head2 perltoot - Tom's object-oriented tutorial for perl
+=item AUTHOR AND COPYRIGHT
+
+=back
+
+=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.15 $, $Date:
+2003/07/24 02:17:21 $)
 
 =over 4
 
 =item DESCRIPTION
 
-=item Creating a Class
-
 =over 4
 
-=item Object Representation
+=item Can I get a BNF/yacc/RE for the Perl language?
 
-=item Class Interface
+=item What are all these $@%&* punctuation signs, and how do I know when to
+use them?
 
-=item Constructors and Instance Methods
+=item Do I always/never have to quote my strings or use semicolons and
+commas?
 
-=item Planning for the Future: Better Constructors
+=item How do I skip some return values?
 
-=item Destructors
+=item How do I temporarily block warnings?
 
-=item Other Object Methods
+=item What's an extension?
 
-=back
+=item Why do Perl operators have different precedence than C operators?
 
-=item Class Data
+=item How do I declare/create a structure?
 
-=over 4
+=item How do I create a module?
 
-=item Accessing Class Data
+=item How do I create a class?
 
-=item Debugging Methods
+=item How can I tell if a variable is tainted?
 
-=item Class Destructors
+=item What's a closure?
 
-=item Documenting the Interface
+=item What is variable suicide and how can I prevent it?
 
-=back
+=item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
+Regex}?
 
-=item Aggregation
+Passing Variables and Functions, Passing Filehandles, Passing Regexes,
+Passing Methods
 
-=item Inheritance
+=item How do I create a static variable?
 
-=over 4
+=item What's the difference between dynamic and lexical (static) scoping? 
+Between local() and my()?
 
-=item Overridden Methods
+=item How can I access a dynamic variable while a similarly named lexical
+is in scope?
 
-=item Multiple Inheritance
+=item What's the difference between deep and shallow binding?
 
-=item UNIVERSAL: The Root of All Objects
+=item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?
 
-=back
+=item How do I redefine a builtin function, operator, or method?
 
-=item Alternate Object Representations
+=item What's the difference between calling a function as &foo and foo()?
 
-=over 4
+=item How do I create a switch or case statement?
 
-=item Arrays as Objects
+=item How can I catch accesses to undefined variables, functions, or
+methods?
 
-=item Closures as Objects
+=item Why can't a method included in this same file be found?
 
-=back
+=item How can I find out my current package?
 
-=item AUTOLOAD: Proxy Methods
+=item How can I comment out a large block of perl code?
 
-=over 4
+=item How do I clear a package?
 
-=item Autoloaded Data Methods
+=item How can I use a variable as a variable name?
 
-=item Inherited Autoloaded Data Methods
+=item What does "bad interpreter" mean?
 
 =back
 
-=item Metaclassical Tools
+=item AUTHOR AND COPYRIGHT
+
+=back
+
+=head2 perlfaq8 - System Interaction ($Revision: 1.17 $, $Date: 2003/01/26
+17:44:04 $)
 
 =over 4
 
-=item Class::Struct
+=item DESCRIPTION
 
-=item Data Members as Variables
+=over 4
 
-=back
+=item How do I find out which operating system I'm running under?
 
-=item NOTES
+=item How come exec() doesn't return?
 
-=over 4
+=item How do I do fancy stuff with the keyboard/screen/mouse?
 
-=item Object Terminology
+Keyboard, Screen, Mouse
 
-=back
+=item How do I print something out in color?
 
-=item SEE ALSO
+=item How do I read just one key without waiting for a return key?
 
-=item AUTHOR AND COPYRIGHT
+=item How do I check whether input is ready on the keyboard?
 
-=item COPYRIGHT
+=item How do I clear the screen?
 
-=over 4
+=item How do I get the screen size?
 
-=item Acknowledgments
+=item How do I ask the user for a password?
 
-=back
+=item How do I read and write the serial port?
 
-=back
+lockfiles, open mode, end of line, flushing output, non-blocking input
 
-=head2 perltooc - Tom's OO Tutorial for Class Data in Perl
+=item How do I decode encrypted password files?
 
-=over 4
+=item How do I start a process in the background?
 
-=item DESCRIPTION
+STDIN, STDOUT, and STDERR are shared, Signals, Zombies
 
-=item Class Data in a Can
+=item How do I trap control characters/signals?
 
-=item Class Data as Package Variables
+=item How do I modify the shadow password file on a Unix system?
 
-=over 4
+=item How do I set the time and date?
 
-=item Putting All Your Eggs in One Basket
+=item How can I sleep() or alarm() for under a second?
 
-=item Inheritance Concerns
+=item How can I measure time under a second?
 
-=item The Eponymous Meta-Object
+=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
 
-=item Indirect References to Class Data
+=item Why doesn't my sockets program work under System V (Solaris)?  What
+does the error message "Protocol not supported" mean?
 
-=item Monadic Classes
+=item How can I call my system's unique C functions from Perl?
 
-=item Translucent Attributes
+=item Where do I get the include files to do ioctl() or syscall()?
 
-=back
+=item Why do setuid perl scripts complain about kernel problems?
 
-=item Class Data as Lexical Variables
+=item How can I open a pipe both to and from a command?
 
-=over 4
+=item Why can't I get the output of a command with system()?
 
-=item Privacy and Responsibility 
+=item How can I capture STDERR from an external command?
 
-=item File-Scoped Lexicals
+=item Why doesn't open() return an error when a pipe open fails?
 
-=item More Inheritance Concerns
+=item What's wrong with using backticks in a void context?
 
-=item Locking the Door and Throwing Away the Key
+=item How can I call backticks without shell processing?
 
-=item Translucency Revisited
+=item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
+^Z on MS-DOS)?
 
-=back
+=item How can I convert my shell script to perl?
 
-=item NOTES
+=item Can I use perl to run a telnet or ftp session?
 
-=item SEE ALSO
+=item How can I write expect in Perl?
 
-=item AUTHOR AND COPYRIGHT
+=item Is there a way to hide perl's command line from programs such as
+"ps"?
 
-=item ACKNOWLEDGEMENTS
+=item I {changed directory, modified my environment} in a perl script. How
+come the change disappeared when I exited the script?  How do I get my
+changes to be visible?
 
-=item HISTORY
+Unix
 
-=back
+=item How do I close a process's filehandle without waiting for it to
+complete?
 
-=head2 perlobj - Perl objects
+=item How do I fork a daemon process?
 
-=over 4
+=item How do I find out if I'm running interactively or not?
 
-=item DESCRIPTION
+=item How do I timeout a slow event?
 
-=over 4
+=item How do I set CPU limits?
 
-=item An Object is Simply a Reference
+=item How do I avoid zombies on a Unix system?
 
-=item A Class is Simply a Package
+=item How do I use an SQL database?
 
-=item A Method is Simply a Subroutine
+=item How do I make a system() exit on control-C?
 
-=item Method Invocation
+=item How do I open a file without blocking?
 
-=item Indirect Object Syntax
+=item How do I install a module from CPAN?
 
-=item Default UNIVERSAL methods
+=item What's the difference between require and use?
 
-isa(CLASS), can(METHOD), VERSION( [NEED] )
+=item How do I keep my own module/library directory?
 
-=item Destructors
+=item How do I add the directory my program lives in to the module/library
+search path?
 
-=item Summary
+=item How do I add a directory to my include path at runtime?
 
-=item Two-Phased Garbage Collection
+=item What is socket.ph and where do I get it?
 
 =back
 
-=item SEE ALSO
+=item AUTHOR AND COPYRIGHT
 
 =back
 
-=head2 perlbot - Bag'o Object Tricks (the BOT)
+=head2 perlfaq9 - Networking ($Revision: 1.15 $, $Date: 2003/01/31 17:36:57
+$)
 
 =over 4
 
 =item DESCRIPTION
 
-=item OO SCALING TIPS
+=over 4
 
-=item INSTANCE VARIABLES
+=item What is the correct form of response from a CGI script?
 
-=item SCALAR INSTANCE VARIABLES
+=item My CGI script runs from the command line but not the browser.  (500
+Server Error)
 
-=item INSTANCE VARIABLE INHERITANCE
+=item How can I get better error messages from a CGI program?
 
-=item OBJECT RELATIONSHIPS
+=item How do I remove HTML from a string?
 
-=item OVERRIDING SUPERCLASS METHODS
+=item How do I extract URLs?
 
-=item USING RELATIONSHIP WITH SDBM
+=item How do I download a file from the user's machine?  How do I open a
+file on another machine?
 
-=item THINKING OF CODE REUSE
+=item How do I make a pop-up menu in HTML?
 
-=item CLASS CONTEXT AND THE OBJECT
+=item How do I fetch an HTML file?
 
-=item INHERITING A CONSTRUCTOR
+=item How do I automate an HTML form submission?
 
-=item DELEGATION
+=item How do I decode or create those %-encodings on the web?
 
-=item SEE ALSO
+=item How do I redirect to another page?
 
-=back
+=item How do I put a password on my web pages?
 
-=head2 perltie - how to hide an object class in a simple variable
+=item How do I edit my .htpasswd and .htgroup files with Perl?
 
-=over 4
+=item How do I make sure users can't enter values into a form that cause my
+CGI script to do bad things?
 
-=item SYNOPSIS
+=item How do I parse a mail header?
 
-=item DESCRIPTION
+=item How do I decode a CGI form?
 
-=over 4
+=item How do I check a valid mail address?
 
-=item Tying Scalars
+=item How do I decode a MIME/BASE64 string?
 
-TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
-DESTROY this
-
-=item Tying Arrays
+=item How do I return the user's mail address?
 
-TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
-FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
-key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this,
-UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY
-this
+=item How do I send mail?
 
-=item Tying Hashes
+=item How do I use MIME to make an attachment to a mail message?
 
-USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
-this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
-this, NEXTKEY this, lastkey, UNTIE this, DESTROY this
+=item How do I read mail?
 
-=item Tying FileHandles
+=item How do I find out my hostname/domainname/IP address?
 
-TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
-LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this,
-DESTROY this
+=item How do I fetch a news article or the active newsgroups?
 
-=item UNTIE this
+=item How do I fetch/put an FTP file?
 
-=item The C<untie> Gotcha
+=item How can I do RPC in Perl?
 
 =back
 
-=item SEE ALSO
-
-=item BUGS
-
-=item AUTHOR
+=item AUTHOR AND COPYRIGHT
 
 =back
 
-=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
-safe subprocesses, sockets, and semaphores)
+=head2 perlsyn - Perl syntax
 
 =over 4
 
 =item DESCRIPTION
 
-=item Signals
-
-=over 4
-
-=item Handling the SIGHUP Signal in Daemons
-
-=back
-
-=item Named Pipes
-
 =over 4
 
-=item Deferred Signals (Safe signals)
+=item Declarations
 
-Long running opcodes, Interrupting IO, Restartable system calls, Signals as
-"faults", Signals triggered by operating system state
+=item Comments
 
-=back
+=item Simple Statements
 
-=item Using open() for IPC
+=item Compound Statements
 
-=over 4
+=item Loop Control
 
-=item Filehandles
+=item For Loops
 
-=item Background Processes
+=item Foreach Loops
 
-=item Complete Dissociation of Child from Parent
+=item Basic BLOCKs and Switch Statements
 
-=item Safe Pipe Opens
+=item Goto
 
-=item Bidirectional Communication with Another Process
+=item PODs: Embedded Documentation
 
-=item Bidirectional Communication with Yourself
+=item Plain Old Comments (Not!)
 
 =back
 
-=item Sockets: Client/Server Communication
-
-=over 4
-
-=item Internet Line Terminators
-
-=item Internet TCP Clients and Servers
-
-=item Unix-Domain TCP Clients and Servers
-
 =back
 
-=item TCP Clients with IO::Socket
+=head2 perldata - Perl data types
 
 =over 4
 
-=item A Simple Client
-
-C<Proto>, C<PeerAddr>, C<PeerPort>
+=item DESCRIPTION
 
-=item A Webget Client
+=over 4
 
-=item Interactive Client with IO::Socket
+=item Variable names
 
-=back
+=item Context
 
-=item TCP Servers with IO::Socket
+=item Scalar values
 
-Proto, LocalPort, Listen, Reuse
+=item Scalar value constructors
 
-=item UDP: Message Passing
+=item List value constructors
 
-=item SysV IPC
+=item Subscripts
 
-=item NOTES
+=item Slices
 
-=item BUGS
+=item Typeglobs and Filehandles
 
-=item AUTHOR
+=back
 
 =item SEE ALSO
 
 =back
 
-=head2 perlfork - Perl's fork() emulation
+=head2 perlop - Perl operators and precedence
 
 =over 4
 
@@ -1890,566 +1749,617 @@ Proto, LocalPort, Listen, Reuse
 
 =over 4
 
-=item Behavior of other Perl features in forked pseudo-processes
-
-$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
-filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
-files, directories and network sockets
-
-=item Resource limits
-
-=item Killing the parent process
-
-=item Lifetime of the parent process and pseudo-processes
+=item Terms and List Operators (Leftward)
 
-=item CAVEATS AND LIMITATIONS
+=item The Arrow Operator
 
-BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
-Global state maintained by XSUBs, Interpreter embedded in larger
-application, Thread-safety of extensions
+=item Auto-increment and Auto-decrement
 
-=back
+=item Exponentiation
 
-=item BUGS
+=item Symbolic Unary Operators
 
-=item AUTHOR
+=item Binding Operators
 
-=item SEE ALSO
+=item Multiplicative Operators
 
-=back
+=item Additive Operators
 
-=head2 perlnumber - semantics of numbers and numeric operations in Perl
+=item Shift Operators
 
-=over 4
+=item Named Unary Operators
 
-=item SYNOPSIS
+=item Relational Operators
 
-=item DESCRIPTION
+=item Equality Operators
 
-=item Storing numbers
+=item Bitwise And
 
-=item Numeric operators and numeric conversions
+=item Bitwise Or and Exclusive Or
 
-=item Flavors of Perl numeric operations
+=item C-style Logical And
 
-Arithmetic operators, ++, Arithmetic operators during C<use integer>, Other
-mathematical operators, Bitwise operators, Bitwise operators during C<use
-integer>, Operators which expect an integer, Operators which expect a
-string
+=item C-style Logical Or
 
-=item AUTHOR
+=item C-style Logical Defined-Or
 
-=item SEE ALSO
+=item Range Operators
 
-=back
+=item Conditional Operator
 
-=head2 perlthrtut - tutorial on threads in Perl
+=item Assignment Operators
 
-=over 4
+=item Comma Operator
 
-=item DESCRIPTION
+=item List Operators (Rightward)
 
-=item Status
+=item Logical Not
 
-=item What Is A Thread Anyway?
+=item Logical And
 
-=item Threaded Program Models
+=item Logical or, Defined or, and Exclusive Or
 
-=over 4
+=item C Operators Missing From Perl
 
-=item Boss/Worker
+unary &, unary *, (TYPE)
 
-=item Work Crew
+=item Quote and Quote-like Operators
 
-=item Pipeline
+=item Regexp Quote-Like Operators
 
-=back
+?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
+qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
+s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
+y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF
 
-=item What kind of threads are Perl threads?
+=item Gory details of parsing quoted constructs
 
-=item Thread-Safe Modules
+Finding the end, Removal of backslashes before delimiters, Interpolation,
+C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
+C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
+C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
+regular expressions
 
-=item Thread Basics
+=item I/O Operators
 
-=over 4
+=item Constant Folding
 
-=item Basic Thread Support
+=item Bitwise String Operators
 
-=item A Note about the Examples
+=item Integer Arithmetic
 
-=item Creating Threads
+=item Floating-point Arithmetic
 
-=item Waiting For A Thread To Exit
+=item Bigger Numbers
 
-=item Ignoring A Thread
+=back
 
 =back
 
-=item Threads And Data
+=head2 perlsub - Perl subroutines
 
 =over 4
 
-=item Shared And Unshared Data
-
-=item Thread Pitfalls: Races
-
-=back
+=item SYNOPSIS
 
-=item Synchronization and control
+=item DESCRIPTION
 
 =over 4
 
-=item Controlling access: lock()
+=item Private Variables via my()
 
-=item A Thread Pitfall: Deadlocks
+=item Persistent Private Variables
 
-=item Queues: Passing Data Around
+=item Temporary Values via local()
 
-=item Semaphores: Synchronizing Data Access
+=item Lvalue subroutines
 
-=item Basic semaphores
+Lvalue subroutines are EXPERIMENTAL
 
-=item Advanced Semaphores
+=item Passing Symbol Table Entries (typeglobs)
 
-=item cond_wait() and cond_signal()
+=item When to Still Use local()
 
-=item Giving up control
+=item Pass by Reference
 
-=back
+=item Prototypes
 
-=item General Thread Utility Routines
+=item Constant Functions
 
-=over 4
+=item Overriding Built-in Functions
 
-=item What Thread Am I In?
+=item Autoloading
 
-=item Thread IDs
+=item Subroutine Attributes
 
-=item Are These Threads The Same?
+=back
 
-=item What Threads Are Running?
+=item SEE ALSO
 
 =back
 
-=item A Complete Example
+=head2 perlfunc - Perl builtin functions
 
-=item Different implementations of threads
+=over 4
 
-=item Performance considerations
+=item DESCRIPTION
 
-=item Process-scope Changes
+=over 4
 
-=item Thread-Safety of System Libraries
-
-=item Conclusion
-
-=item Bibliography
+=item Perl Functions by Category
 
-=over 4
+Functions for SCALARs or strings, Regular expressions and pattern matching,
+Numeric functions, Functions for real @ARRAYs, Functions for list data,
+Functions for real %HASHes, Input and output functions, Functions for fixed
+length data or records, Functions for filehandles, files, or directories,
+Keywords related to the control flow of your perl program, Keywords related
+to scoping, Miscellaneous functions, Functions for processes and process
+groups, Keywords related to perl modules, Keywords related to classes and
+object-orientedness, Low-level socket functions, System V interprocess
+communication functions, Fetching user and group info, Fetching network
+info, Time-related functions, Functions new in perl5, Functions obsoleted
+in perl5
 
-=item Introductory Texts
+=item Portability
 
-=item OS-Related References
+=item Alphabetical Listing of Perl Functions
 
-=item Other References
+-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, abs, accept
+NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
+binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless
+REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp(
+LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER,
+chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE,
+connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT,
+dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete
+EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump,
+each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST,
+exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl
+FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION,
+fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin,
+getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam
+NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname
+NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr
+ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
+getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
+getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
+STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
+endhostent, endnetent, endprotoent, endservent, getsockname SOCKET,
+getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL,
+goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex,
+import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
+FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST,
+last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
+link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
+lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map
+EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget
+KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my
+TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no
+Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct
+EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open
+FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE,
+opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR :
+ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE,
+package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
+print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
+printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
+qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
+rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
+FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
+readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
+ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR,
+require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir
+DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME,
+rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir
+DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT,
+semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
+SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
+WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
+shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
+shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
+EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
+SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
+sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
+splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split
+/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format
+parameter index, flags, vector flag, (minimum) width, precision, or maximum
+width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat
+FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME
+(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK,
+substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
+EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
+FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
+FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
+FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
+FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
+syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
+VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
+FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
+ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
+TEMPLATE,EXPR, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use
+Module VERSION LIST, use Module VERSION, use Module LIST, use Module, use
+VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid
+PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y///
 
 =back
 
-=item Acknowledgements
-
-=item AUTHOR
-
-=item Copyrights
-
 =back
 
-=head2 perlothrtut - old tutorial on threads in Perl
+=head2 perlopentut - tutorial on opening things in Perl
 
 =over 4
 
 =item DESCRIPTION
 
-=item What Is A Thread Anyway?
-
-=item Threaded Program Models
+=item Open E<agrave> la shell
 
 =over 4
 
-=item Boss/Worker
+=item Simple Opens
 
-=item Work Crew
+=item Indirect Filehandles
 
-=item Pipeline
+=item Pipe Opens
 
-=back
+=item The Minus File
 
-=item Native threads
+=item Mixing Reads and Writes
 
-=item What kind of threads are perl threads?
+=item Filters 
 
-=item Threadsafe Modules
+=back
 
-=item Thread Basics
+=item Open E<agrave> la C
 
 =over 4
 
-=item Basic Thread Support
-
-=item Creating Threads
-
-=item Giving up control
-
-=item Waiting For A Thread To Exit
-
-=item Errors In Threads
-
-=item Ignoring A Thread
+=item Permissions E<agrave> la mode
 
 =back
 
-=item Threads And Data
+=item Obscure Open Tricks
 
 =over 4
 
-=item Shared And Unshared Data
+=item Re-Opening Files (dups)
 
-=item Thread Pitfall: Races
+=item Dispelling the Dweomer
 
-=item Controlling access: lock()
+=item Paths as Opens
 
-=item Thread Pitfall: Deadlocks
+=item Single Argument Open
 
-=item Queues: Passing Data Around
+=item Playing with STDIN and STDOUT
 
 =back
 
-=item Threads And Code
+=item Other I/O Issues
 
 =over 4
 
-=item Semaphores: Synchronizing Data Access
+=item Opening Non-File Files
 
-Basic semaphores, Advanced Semaphores
+=item Opening Named Pipes
 
-=item Attributes: Restricting Access To Subroutines
+=item Opening Sockets
 
-=item Subroutine Locks
+=item Binary Files
 
-=item Methods
+=item File Locking
 
-=item Locking A Subroutine
+=item IO Layers
 
 =back
 
-=item General Thread Utility Routines
+=item SEE ALSO 
 
-=over 4
+=item AUTHOR and COPYRIGHT
 
-=item What Thread Am I In?
+=item HISTORY
 
-=item Thread IDs
+=back
 
-=item Are These Threads The Same?
+=head2 perlpacktut - tutorial on C<pack> and C<unpack>
 
-=item What Threads Are Running?
+=over 4
 
-=back
+=item DESCRIPTION
 
-=item A Complete Example
+=item The Basic Principle
 
-=item Conclusion
+=item Packing Text
 
-=item Bibliography
+=item Packing Numbers
 
 =over 4
 
-=item Introductory Texts
+=item Integers
 
-=item OS-Related References
+=item Unpacking a Stack Frame
 
-=item Other References
+=item How to Eat an Egg on a Net
+
+=item Floating point Numbers
 
 =back
 
-=item Acknowledgements
+=item Exotic Templates
 
-=item AUTHOR
+=over 4
 
-=item Copyrights
+=item Bit Strings
 
-=back
+=item Uuencoding
 
-=head2 perlport - Writing portable Perl
+=item Doing Sums
 
-=over 4
+=item  Unicode
 
-=item DESCRIPTION
+=item Another Portable Binary Encoding
 
-Not all Perl programs have to be portable, Nearly all of Perl already I<is>
-portable
+=back
 
-=item ISSUES
+=item Template Grouping
 
-=over 4
+=item Lengths and Widths
 
-=item Newlines
+=over 4
 
-=item Numbers endianness and Width
+=item String Lengths
 
-=item Files and Filesystems
+=item Dynamic Templates
 
-=item System Interaction
+=item Counting Repetitions
 
-=item Command names versus file pathnames
+=back
 
-=item Networking
+=item Packing and Unpacking C Structures
 
-=item Interprocess Communication (IPC)
+=over 4
 
-=item External Subroutines (XS)
+=item The Alignment Pit
 
-=item Standard Modules
+=item Alignment, Take 2
 
-=item Time and Date
+=item Alignment, Take 3
 
-=item Character sets and character encoding
+=item Pointers for How to Use Them
 
-=item Internationalisation
+=back
 
-=item System Resources
+=item Pack Recipes
 
-=item Security
+=item Funnies Section
 
-=item Style
+=item Authors
 
 =back
 
-=item CPAN Testers
+=head2 perlpod - the Plain Old Documentation format
 
-Mailing list: cpan-testers@perl.org, Testing results:
-http://testers.cpan.org/
+=over 4
 
-=item PLATFORMS
+=item DESCRIPTION
 
 =over 4
 
-=item Unix
+=item Ordinary Paragraph
 
-=item DOS and Derivatives
+=item Verbatim Paragraph
 
-=item S<Mac OS>
+=item Command Paragraph
 
-=item VMS
-
-=item VOS
-
-=item EBCDIC Platforms
-
-=item Acorn RISC OS
-
-=item Other perls
+C<=head1 I<Heading Text>>, C<=head2 I<Heading Text>>, C<=head3 I<Heading
+Text>>, C<=head4 I<Heading Text>>, C<=over I<indentlevel>>, C<=item
+I<stuff...>>, C<=back>, C<=cut>, C<=pod>, C<=begin I<formatname>>, C<=end
+I<formatname>>, C<=for I<formatname> I<text...>>
 
-=back
+=item Formatting Codes
 
-=item FUNCTION IMPLEMENTATIONS
+C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
+C<CE<lt>codeE<gt>> -- code text, C<LE<lt>nameE<gt>> -- a hyperlink,
+C<EE<lt>escapeE<gt>> -- a character escape, C<FE<lt>filenameE<gt>> -- used
+for filenames, C<SE<lt>textE<gt>> -- text contains non-breaking spaces,
+C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a null
+(zero-effect) formatting code
 
-=over 4
+=item The Intent
 
-=item Alphabetical Listing of Perl Functions
+=item Embedding Pods in Perl Modules
 
--I<X> FILEHANDLE, -I<X> EXPR, -I<X>, alarm SECONDS, alarm, binmode
-FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt
-PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec
-LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock
-FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority
-WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID,
-getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
-getservbyport PORT,PROTO, getpwent, getgrent, gethostbyname, gethostent,
-getnetent, getprotoent, getservent, sethostent STAYOPEN, setnetent
-STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
-endhostent, endnetent, endprotoent, endservent, getsockopt
-SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR,
-kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR,
-lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv
-ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe
-READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
-RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
-KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP,
-setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt
-SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS,
-shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET,
-socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat
-EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
-FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
-FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
-wait, waitpid PID,FLAGS
+=item Hints for Writing Pod
 
 =back
 
-=item CHANGES
-
-v1.49, 12 August 2002, v1.48, 02 February 2001, v1.47, 22 March 2000,
-v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999,
-v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April
-1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December
-1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August
-1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998
-
-=item Supported Platforms
-
 =item SEE ALSO
 
-=item AUTHORS / CONTRIBUTORS
+=item AUTHOR
 
 =back
 
-=head2 perllocale - Perl locale handling (internationalization and
-localization)
+=head2 perlpodspec - Plain Old Documentation: format specification and
+notes
 
 =over 4
 
 =item DESCRIPTION
 
-=item PREPARING TO USE LOCALES
-
-=item USING LOCALES
+=item Pod Definitions
 
-=over 4
+=item Pod Commands
 
-=item The use locale pragma
+"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item",
+"=back", "=begin formatname", "=end formatname", "=for formatname text..."
 
-=item The setlocale function
+=item Pod Formatting Codes
 
-=item Finding locales
+C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
+C<CE<lt>codeE<gt>> -- code text, C<FE<lt>filenameE<gt>> -- style for
+filenames, C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a
+null (zero-effect) formatting code, C<LE<lt>nameE<gt>> -- a hyperlink,
+C<EE<lt>escapeE<gt>> -- a character escape, C<SE<lt>textE<gt>> -- text
+contains non-breaking spaces
 
-=item LOCALE PROBLEMS
+=item Notes on Implementing Pod Processors
 
-=item Temporarily fixing locale problems
+=item About LE<lt>...E<gt> Codes
 
-=item Permanently fixing locale problems
+First:, Second:, Third:, Fourth:, Fifth:, Sixth:
 
-=item Permanently fixing your system's locale configuration
+=item About =over...=back Regions
 
-=item Fixing system locale configuration
+=item About Data Paragraphs and "=begin/=end" Regions
 
-=item The localeconv function
+=item SEE ALSO
 
-=item I18N::Langinfo
+=item AUTHOR
 
 =back
 
-=item LOCALE CATEGORIES
+=head2 perlrun - how to execute the Perl interpreter
 
 =over 4
 
-=item Category LC_COLLATE: Collation
+=item SYNOPSIS
 
-=item Category LC_CTYPE: Character Types
+=item DESCRIPTION
 
-=item Category LC_NUMERIC: Numeric Formatting
+=over 4
 
-=item Category LC_MONETARY: Formatting of monetary amounts
+=item #! and quoting on non-Unix systems
 
-=item LC_TIME
+OS/2, MS-DOS, Win95/NT, Macintosh, VMS
 
-=item Other categories
+=item Location of Perl
 
-=back
+=item Command Switches
 
-=item SECURITY
+B<-0>[I<octal/hexadecimal>], B<-A [I<assertions>]>, B<-a>, B<-C
+[I<number/list>]>, B<-c>, B<-d>, B<-d:>I<foo[=bar,baz]>, B<-D>I<letters>,
+B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
+B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
+B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
+B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
+B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-W>,
+B<-X>, B<-x> I<directory>
+
+=back
 
 =item ENVIRONMENT
 
-PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
-LC_NUMERIC, LC_TIME, LANG
+HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap,
+:perlio, :pop, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB,
+PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS,
+PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_HASH_SEED, PERL_HASH_SEED_DEBUG,
+PERL_ROOT (specific to the VMS port), PERL_SIGNALS, PERL_UNICODE, SYS$LOGIN
+(specific to the VMS port)
 
-=item NOTES
+=back
+
+=head2 perldiag - various Perl diagnostics
 
 =over 4
 
-=item Backward compatibility
+=item DESCRIPTION
 
-=item I18N:Collate obsolete
+=back
 
-=item Sort speed and memory use impacts
+=head2 perllexwarn - Perl Lexical Warnings
 
-=item write() and LC_NUMERIC
+=over 4
 
-=item Freely available locale definitions
+=item DESCRIPTION
 
-=item I18n and l10n
+=over 4
 
-=item An imperfect standard
+=item Default Warnings and Optional Warnings
 
-=back
+=item What's wrong with B<-w> and C<$^W>
 
-=item Unicode and UTF-8
+=item Controlling Warnings from the Command Line
 
-=item BUGS
+B<-w>, B<-W>, B<-X>
 
-=over 4
+=item Backward Compatibility
 
-=item Broken systems
+=item Category Hierarchy
+
+=item Fatal Warnings
+
+=item Reporting Warnings from a Module
 
 =back
 
+=item TODO
+
 =item SEE ALSO
 
-=item HISTORY
+=item AUTHOR
 
 =back
 
-=head2 perluniintro - Perl Unicode introduction
+=head2 perldebug - Perl debugging
 
 =over 4
 
 =item DESCRIPTION
 
-=over 4
-
-=item Unicode
-
-=item Perl's Unicode Support
-
-=item Perl's Unicode Model
+=item The Perl Debugger
 
-=item Unicode and EBCDIC
+=over 4
 
-=item Creating Unicode
+=item Debugger Commands
 
-=item Handling Unicode
+h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y
+[level [vars]], T, s [expr], n [expr], r, <CR>, c [line|sub], l, l
+min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/,
+?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b
+subname [condition], b postpone subname [condition], b load filename, b
+compile subname, B line, B *, a [line] command, A line, A *, w expr, W
+expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [
+command ], < *, << command, > ?, > command, > *, >> command, { ?, { [
+command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source
+file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man
+[manpage]
 
-=item Legacy Encodings
+=item Configurable Options
 
-=item Unicode I/O
+C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
+C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
+C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<windowSize>,
+C<arrayDepth>, C<hashDepth>, C<dumpDepth>, C<compactDump>, C<veryCompact>,
+C<globPrint>, C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<quote>,
+C<HighBit>, C<undefPrint>, C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>,
+C<NonStop>
 
-=item Displaying Unicode As Text
+=item Debugger input/output
 
-=item Special Cases
+Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
+listing
 
-=item Advanced Topics
+=item Debugging compile-time statements
 
-=item Miscellaneous
+=item Debugger Customization
 
-=item Questions With Answers
+=item Readline Support
 
-=item Hexadecimal Notation
+=item Editor Support for Debugging
 
-=item Further Resources
+=item The Perl Profiler
 
 =back
 
-=item UNICODE IN OLDER PERLS
+=item Debugging regular expressions
 
-=item SEE ALSO
+=item Debugging memory usage
 
-=item ACKNOWLEDGMENTS
+=item SEE ALSO
 
-=item AUTHOR, COPYRIGHT, AND LICENSE
+=item BUGS
 
 =back
 
-=head2 perlunicode - Unicode support in Perl
+=head2 perlvar - Perl predefined variables
 
 =over 4
 
@@ -2457,964 +2367,908 @@ LC_NUMERIC, LC_TIME, LANG
 
 =over 4
 
-=item Important Caveats
-
-Input and Output Layers, Regular Expressions, C<use utf8> still needed to
-enable UTF-8/UTF-EBCDIC in scripts
-
-=item Byte and Character Semantics
-
-=item Effects of Character Semantics
-
-=item Scripts
-
-=item Blocks
-
-=item User-Defined Character Properties
-
-=item Character Encodings for Input and Output
-
-=item Unicode Regular Expression Support Level
-
-=item Unicode Encodings
+=item Predefined Names
 
-=item Security Implications of Unicode
-
-=item Unicode in Perl on EBCDIC
+$ARG, $_, $a, $b, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
+$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+,
+HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $,
+IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/,
+HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|,
+IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
+IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS,
+$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
+HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%,
+HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=,
+HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START,
+@-, C<$`> is the same as C<substr($var, 0, $-[0])>, C<$&> is the same as
+C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the same as C<substr($var,
+$+[0])>, C<$1> is the same as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2>
+is the same as C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as
+C<substr $var, $-[3], $+[3] - $-[3])>, HANDLE->format_name(EXPR),
+$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^,
+IO::Handle->format_line_break_characters EXPR,
+$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR,
+$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING},
+$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@,
+$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID,
+$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $),
+$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D,
+$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O,
+${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
+0x100, 0x200, 0x400, $LAST_REGEXP_CODE_RESULT, $^R,
+$EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, ${^UNICODE},
+$PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, $EXECUTABLE_NAME, $^X,
+ARGV, $ARGV, @ARGV, ARGVOUT, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG,
+$SIG{expr}
 
-=item Locales
+=item Error Indicators
 
-=item When Unicode Does Not Happen
+=item Technical Note on the Syntax of Variable Names
 
-=item Forcing Unicode in Perl (Or Unforcing Unicode in Perl)
+=back
 
-=item Using Unicode in XS
+=item BUGS
 
 =back
 
-=item BUGS
+=head2 perlre - Perl regular expressions
 
 =over 4
 
-=item Interaction with Locales
+=item DESCRIPTION
 
-=item Interaction with Extensions
+i, m, s, x
 
-=item Speed
+=over 4
 
-=item Porting code from perl-5.6.X
+=item Regular Expressions
+
+[1], [2], [3], cntrl, graph, print, punct, xdigit
+
+=item Extended Patterns
+
+C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
+C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
+code })>, C<(??{ code })>, C<< (?>pattern) >>,
+C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
+
+=item Backtracking
+
+=item Version 8 Regular Expressions
+
+=item Warning on \1 vs $1
+
+=item Repeated patterns matching zero-length substring
+
+=item Combining pieces together
+
+C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
+C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
+C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
+C<(?(condition)yes-pattern|no-pattern)>
+
+=item Creating custom RE engines
 
 =back
 
+=item BUGS
+
 =item SEE ALSO
 
 =back
 
-=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
+=head2 perlreref - Perl Regular Expressions Reference
 
 =over 4
 
 =item DESCRIPTION
 
-=item COMMON CHARACTER CODE SETS
-
 =over 4
 
-=item ASCII
+=item OPERATORS
 
-=item ISO 8859
+=item SYNTAX
 
-=item Latin 1 (ISO 8859-1)
+=item ESCAPE SEQUENCES
 
-=item EBCDIC
+=item CHARACTER CLASSES
 
-=item 13 variant characters
+=item ANCHORS
 
-=item 0037
+=item QUANTIFIERS
 
-=item 1047
+=item EXTENDED CONSTRUCTS
 
-=item POSIX-BC
+=item VARIABLES
 
-=item Unicode code points versus EBCDIC code points
+=item FUNCTIONS
 
-=item Remaining Perl Unicode problems in EBCDIC
+=item TERMINOLOGY
 
-=item Unicode and UTF
+=back
 
-=item Using Encode
+=item AUTHOR
+
+=item SEE ALSO
+
+=item THANKS
 
 =back
 
-=item SINGLE OCTET TABLES
+=head2 perlref - Perl references and nested data structures
 
-recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
+=over 4
 
-=item IDENTIFYING CHARACTER CODE SETS
+=item NOTE
 
-=item CONVERSIONS
+=item DESCRIPTION
 
 =over 4
 
-=item tr///
+=item Making References
 
-=item iconv
+=item Using References
 
-=item C RTL
+=item Symbolic references
 
-=back
+=item Not-so-symbolic references
 
-=item OPERATOR DIFFERENCES
+=item Pseudo-hashes: Using an array as a hash
 
-=item FUNCTION DIFFERENCES
+=item Function Templates
 
-chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
+=back
 
-=item REGULAR EXPRESSION DIFFERENCES
+=item WARNING
 
-=item SOCKETS
+=item SEE ALSO
 
-=item SORTING
+=back
 
-=over 4
+=head2 perlform - Perl formats
 
-=item Ignore ASCII vs. EBCDIC sort differences.
+=over 4
 
-=item MONO CASE then sort data.
+=item DESCRIPTION
 
-=item Convert, sort data, then re convert.
+=over 4
 
-=item Perform sorting on one type of machine only.
+=item Format Variables
 
 =back
 
-=item TRANSFORMATION FORMATS
+=item NOTES
 
 =over 4
 
-=item URL decoding and encoding
+=item Footers
 
-=item uu encoding and decoding
+=item Accessing Formatting Internals
 
-=item Quoted-Printable encoding and decoding
+=back
 
-=item Caesarian ciphers
+=item WARNINGS
 
 =back
 
-=item Hashing order and checksums
-
-=item I18N AND L10N
+=head2 perlobj - Perl objects
 
-=item MULTI OCTET CHARACTER SETS
+=over 4
 
-=item OS ISSUES
+=item DESCRIPTION
 
 =over 4
 
-=item OS/400
+=item An Object is Simply a Reference
 
-PASE, IFS access
+=item A Class is Simply a Package
 
-=item OS/390, z/OS
+=item A Method is Simply a Subroutine
 
-chcp, dataset access, OS/390, z/OS iconv, locales
+=item Method Invocation
 
-=item VM/ESA?
+=item Indirect Object Syntax
 
-=item POSIX-BC?
+=item Default UNIVERSAL methods
 
-=back
+isa(CLASS), can(METHOD), VERSION( [NEED] )
 
-=item BUGS
+=item Destructors
 
-=item SEE ALSO
+=item Summary
 
-=item REFERENCES
+=item Two-Phased Garbage Collection
 
-=item HISTORY
+=back
 
-=item AUTHOR
+=item SEE ALSO
 
 =back
 
-=head2 perlsec - Perl security
+=head2 perltie - how to hide an object class in a simple variable
 
 =over 4
 
+=item SYNOPSIS
+
 =item DESCRIPTION
 
 =over 4
 
-=item Laundering and Detecting Tainted Data
+=item Tying Scalars
 
-=item Switches On the "#!" Line
+TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
+DESTROY this
 
-=item Cleaning Up Your Path
+=item Tying Arrays
 
-=item Security Bugs
+TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
+FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
+key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this,
+UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY
+this
 
-=item Protecting Your Programs
+=item Tying Hashes
 
-=item Unicode
+USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
+this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
+this, NEXTKEY this, lastkey, UNTIE this, DESTROY this
 
-=item Algorithmic Complexity Attacks
+=item Tying FileHandles
+
+TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
+LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this,
+DESTROY this
+
+=item UNTIE this
+
+=item The C<untie> Gotcha
 
 =back
 
 =item SEE ALSO
 
-=back
+=item BUGS
 
-=head2 perlmod - Perl modules (packages and symbol tables)
+=item AUTHOR
 
-=over 4
+=back
 
-=item DESCRIPTION
+=head2 perldbmfilter - Perl DBM Filters
 
 =over 4
 
-=item Packages
+=item SYNOPSIS
 
-=item Symbol Tables
+=item DESCRIPTION
 
-=item Package Constructors and Destructors
+B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
+B<filter_fetch_value>
 
-=item Perl Classes
+=over 4
 
-=item Perl Modules
+=item The Filter
 
-=item Making your module threadsafe
+=item An Example -- the NULL termination problem.
+
+=item Another Example -- Key is a C int.
 
 =back
 
 =item SEE ALSO
 
+=item AUTHOR
+
 =back
 
-=head2 perlmodinstall - Installing CPAN Modules
+=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
+safe subprocesses, sockets, and semaphores)
 
 =over 4
 
 =item DESCRIPTION
 
+=item Signals
+
 =over 4
 
-=item PREAMBLE
-
-B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
-module (sometimes unnecessary), B<INSTALL> the module
+=item Handling the SIGHUP Signal in Daemons
 
 =back
 
-=item PORTABILITY
+=item Named Pipes
 
-=item HEY
+=over 4
 
-=item AUTHOR
+=item Deferred Signals (Safe signals)
 
-=item COPYRIGHT
+Long running opcodes, Interrupting IO, Restartable system calls, Signals as
+"faults", Signals triggered by operating system state
 
 =back
 
-=head2 perlmodlib - constructing new Perl modules and finding existing ones
+=item Using open() for IPC
 
 =over 4
 
-=item THE PERL MODULE LIBRARY
-
-=over 4
+=item Filehandles
 
-=item Pragmatic Modules
+=item Background Processes
 
-assertions, assertions::activate, attributes, attrs, autouse, base, bigint,
-bignum, bigrat, blib, bytes, charnames, constant, diagnostics, encoding,
-fields, filetest, if, integer, less, lib, locale, open, ops, overload, re,
-sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, version,
-vmsish, warnings, warnings::register
+=item Complete Dissociation of Child from Parent
 
-=item Standard Modules
+=item Safe Pipe Opens
 
-AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata,
-B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug,
-B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash,
-B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp,
-CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util,
-CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA,
-Class::Struct, Config, Cwd, DB, DB_File, Data::Dumper, Devel::DProf,
-Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5,
-DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias, Encode::Byte,
-Encode::CJKConstants, Encode::CN, Encode::CN::HZ, Encode::Config,
-Encode::EBCDIC, Encode::Encoder, Encode::Encoding, Encode::Guess,
-Encode::JP, Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR,
-Encode::KR::2022_KR, Encode::MIME::Header, Encode::PerlIO,
-Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode,
-Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy,
-ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant,
-ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
-ExtUtils::MM, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin,
-ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2,
-ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
-ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker,
-ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Tutorial,
-ExtUtils::MakeMaker::bytes, ExtUtils::MakeMaker::vmsish,
-ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists,
-ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename,
-File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find,
-File::Glob, File::Path, File::Spec, File::Spec::Cygwin, File::Spec::Epoc,
-File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix,
-File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache,
-FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File,
-Getopt::Long, Getopt::Std, Hash::Util, I18N::Collate, I18N::LangTags,
-I18N::LangTags::List, I18N::Langinfo, IO, IO::Dir, IO::File, IO::Handle,
-IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET,
-IO::Socket::UNIX, IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg,
-IPC::SysV::Semaphore, List::Util, Locale::Constants, Locale::Country,
-Locale::Currency, Locale::Language, Locale::Maketext,
-Locale::Maketext::TPJ13, Locale::Script, MIME::Base64,
-MIME::Base64::QuotedPrint, Math::BigFloat, Math::BigInt,
-Math::BigInt::Calc, Math::BigInt::Scalar, Math::BigRat, Math::Complex,
-Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire,
-Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File,
-Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd,
-Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3,
-Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent,
-Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO,
-PerlIO::encoding, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint,
-Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects,
-Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser,
-Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff,
-Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText,
-Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer,
-Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike,
-Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util,
-Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch,
-Symbol, Sys::Hostname, Sys::Syslog, Term::ANSIColor, Term::Cap,
-Term::Complete, Term::ReadLine, Test, Test::Builder, Test::Harness,
-Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps,
-Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced,
-Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread,
-Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific,
-Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Memoize, Tie::RefHash,
-Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::gmtime,
-Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Normalize,
-Unicode::UCD, User::grent, User::pwent, Win32, XS::APItest, XS::Typemap,
-XSLoader
+=item Bidirectional Communication with Another Process
 
-=item Extension Modules
+=item Bidirectional Communication with Yourself
 
 =back
 
-=item CPAN
+=item Sockets: Client/Server Communication
 
 =over 4
 
-=item Africa
-
-South Africa
-
-=item Asia
-
-China, Indonesia, Israel, Japan, Malaysia, Russian Federation, Saudi
-Arabia, Singapore, South Korea, Taiwan
-
-=item Central America
-
-Costa Rica
+=item Internet Line Terminators
 
-=item Europe
+=item Internet TCP Clients and Servers
 
-Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia,
-Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia,
-Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Russia,
-Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United
-Kingdom
+=item Unix-Domain TCP Clients and Servers
 
-=item North America
+=back
 
-Canada, Alberta, Manitoba, Nova Scotia, Ontario, Mexico, United States,
-Alabama, California, Colorado, Delaware, District of Columbia, Florida,
-Illinois, Indiana, Kentucky, Massachusetts, Michigan, Nevada, New Jersey,
-New York, North Carolina, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas,
-Utah, Virginia, Washington, Wisconsin
+=item TCP Clients with IO::Socket
 
-=item Oceania
+=over 4
 
-Australia, New Zealand, United States
+=item A Simple Client
 
-=item South America
+C<Proto>, C<PeerAddr>, C<PeerPort>
 
-Argentina, Brazil, Chile
+=item A Webget Client
 
-=item RSYNC Mirrors
+=item Interactive Client with IO::Socket
 
 =back
 
-=item Modules: Creation, Use, and Abuse
+=item TCP Servers with IO::Socket
 
-=over 4
+Proto, LocalPort, Listen, Reuse
 
-=item Guidelines for Module Creation
+=item UDP: Message Passing
 
-=item Guidelines for Converting Perl 4 Library Scripts into Modules
+=item SysV IPC
 
-=item Guidelines for Reusing Application Code
+=item NOTES
 
-=back
+=item BUGS
 
-=item NOTE
+=item AUTHOR
+
+=item SEE ALSO
 
 =back
 
-=head2 perlmodstyle - Perl module style guide
+=head2 perlfork - Perl's fork() emulation
 
 =over 4
 
-=item INTRODUCTION
+=item SYNOPSIS
 
-=item QUICK CHECKLIST
+=item DESCRIPTION
 
 =over 4
 
-=item Before you start
+=item Behavior of other Perl features in forked pseudo-processes
 
-=item The API
+$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
+filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
+files, directories and network sockets
 
-=item Stability
+=item Resource limits
 
-=item Documentation
+=item Killing the parent process
 
-=item Release considerations
+=item Lifetime of the parent process and pseudo-processes
 
-=back
+=item CAVEATS AND LIMITATIONS
 
-=item BEFORE YOU START WRITING A MODULE
+BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
+Global state maintained by XSUBs, Interpreter embedded in larger
+application, Thread-safety of extensions
 
-=over 4
+=back
 
-=item Has it been done before?
+=item BUGS
 
-=item Do one thing and do it well
+=item AUTHOR
 
-=item What's in a name?
+=item SEE ALSO
 
 =back
 
-=item DESIGNING AND WRITING YOUR MODULE
+=head2 perlnumber - semantics of numbers and numeric operations in Perl
 
 =over 4
 
-=item To OO or not to OO?
+=item SYNOPSIS
 
-=item Designing your API
+=item DESCRIPTION
 
-Write simple routines to do simple things, Separate functionality from
-output, Provide sensible shortcuts and defaults, Naming conventions,
-Parameter passing
+=item Storing numbers
 
-=item Strictness and warnings
+=item Numeric operators and numeric conversions
 
-=item Backwards compatibility
+=item Flavors of Perl numeric operations
 
-=item Error handling and messages
+Arithmetic operators, ++, Arithmetic operators during C<use integer>, Other
+mathematical operators, Bitwise operators, Bitwise operators during C<use
+integer>, Operators which expect an integer, Operators which expect a
+string
+
+=item AUTHOR
+
+=item SEE ALSO
 
 =back
 
-=item DOCUMENTING YOUR MODULE
+=head2 perlthrtut - tutorial on threads in Perl
 
 =over 4
 
-=item POD
-
-=item README, INSTALL, release notes, changelogs
+=item DESCRIPTION
 
-perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build,
-perl Build test, perl Build install
+=item Status
 
-=back
+=item What Is A Thread Anyway?
 
-=item RELEASE CONSIDERATIONS
+=item Threaded Program Models
 
 =over 4
 
-=item Version numbering
-
-=item Pre-requisites
-
-=item Testing
+=item Boss/Worker
 
-=item Packaging
+=item Work Crew
 
-=item Licensing
+=item Pipeline
 
 =back
 
-=item COMMON PITFALLS
+=item What kind of threads are Perl threads?
 
-=over 4
+=item Thread-Safe Modules
 
-=item Reinventing the wheel
+=item Thread Basics
 
-=item Trying to do too much
+=over 4
 
-=item Inappropriate documentation
+=item Basic Thread Support
 
-=back
+=item A Note about the Examples
 
-=item SEE ALSO
+=item Creating Threads
 
-L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Packaging Tools,
-Testing tools, http://pause.perl.org/, Any good book on software
-engineering
+=item Waiting For A Thread To Exit
 
-=item AUTHOR
+=item Ignoring A Thread
 
 =back
 
-=head2 perlnewmod - preparing a new module for distribution
+=item Threads And Data
 
 =over 4
 
-=item DESCRIPTION
+=item Shared And Unshared Data
 
-=over 4
+=item Thread Pitfalls: Races
 
-=item Warning
+=back
 
-=item What should I make into a module?
+=item Synchronization and control
 
-=item Step-by-step: Preparing the ground
+=over 4
 
-Look around, Check it's new, Discuss the need, Choose a name, Check again
+=item Controlling access: lock()
 
-=item Step-by-step: Making the module
+=item A Thread Pitfall: Deadlocks
 
-Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
-L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
-documentation|perlpod>, Write tests, Write the README
+=item Queues: Passing Data Around
 
-=item Step-by-step: Distributing your module
+=item Semaphores: Synchronizing Data Access
 
-Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
-tarball, Announce to the modules list, Announce to clpa, Fix bugs!
+=item Basic semaphores
 
-=back
+=item Advanced Semaphores
 
-=item AUTHOR
+=item cond_wait() and cond_signal()
 
-=item SEE ALSO
+=item Giving up control
 
 =back
 
-=head2 perlfaq1 - General Questions About Perl ($Revision: 1.12 $, $Date:
-2003/07/09 15:47:28 $)
+=item General Thread Utility Routines
 
 =over 4
 
-=item DESCRIPTION
+=item What Thread Am I In?
 
-=over 4
+=item Thread IDs
 
-=item What is Perl?
+=item Are These Threads The Same?
 
-=item Who supports Perl?  Who develops it?  Why is it free?
+=item What Threads Are Running?
 
-=item Which version of Perl should I use?
+=back
 
-=item What are perl4 and perl5?
+=item A Complete Example
 
-=item What is Ponie?
+=item Different implementations of threads
 
-=item What is perl6?
+=item Performance considerations
 
-=item How stable is Perl?
+=item Process-scope Changes
 
-=item Is Perl difficult to learn?
+=item Thread-Safety of System Libraries
 
-=item How does Perl compare with other languages like Java, Python, REXX,
-Scheme, or Tcl?
+=item Conclusion
 
-=item Can I do [task] in Perl?
+=item Bibliography
 
-=item When shouldn't I program in Perl?
+=over 4
 
-=item What's the difference between "perl" and "Perl"?
+=item Introductory Texts
 
-=item Is it a Perl program or a Perl script?
+=item OS-Related References
 
-=item What is a JAPH?
+=item Other References
 
-=item Where can I get a list of Larry Wall witticisms?
+=back
 
-=item How can I convince my sysadmin/supervisor/employees to use version
-5/5.6.1/Perl instead of some other language?
+=item Acknowledgements
 
-=back
+=item AUTHOR
 
-=item AUTHOR AND COPYRIGHT
+=item Copyrights
 
 =back
 
-=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.20 $,
-$Date: 2003/01/26 17:50:56 $)
+=head2 perlothrtut - old tutorial on threads in Perl
 
 =over 4
 
 =item DESCRIPTION
 
-=over 4
-
-=item What machines support Perl?  Where do I get it?
-
-=item How can I get a binary version of Perl?
-
-=item I don't have a C compiler on my system.  How can I compile perl?
-
-=item I copied the Perl binary from one machine to another, but scripts
-don't work.
+=item What Is A Thread Anyway?
 
-=item I grabbed the sources and tried to compile but gdbm/dynamic
-loading/malloc/linking/... failed.  How do I make it work?
+=item Threaded Program Models
 
-=item What modules and extensions are available for Perl?  What is CPAN? 
-What does CPAN/src/... mean?
+=over 4
 
-=item Is there an ISO or ANSI certified version of Perl?
+=item Boss/Worker
 
-=item Where can I get information on Perl?
+=item Work Crew
 
-=item What are the Perl newsgroups on Usenet?  Where do I post questions?
+=item Pipeline
 
-=item Where should I post source code?
+=back
 
-=item Perl Books
+=item Native threads
 
-References, Tutorials, Task-Oriented, Special Topics
+=item What kind of threads are perl threads?
 
-=item Perl in Magazines
+=item Threadsafe Modules
 
-=item Perl on the Net: FTP and WWW Access
+=item Thread Basics
 
-=item What mailing lists are there for Perl?
+=over 4
 
-=item Archives of comp.lang.perl.misc
+=item Basic Thread Support
 
-=item Where can I buy a commercial version of Perl?
+=item Creating Threads
 
-=item Where do I send bug reports?
+=item Giving up control
 
-=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
+=item Waiting For A Thread To Exit
 
-=back
+=item Errors In Threads
 
-=item AUTHOR AND COPYRIGHT
+=item Ignoring A Thread
 
 =back
 
-=head2 perlfaq3 - Programming Tools ($Revision: 1.33 $, $Date: 2003/01/31
-17:34:56 $)
-
-=over 4
-
-=item DESCRIPTION
+=item Threads And Data
 
 =over 4
 
-=item How do I do (anything)?
-
-=item How can I use Perl interactively?
-
-=item Is there a Perl shell?
-
-=item How do I find which modules are installed on my system?
+=item Shared And Unshared Data
 
-=item How do I debug my Perl programs?
+=item Thread Pitfall: Races
 
-=item How do I profile my Perl programs?
+=item Controlling access: lock()
 
-=item How do I cross-reference my Perl programs?
+=item Thread Pitfall: Deadlocks
 
-=item Is there a pretty-printer (formatter) for Perl?
+=item Queues: Passing Data Around
 
-=item Is there a ctags for Perl?
+=back
 
-=item Is there an IDE or Windows Perl Editor?
+=item Threads And Code
 
-Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, OptiPerl,
-GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright,
-MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
+=over 4
 
-=item Where can I get Perl macros for vi?
+=item Semaphores: Synchronizing Data Access
 
-=item Where can I get perl-mode for emacs?
+Basic semaphores, Advanced Semaphores
 
-=item How can I use curses with Perl?
+=item Attributes: Restricting Access To Subroutines
 
-=item How can I use X or Tk with Perl?
+=item Subroutine Locks
 
-=item How can I generate simple menus without using CGI or Tk?
+=item Methods
 
-=item How can I make my Perl program run faster?
+=item Locking A Subroutine
 
-=item How can I make my Perl program take less memory?
+=back
 
-Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
-stringification, Pass by reference, Tie large variables to disk
+=item General Thread Utility Routines
 
-=item Is it safe to return a reference to local or lexical data?
+=over 4
 
-=item How can I free an array or hash so my program shrinks?
+=item What Thread Am I In?
 
-=item How can I make my CGI script more efficient?
+=item Thread IDs
 
-=item How can I hide the source for my Perl program?
+=item Are These Threads The Same?
 
-=item How can I compile my Perl program into byte code or C?
+=item What Threads Are Running?
 
-=item How can I compile Perl into Java?
+=back
 
-=item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
+=item A Complete Example
 
-=item Can I write useful Perl programs on the command line?
+=item Conclusion
 
-=item Why don't Perl one-liners work on my DOS/Mac/VMS system?
+=item Bibliography
 
-=item Where can I learn about CGI or Web programming in Perl?
+=over 4
 
-=item Where can I learn about object-oriented Perl programming?
+=item Introductory Texts
 
-=item Where can I learn about linking C with Perl? [h2xs, xsubpp]
+=item OS-Related References
 
-=item I've read perlembed, perlguts, etc., but I can't embed perl in
-my C program; what am I doing wrong?
+=item Other References
 
-=item When I tried to run my script, I got this message. What does it mean?
+=back
 
-=item What's MakeMaker?
+=item Acknowledgements
 
-=back
+=item AUTHOR
 
-=item AUTHOR AND COPYRIGHT
+=item Copyrights
 
 =back
 
-=head2 perlfaq4 - Data Manipulation ($Revision: 1.44 $, $Date: 2003/07/28
-17:35:21 $)
+=head2 perlport - Writing portable Perl
 
 =over 4
 
 =item DESCRIPTION
 
-=item Data: Numbers
+Not all Perl programs have to be portable, Nearly all of Perl already I<is>
+portable
+
+=item ISSUES
 
 =over 4
 
-=item Why am I getting long decimals (eg, 19.9499999999999) instead of the
-numbers I should be getting (eg, 19.95)?
+=item Newlines
 
-=item Why isn't my octal data interpreted correctly?
+=item Numbers endianness and Width
 
-=item Does Perl have a round() function?  What about ceil() and floor()? 
-Trig functions?
+=item Files and Filesystems
 
-=item How do I convert between numeric representations?
+=item System Interaction
 
-How do I convert hexadecimal into decimal, How do I convert from decimal to
-hexadecimal, How do I convert from octal to decimal, How do I convert from
-decimal to octal, How do I convert from binary to decimal, How do I convert
-from decimal to binary
+=item Command names versus file pathnames
 
-=item Why doesn't & work the way I want it to?
+=item Networking
 
-=item How do I multiply matrices?
+=item Interprocess Communication (IPC)
 
-=item How do I perform an operation on a series of integers?
+=item External Subroutines (XS)
 
-=item How can I output Roman numerals?
+=item Standard Modules
 
-=item Why aren't my random numbers random?
+=item Time and Date
 
-=item How do I get a random number between X and Y?
+=item Character sets and character encoding
 
-=back
+=item Internationalisation
 
-=item Data: Dates
+=item System Resources
 
-=over 4
+=item Security
 
-=item How do I find the day or week of the year?
+=item Style
 
-=item How can I compare two dates and find the difference?
+=back
 
-=item How can I take a string and turn it into epoch seconds?
+=item CPAN Testers
 
-=item How can I find the Julian Day?
+Mailing list: cpan-testers@perl.org, Testing results:
+http://testers.cpan.org/
 
-=item How do I find yesterday's date?
-
-=item Does Perl have a Year 2000 problem?  Is Perl Y2K compliant?
-
-=back
-
-=item Data: Strings
+=item PLATFORMS
 
 =over 4
 
-=item How do I validate input?
-
-=item How do I unescape a string?
-
-=item How do I remove consecutive pairs of characters?
+=item Unix
 
-=item How do I expand function calls in a string?
+=item DOS and Derivatives
 
-=item How do I find matching/nesting anything?
+=item S<Mac OS>
 
-=item How do I reverse a string?
+=item VMS
 
-=item How do I expand tabs in a string?
+=item VOS
 
-=item How do I reformat a paragraph?
+=item EBCDIC Platforms
 
-=item How can I access or change N characters of a string?
+=item Acorn RISC OS
 
-=item How do I change the Nth occurrence of something?
+=item Other perls
 
-=item How can I count the number of occurrences of a substring within a
-string?
+=back
 
-=item How do I capitalize all the words on one line?
+=item FUNCTION IMPLEMENTATIONS
 
-=item How can I split a [character] delimited string except when inside
-[character]?
+=over 4
 
-=item How do I strip blank space from the beginning/end of a string?
+=item Alphabetical Listing of Perl Functions
 
-=item How do I pad a string with blanks or pad a number with zeroes?
+-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, alarm SECONDS, alarm, binmode
+FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt
+PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec
+LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock
+FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority
+WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID,
+getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
+getservbyport PORT,PROTO, getpwent, getgrent, gethostbyname, gethostent,
+getnetent, getprotoent, getservent, sethostent STAYOPEN, setnetent
+STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
+endhostent, endnetent, endprotoent, endservent, getsockopt
+SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR,
+kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR,
+lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv
+ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe
+READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
+RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
+KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP,
+setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt
+SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS,
+shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET,
+socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat
+EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
+FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
+FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
+wait, waitpid PID,FLAGS
 
-=item How do I extract selected columns from a string?
+=back
 
-=item How do I find the soundex value of a string?
+=item CHANGES
 
-=item How can I expand variables in text strings?
+v1.49, 12 August 2002, v1.48, 02 February 2001, v1.47, 22 March 2000,
+v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999,
+v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April
+1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December
+1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August
+1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998
 
-=item What's wrong with always quoting "$vars"?
+=item Supported Platforms
 
-=item Why don't my E<lt>E<lt>HERE documents work?
+=item SEE ALSO
 
-There must be no space after the E<lt>E<lt> part, There (probably) should
-be a semicolon at the end, You can't (easily) have any space in front of
-the tag
+=item AUTHORS / CONTRIBUTORS
 
 =back
 
-=item Data: Arrays
+=head2 perllocale - Perl locale handling (internationalization and
+localization)
 
 =over 4
 
-=item What is the difference between a list and an array?
-
-=item What is the difference between $array[1] and @array[1]?
-
-=item How can I remove duplicate elements from a list or array?
-
-a), b), c), d), e)
+=item DESCRIPTION
 
-=item How can I tell whether a certain element is contained in a list or
-array?
+=item PREPARING TO USE LOCALES
 
-=item How do I compute the difference of two arrays?  How do I compute the
-intersection of two arrays?
+=item USING LOCALES
 
-=item How do I test whether two arrays or hashes are equal?
+=over 4
 
-=item How do I find the first array element for which a condition is true?
+=item The use locale pragma
 
-=item How do I handle linked lists?
+=item The setlocale function
 
-=item How do I handle circular lists?
+=item Finding locales
 
-=item How do I shuffle an array randomly?
+=item LOCALE PROBLEMS
 
-=item How do I process/modify each element of an array?
+=item Temporarily fixing locale problems
 
-=item How do I select a random element from an array?
+=item Permanently fixing locale problems
 
-=item How do I permute N elements of a list?
+=item Permanently fixing your system's locale configuration
 
-=item How do I sort an array by (anything)?
+=item Fixing system locale configuration
 
-=item How do I manipulate arrays of bits?
+=item The localeconv function
 
-=item Why does defined() return true on empty arrays and hashes?
+=item I18N::Langinfo
 
 =back
 
-=item Data: Hashes (Associative Arrays)
+=item LOCALE CATEGORIES
 
 =over 4
 
-=item How do I process an entire hash?
-
-=item What happens if I add or remove keys from a hash while iterating over
-it?
+=item Category LC_COLLATE: Collation
 
-=item How do I look up a hash element by value?
+=item Category LC_CTYPE: Character Types
 
-=item How can I know how many entries are in a hash?
+=item Category LC_NUMERIC: Numeric Formatting
 
-=item How do I sort a hash (optionally by value instead of key)?
+=item Category LC_MONETARY: Formatting of monetary amounts
 
-=item How can I always keep my hash sorted?
+=item LC_TIME
 
-=item What's the difference between "delete" and "undef" with hashes?
+=item Other categories
 
-=item Why don't my tied hashes make the defined/exists distinction?
+=back
 
-=item How do I reset an each() operation part-way through?
+=item SECURITY
 
-=item How can I get the unique keys from two hashes?
+=item ENVIRONMENT
 
-=item How can I store a multidimensional array in a DBM file?
+PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
+LC_NUMERIC, LC_TIME, LANG
 
-=item How can I make my hash remember the order I put elements into it?
+=item NOTES
 
-=item Why does passing a subroutine an undefined element in a hash create
-it?
+=over 4
 
-=item How can I make the Perl equivalent of a C structure/C++ class/hash or
-array of hashes or arrays?
+=item Backward compatibility
 
-=item How can I use a reference as a hash key?
+=item I18N:Collate obsolete
 
-=back
+=item Sort speed and memory use impacts
 
-=item Data: Misc
+=item write() and LC_NUMERIC
 
-=over 4
+=item Freely available locale definitions
 
-=item How do I handle binary data correctly?
+=item I18n and l10n
 
-=item How do I determine whether a scalar is a number/whole/integer/float?
+=item An imperfect standard
 
-=item How do I keep persistent data across program calls?
+=back
 
-=item How do I print out or copy a recursive data structure?
+=item Unicode and UTF-8
 
-=item How do I define methods for every class/object?
+=item BUGS
 
-=item How do I verify a credit card checksum?
+=over 4
 
-=item How do I pack arrays of doubles or floats for XS code?
+=item Broken systems
 
 =back
 
-=item AUTHOR AND COPYRIGHT
+=item SEE ALSO
+
+=item HISTORY
 
 =back
 
-=head2 perlfaq5 - Files and Formats ($Revision: 1.28 $, $Date: 2003/01/26
-17:45:46 $)
+=head2 perluniintro - Perl Unicode introduction
 
 =over 4
 
@@ -3422,162 +3276,238 @@ array of hashes or arrays?
 
 =over 4
 
-=item How do I flush/unbuffer an output filehandle?  Why must I do this?
+=item Unicode
 
-=item How do I change one line in a file/delete a line in a file/insert a
-line in the middle of a file/append to the beginning of a file?
+=item Perl's Unicode Support
 
-=item How do I count the number of lines in a file?
+=item Perl's Unicode Model
 
-=item How can I use Perl's C<-i> option from within a program?
+=item Unicode and EBCDIC
 
-=item How do I make a temporary file name?
+=item Creating Unicode
 
-=item How can I manipulate fixed-record-length files?
+=item Handling Unicode
 
-=item How can I make a filehandle local to a subroutine?  How do I pass
-filehandles between subroutines?  How do I make an array of filehandles?
+=item Legacy Encodings
 
-=item How can I use a filehandle indirectly?
+=item Unicode I/O
 
-=item How can I set up a footer format to be used with write()?
+=item Displaying Unicode As Text
 
-=item How can I write() into a string?
+=item Special Cases
 
-=item How can I output my numbers with commas added?
+=item Advanced Topics
 
-=item How can I translate tildes (~) in a filename?
+=item Miscellaneous
 
-=item How come when I open a file read-write it wipes it out?
+=item Questions With Answers
 
-=item Why do I sometimes get an "Argument list too long" when I use
-E<lt>*E<gt>?
+=item Hexadecimal Notation
 
-=item Is there a leak/bug in glob()?
+=item Further Resources
 
-=item How can I open a file with a leading ">" or trailing blanks?
+=back
 
-=item How can I reliably rename a file?
+=item UNICODE IN OLDER PERLS
 
-=item How can I lock a file?
+=item SEE ALSO
 
-=item Why can't I just open(FH, "E<gt>file.lock")?
+=item ACKNOWLEDGMENTS
 
-=item I still don't get locking.  I just want to increment the number in
-the file.  How can I do this?
+=item AUTHOR, COPYRIGHT, AND LICENSE
 
-=item All I want to do is append a small amount of text to the end of a
-file.  Do I still have to use locking?
+=back
 
-=item How do I randomly update a binary file?
+=head2 perlunicode - Unicode support in Perl
 
-=item How do I get a file's timestamp in perl?
+=over 4
 
-=item How do I set a file's timestamp in perl?
+=item DESCRIPTION
 
-=item How do I print to more than one file at once?
+=over 4
 
-=item How can I read in an entire file all at once?
+=item Important Caveats
 
-=item How can I read in a file by paragraphs?
+Input and Output Layers, Regular Expressions, C<use utf8> still needed to
+enable UTF-8/UTF-EBCDIC in scripts
 
-=item How can I read a single character from a file?  From the keyboard?
+=item Byte and Character Semantics
 
-=item How can I tell whether there's a character waiting on a filehandle?
+=item Effects of Character Semantics
 
-=item How do I do a C<tail -f> in perl?
+=item Scripts
 
-=item How do I dup() a filehandle in Perl?
+=item Blocks
 
-=item How do I close a file descriptor by number?
+=item User-Defined Character Properties
 
-=item Why can't I use "C:\temp\foo" in DOS paths?  Why doesn't
-`C:\temp\foo.exe` work?
+=item Character Encodings for Input and Output
 
-=item Why doesn't glob("*.*") get all the files?
+=item Unicode Regular Expression Support Level
 
-=item Why does Perl let me delete read-only files?  Why does C<-i> clobber
-protected files?  Isn't this a bug in Perl?
+=item Unicode Encodings
 
-=item How do I select a random line from a file?
+=item Security Implications of Unicode
 
-=item Why do I get weird spaces when I print an array of lines?
+=item Unicode in Perl on EBCDIC
+
+=item Locales
+
+=item When Unicode Does Not Happen
+
+=item Forcing Unicode in Perl (Or Unforcing Unicode in Perl)
+
+=item Using Unicode in XS
 
 =back
 
-=item AUTHOR AND COPYRIGHT
+=item BUGS
+
+=over 4
+
+=item Interaction with Locales
+
+=item Interaction with Extensions
+
+=item Speed
+
+=item Porting code from perl-5.6.X
 
 =back
 
-=head2 perlfaq6 - Regular Expressions ($Revision: 1.20 $, $Date: 2003/01/03
-20:05:28 $)
+=item SEE ALSO
+
+=back
+
+=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
 
 =over 4
 
 =item DESCRIPTION
 
+=item COMMON CHARACTER CODE SETS
+
 =over 4
 
-=item How can I hope to use regular expressions without creating illegible
-and unmaintainable code?
+=item ASCII
 
-Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
+=item ISO 8859
 
-=item I'm having trouble matching over more than one line.  What's wrong?
+=item Latin 1 (ISO 8859-1)
 
-=item How can I pull out lines between two patterns that are themselves on
-different lines?
+=item EBCDIC
 
-=item I put a regular expression into $/ but it didn't work. What's wrong?
+=item 13 variant characters
 
-=item How do I substitute case insensitively on the LHS while preserving
-case on the RHS?
+=item 0037
 
-=item How can I make C<\w> match national character sets?
+=item 1047
 
-=item How can I match a locale-smart version of C</[a-zA-Z]/>?
+=item POSIX-BC
 
-=item How can I quote a variable to use in a regex?
+=item Unicode code points versus EBCDIC code points
 
-=item What is C</o> really for?
+=item Remaining Perl Unicode problems in EBCDIC
 
-=item How do I use a regular expression to strip C style comments from a
-file?
+=item Unicode and UTF
 
-=item Can I use Perl regular expressions to match balanced text?
+=item Using Encode
 
-=item What does it mean that regexes are greedy?  How can I get around it?
+=back
 
-=item How do I process each word on each line?
+=item SINGLE OCTET TABLES
 
-=item How can I print out a word-frequency or line-frequency summary?
+recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
 
-=item How can I do approximate matching?
+=item IDENTIFYING CHARACTER CODE SETS
 
-=item How do I efficiently match many regular expressions at once?
+=item CONVERSIONS
 
-=item Why don't word-boundary searches with C<\b> work for me?
+=over 4
 
-=item Why does using $&, $`, or $' slow my program down?
+=item tr///
 
-=item What good is C<\G> in a regular expression?
+=item iconv
 
-=item Are Perl regexes DFAs or NFAs?  Are they POSIX compliant?
+=item C RTL
 
-=item What's wrong with using grep or map in a void context?
+=back
 
-=item How can I match strings with multibyte characters?
+=item OPERATOR DIFFERENCES
 
-=item How do I match a pattern that is supplied by the user?
+=item FUNCTION DIFFERENCES
+
+chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
+
+=item REGULAR EXPRESSION DIFFERENCES
+
+=item SOCKETS
+
+=item SORTING
+
+=over 4
+
+=item Ignore ASCII vs. EBCDIC sort differences.
+
+=item MONO CASE then sort data.
+
+=item Convert, sort data, then re convert.
+
+=item Perform sorting on one type of machine only.
 
 =back
 
-=item AUTHOR AND COPYRIGHT
+=item TRANSFORMATION FORMATS
+
+=over 4
+
+=item URL decoding and encoding
+
+=item uu encoding and decoding
+
+=item Quoted-Printable encoding and decoding
+
+=item Caesarian ciphers
 
 =back
 
-=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.15 $, $Date:
-2003/07/24 02:17:21 $)
+=item Hashing order and checksums
+
+=item I18N AND L10N
+
+=item MULTI OCTET CHARACTER SETS
+
+=item OS ISSUES
+
+=over 4
+
+=item OS/400
+
+PASE, IFS access
+
+=item OS/390, z/OS
+
+chcp, dataset access, OS/390, z/OS iconv, locales
+
+=item VM/ESA?
+
+=item POSIX-BC?
+
+=back
+
+=item BUGS
+
+=item SEE ALSO
+
+=item REFERENCES
+
+=item HISTORY
+
+=item AUTHOR
+
+=back
+
+=head2 perlsec - Perl security
 
 =over 4
 
@@ -3585,209 +3515,332 @@ file?
 
 =over 4
 
-=item Can I get a BNF/yacc/RE for the Perl language?
+=item Laundering and Detecting Tainted Data
 
-=item What are all these $@%&* punctuation signs, and how do I know when to
-use them?
+=item Switches On the "#!" Line
 
-=item Do I always/never have to quote my strings or use semicolons and
-commas?
+=item Cleaning Up Your Path
 
-=item How do I skip some return values?
+=item Security Bugs
 
-=item How do I temporarily block warnings?
+=item Protecting Your Programs
 
-=item What's an extension?
+=item Unicode
 
-=item Why do Perl operators have different precedence than C operators?
+=item Algorithmic Complexity Attacks
 
-=item How do I declare/create a structure?
+=back
 
-=item How do I create a module?
+=item SEE ALSO
 
-=item How do I create a class?
+=back
 
-=item How can I tell if a variable is tainted?
+=head2 perlmod - Perl modules (packages and symbol tables)
 
-=item What's a closure?
+=over 4
 
-=item What is variable suicide and how can I prevent it?
+=item DESCRIPTION
 
-=item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
-Regex}?
+=over 4
 
-Passing Variables and Functions, Passing Filehandles, Passing Regexes,
-Passing Methods
+=item Packages
 
-=item How do I create a static variable?
+=item Symbol Tables
 
-=item What's the difference between dynamic and lexical (static) scoping? 
-Between local() and my()?
+=item Package Constructors and Destructors
 
-=item How can I access a dynamic variable while a similarly named lexical
-is in scope?
+=item Perl Classes
 
-=item What's the difference between deep and shallow binding?
+=item Perl Modules
 
-=item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?
+=item Making your module threadsafe
 
-=item How do I redefine a builtin function, operator, or method?
+=back
 
-=item What's the difference between calling a function as &foo and foo()?
+=item SEE ALSO
 
-=item How do I create a switch or case statement?
+=back
 
-=item How can I catch accesses to undefined variables, functions, or
-methods?
+=head2 perlmodlib - constructing new Perl modules and finding existing ones
 
-=item Why can't a method included in this same file be found?
+=over 4
 
-=item How can I find out my current package?
+=item THE PERL MODULE LIBRARY
 
-=item How can I comment out a large block of perl code?
+=over 4
 
-=item How do I clear a package?
+=item Pragmatic Modules
 
-=item How can I use a variable as a variable name?
+assertions, assertions::activate, attributes, attrs, autouse, base, bigint,
+bignum, bigrat, blib, bytes, charnames, constant, diagnostics, encoding,
+fields, filetest, if, integer, less, lib, locale, open, ops, overload, re,
+sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, version,
+vmsish, warnings, warnings::register
 
-=item What does "bad interpreter" mean?
+=item Standard Modules
+
+AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata,
+B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug,
+B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash,
+B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp,
+CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util,
+CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA,
+Class::Struct, Config, Cwd, DB, DB_File, Data::Dumper, Devel::DProf,
+Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5,
+DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias, Encode::Byte,
+Encode::CJKConstants, Encode::CN, Encode::CN::HZ, Encode::Config,
+Encode::EBCDIC, Encode::Encoder, Encode::Encoding, Encode::Guess,
+Encode::JP, Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR,
+Encode::KR::2022_KR, Encode::MIME::Header, Encode::PerlIO,
+Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode,
+Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy,
+ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant,
+ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
+ExtUtils::MM, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin,
+ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2,
+ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
+ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker,
+ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Tutorial,
+ExtUtils::MakeMaker::bytes, ExtUtils::MakeMaker::vmsish,
+ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists,
+ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename,
+File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find,
+File::Glob, File::Path, File::Spec, File::Spec::Cygwin, File::Spec::Epoc,
+File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix,
+File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache,
+FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File,
+Getopt::Long, Getopt::Std, Hash::Util, I18N::Collate, I18N::LangTags,
+I18N::LangTags::List, I18N::Langinfo, IO, IO::Dir, IO::File, IO::Handle,
+IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET,
+IO::Socket::UNIX, IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg,
+IPC::SysV::Semaphore, List::Util, Locale::Constants, Locale::Country,
+Locale::Currency, Locale::Language, Locale::Maketext,
+Locale::Maketext::TPJ13, Locale::Script, MIME::Base64,
+MIME::Base64::QuotedPrint, Math::BigFloat, Math::BigInt,
+Math::BigInt::Calc, Math::BigInt::Scalar, Math::BigRat, Math::Complex,
+Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire,
+Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File,
+Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd,
+Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3,
+Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent,
+Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO,
+PerlIO::encoding, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint,
+Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects,
+Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser,
+Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff,
+Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText,
+Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer,
+Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike,
+Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util,
+Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch,
+Symbol, Sys::Hostname, Sys::Syslog, Term::ANSIColor, Term::Cap,
+Term::Complete, Term::ReadLine, Test, Test::Builder, Test::Harness,
+Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps,
+Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced,
+Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread,
+Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific,
+Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Memoize, Tie::RefHash,
+Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::gmtime,
+Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Normalize,
+Unicode::UCD, User::grent, User::pwent, Win32, XS::APItest, XS::Typemap,
+XSLoader
+
+=item Extension Modules
 
 =back
 
-=item AUTHOR AND COPYRIGHT
+=item CPAN
+
+=over 4
+
+=item Africa
+
+South Africa
+
+=item Asia
+
+China, Indonesia, Israel, Japan, Malaysia, Russian Federation, Saudi
+Arabia, Singapore, South Korea, Taiwan
+
+=item Central America
+
+Costa Rica
+
+=item Europe
+
+Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia,
+Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia,
+Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Russia,
+Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United
+Kingdom
+
+=item North America
+
+Canada, Alberta, Manitoba, Nova Scotia, Ontario, Mexico, United States,
+Alabama, California, Colorado, Delaware, District of Columbia, Florida,
+Illinois, Indiana, Kentucky, Massachusetts, Michigan, Nevada, New Jersey,
+New York, North Carolina, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas,
+Utah, Virginia, Washington, Wisconsin
+
+=item Oceania
+
+Australia, New Zealand, United States
+
+=item South America
+
+Argentina, Brazil, Chile
+
+=item RSYNC Mirrors
 
 =back
 
-=head2 perlfaq8 - System Interaction ($Revision: 1.17 $, $Date: 2003/01/26
-17:44:04 $)
+=item Modules: Creation, Use, and Abuse
 
 =over 4
 
-=item DESCRIPTION
+=item Guidelines for Module Creation
+
+=item Guidelines for Converting Perl 4 Library Scripts into Modules
+
+=item Guidelines for Reusing Application Code
+
+=back
+
+=item NOTE
+
+=back
+
+=head2 perlmodstyle - Perl module style guide
 
 =over 4
 
-=item How do I find out which operating system I'm running under?
+=item INTRODUCTION
 
-=item How come exec() doesn't return?
+=item QUICK CHECKLIST
 
-=item How do I do fancy stuff with the keyboard/screen/mouse?
+=over 4
 
-Keyboard, Screen, Mouse
+=item Before you start
 
-=item How do I print something out in color?
+=item The API
 
-=item How do I read just one key without waiting for a return key?
+=item Stability
 
-=item How do I check whether input is ready on the keyboard?
+=item Documentation
 
-=item How do I clear the screen?
+=item Release considerations
 
-=item How do I get the screen size?
+=back
 
-=item How do I ask the user for a password?
+=item BEFORE YOU START WRITING A MODULE
 
-=item How do I read and write the serial port?
+=over 4
 
-lockfiles, open mode, end of line, flushing output, non-blocking input
+=item Has it been done before?
 
-=item How do I decode encrypted password files?
+=item Do one thing and do it well
 
-=item How do I start a process in the background?
+=item What's in a name?
 
-STDIN, STDOUT, and STDERR are shared, Signals, Zombies
+=back
 
-=item How do I trap control characters/signals?
+=item DESIGNING AND WRITING YOUR MODULE
 
-=item How do I modify the shadow password file on a Unix system?
+=over 4
 
-=item How do I set the time and date?
+=item To OO or not to OO?
 
-=item How can I sleep() or alarm() for under a second?
+=item Designing your API
 
-=item How can I measure time under a second?
+Write simple routines to do simple things, Separate functionality from
+output, Provide sensible shortcuts and defaults, Naming conventions,
+Parameter passing
 
-=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
+=item Strictness and warnings
 
-=item Why doesn't my sockets program work under System V (Solaris)?  What
-does the error message "Protocol not supported" mean?
+=item Backwards compatibility
 
-=item How can I call my system's unique C functions from Perl?
+=item Error handling and messages
 
-=item Where do I get the include files to do ioctl() or syscall()?
+=back
 
-=item Why do setuid perl scripts complain about kernel problems?
+=item DOCUMENTING YOUR MODULE
 
-=item How can I open a pipe both to and from a command?
+=over 4
 
-=item Why can't I get the output of a command with system()?
+=item POD
+
+=item README, INSTALL, release notes, changelogs
+
+perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build,
+perl Build test, perl Build install
+
+=back
+
+=item RELEASE CONSIDERATIONS
 
-=item How can I capture STDERR from an external command?
+=over 4
 
-=item Why doesn't open() return an error when a pipe open fails?
+=item Version numbering
 
-=item What's wrong with using backticks in a void context?
+=item Pre-requisites
 
-=item How can I call backticks without shell processing?
+=item Testing
 
-=item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
-^Z on MS-DOS)?
+=item Packaging
 
-=item How can I convert my shell script to perl?
+=item Licensing
 
-=item Can I use perl to run a telnet or ftp session?
+=back
 
-=item How can I write expect in Perl?
+=item COMMON PITFALLS
 
-=item Is there a way to hide perl's command line from programs such as
-"ps"?
+=over 4
 
-=item I {changed directory, modified my environment} in a perl script. How
-come the change disappeared when I exited the script?  How do I get my
-changes to be visible?
+=item Reinventing the wheel
 
-Unix
+=item Trying to do too much
 
-=item How do I close a process's filehandle without waiting for it to
-complete?
+=item Inappropriate documentation
 
-=item How do I fork a daemon process?
+=back
 
-=item How do I find out if I'm running interactively or not?
+=item SEE ALSO
 
-=item How do I timeout a slow event?
+L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Packaging Tools,
+Testing tools, http://pause.perl.org/, Any good book on software
+engineering
 
-=item How do I set CPU limits?
+=item AUTHOR
 
-=item How do I avoid zombies on a Unix system?
+=back
 
-=item How do I use an SQL database?
+=head2 perlmodinstall - Installing CPAN Modules
 
-=item How do I make a system() exit on control-C?
+=over 4
 
-=item How do I open a file without blocking?
+=item DESCRIPTION
 
-=item How do I install a module from CPAN?
+=over 4
 
-=item What's the difference between require and use?
+=item PREAMBLE
 
-=item How do I keep my own module/library directory?
+B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
+module (sometimes unnecessary), B<INSTALL> the module
 
-=item How do I add the directory my program lives in to the module/library
-search path?
+=back
 
-=item How do I add a directory to my include path at runtime?
+=item PORTABILITY
 
-=item What is socket.ph and where do I get it?
+=item HEY
 
-=back
+=item AUTHOR
 
-=item AUTHOR AND COPYRIGHT
+=item COPYRIGHT
 
 =back
 
-=head2 perlfaq9 - Networking ($Revision: 1.15 $, $Date: 2003/01/31 17:36:57
-$)
+=head2 perlnewmod - preparing a new module for distribution
 
 =over 4
 
@@ -3795,65 +3848,65 @@ $)
 
 =over 4
 
-=item What is the correct form of response from a CGI script?
-
-=item My CGI script runs from the command line but not the browser.  (500
-Server Error)
+=item Warning
 
-=item How can I get better error messages from a CGI program?
+=item What should I make into a module?
 
-=item How do I remove HTML from a string?
+=item Step-by-step: Preparing the ground
 
-=item How do I extract URLs?
+Look around, Check it's new, Discuss the need, Choose a name, Check again
 
-=item How do I download a file from the user's machine?  How do I open a
-file on another machine?
+=item Step-by-step: Making the module
 
-=item How do I make a pop-up menu in HTML?
+Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
+L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
+documentation|perlpod>, Write tests, Write the README
 
-=item How do I fetch an HTML file?
+=item Step-by-step: Distributing your module
 
-=item How do I automate an HTML form submission?
+Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
+tarball, Announce to the modules list, Announce to clpa, Fix bugs!
 
-=item How do I decode or create those %-encodings on the web?
+=back
 
-=item How do I redirect to another page?
+=item AUTHOR
 
-=item How do I put a password on my web pages?
+=item SEE ALSO
 
-=item How do I edit my .htpasswd and .htgroup files with Perl?
+=back
 
-=item How do I make sure users can't enter values into a form that cause my
-CGI script to do bad things?
+=head2 perlutil - utilities packaged with the Perl distribution
 
-=item How do I parse a mail header?
+=over 4
 
-=item How do I decode a CGI form?
+=item DESCRIPTION
 
-=item How do I check a valid mail address?
+=over 4
 
-=item How do I decode a MIME/BASE64 string?
+=item DOCUMENTATION
 
-=item How do I return the user's mail address?
+L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>,
+L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>,
+L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>,
+L<roffitall|roffitall>
 
-=item How do I send mail?
+=item CONVERTORS
 
-=item How do I use MIME to make an attachment to a mail message?
+L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
 
-=item How do I read mail?
+=item Administration
 
-=item How do I find out my hostname/domainname/IP address?
+L<libnetcfg|libnetcfg>
 
-=item How do I fetch a news article or the active newsgroups?
+=item Development
 
-=item How do I fetch/put an FTP file?
+L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
+L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
 
-=item How can I do RPC in Perl?
+=item SEE ALSO
 
 =back
 
-=item AUTHOR AND COPYRIGHT
-
 =back
 
 =head2 perlcompile - Introduction to the Perl Compiler-Translator 
@@ -3902,6 +3955,42 @@ B::Stackobj, B::Stash, B::Terse, B::Xref
 
 =back
 
+=head2 perlfilter - Source Filters
+
+=over 4
+
+=item DESCRIPTION
+
+=item CONCEPTS
+
+=item USING FILTERS
+
+=item WRITING A SOURCE FILTER
+
+=item WRITING A SOURCE FILTER IN C
+
+B<Decryption Filters>
+
+=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
+
+=item WRITING A SOURCE FILTER IN PERL
+
+=item USING CONTEXT: THE DEBUG FILTER
+
+=item CONCLUSION
+
+=item THINGS TO LOOK OUT FOR
+
+Some Filters Clobber the C<DATA> Handle
+
+=item REQUIREMENTS
+
+=item AUTHOR
+
+=item Copyrights
+
+=back
+
 =head2 perlembed - how to embed perl in your C program
 
 =over 4
@@ -4402,186 +4491,87 @@ A, p, d, s, n, r, f, M, o, j, x
 
 =item Custom Operators
 
-=item AUTHORS
-
-=item SEE ALSO
-
-=back
-
-=head2 perlcall - Perl calling conventions from C
-
-=over 4
-
-=item DESCRIPTION
-
-An Error Handler, An Event Driven Program
-
-=item THE CALL_ FUNCTIONS
-
-call_sv, call_pv, call_method, call_argv
-
-=item FLAG VALUES
-
-=over 4
-
-=item  G_VOID
-
-=item  G_SCALAR
-
-=item G_ARRAY
-
-=item G_DISCARD
-
-=item G_NOARGS
-
-=item G_EVAL
-
-=item G_KEEPERR
-
-=item Determining the Context
-
-=back
-
-=item KNOWN PROBLEMS
-
-=item EXAMPLES
-
-=over 4
-
-=item No Parameters, Nothing returned
-
-=item Passing Parameters
-
-=item Returning a Scalar
-
-=item Returning a list of values
-
-=item Returning a list in a scalar context
-
-=item Returning Data from Perl via the parameter list
-
-=item Using G_EVAL
-
-=item Using G_KEEPERR
-
-=item Using call_sv
-
-=item Using call_argv
-
-=item Using call_method
-
-=item Using GIMME_V
-
-=item Using Perl to dispose of temporaries
-
-=item Strategies for storing Callback Context Information
-
-1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
-callbacks - hard wired limit, 3. Use a parameter to map to the Perl
-callback
-
-=item Alternate Stack Manipulation
-
-=item Creating and calling an anonymous subroutine in C
-
-=back
-
-=item SEE ALSO
-
-=item AUTHOR
+=item AUTHORS
 
-=item DATE
+=item SEE ALSO
 
 =back
 
-=head2 perlutil - utilities packaged with the Perl distribution
+=head2 perlcall - Perl calling conventions from C
 
 =over 4
 
 =item DESCRIPTION
 
-=over 4
-
-=item DOCUMENTATION
-
-L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>,
-L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>,
-L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>,
-L<roffitall|roffitall>
-
-=item CONVERTORS
-
-L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
-
-=item Administration
+An Error Handler, An Event Driven Program
 
-L<libnetcfg|libnetcfg>
+=item THE CALL_ FUNCTIONS
 
-=item Development
+call_sv, call_pv, call_method, call_argv
 
-L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
-L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
+=item FLAG VALUES
 
-=item SEE ALSO
+=over 4
 
-=back
+=item  G_VOID
 
-=back
+=item  G_SCALAR
 
-=head2 perlfilter - Source Filters
+=item G_ARRAY
 
-=over 4
+=item G_DISCARD
 
-=item DESCRIPTION
+=item G_NOARGS
 
-=item CONCEPTS
+=item G_EVAL
 
-=item USING FILTERS
+=item G_KEEPERR
 
-=item WRITING A SOURCE FILTER
+=item Determining the Context
 
-=item WRITING A SOURCE FILTER IN C
+=back
 
-B<Decryption Filters>
+=item KNOWN PROBLEMS
 
-=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
+=item EXAMPLES
 
-=item WRITING A SOURCE FILTER IN PERL
+=over 4
 
-=item USING CONTEXT: THE DEBUG FILTER
+=item No Parameters, Nothing returned
 
-=item CONCLUSION
+=item Passing Parameters
 
-=item THINGS TO LOOK OUT FOR
+=item Returning a Scalar
 
-Some Filters Clobber the C<DATA> Handle
+=item Returning a list of values
 
-=item REQUIREMENTS
+=item Returning a list in a scalar context
 
-=item AUTHOR
+=item Returning Data from Perl via the parameter list
 
-=item Copyrights
+=item Using G_EVAL
 
-=back
+=item Using G_KEEPERR
 
-=head2 perldbmfilter - Perl DBM Filters
+=item Using call_sv
 
-=over 4
+=item Using call_argv
 
-=item SYNOPSIS
+=item Using call_method
 
-=item DESCRIPTION
+=item Using GIMME_V
 
-B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
-B<filter_fetch_value>
+=item Using Perl to dispose of temporaries
 
-=over 4
+=item Strategies for storing Callback Context Information
 
-=item The Filter
+1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
+callbacks - hard wired limit, 3. Use a parameter to map to the Perl
+callback
 
-=item An Example -- the NULL termination problem.
+=item Alternate Stack Manipulation
 
-=item Another Example -- Key is a C int.
+=item Creating and calling an anonymous subroutine in C
 
 =back
 
@@ -4589,6 +4579,8 @@ B<filter_fetch_value>
 
 =item AUTHOR
 
+=item DATE
+
 =back
 
 =head2 perlapi - autogenerated documentation for the perl public API
@@ -4788,126 +4780,272 @@ PL_rs
 
 is_gv_magical
 
-=item IO Functions
+=item IO Functions
+
+start_glob
+
+=item Pad Data Structures
+
+CvPADLIST, cv_clone, cv_dump, do_dump_pad, intro_my, pad_add_anon,
+pad_add_name, pad_alloc, pad_block_start, pad_check_dup, pad_findlex,
+pad_findmy, pad_fixup_inner_anons, pad_free, pad_leavemy, pad_new,
+pad_push, pad_reset, pad_setsv, pad_swipe, pad_tidy, pad_undef
+
+=item Stack Manipulation Macros
+
+djSP, LVRET
+
+=item SV Manipulation Functions
+
+report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas
+
+=item AUTHORS
+
+=item SEE ALSO
+
+=back
+
+=head2 perliol - C API for Perl's implementation of IO in Layers.
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=over 4
+
+=item History and Background
+
+=item Layers vs Disciplines
+
+=item Data Structures
+
+=item Functions and Attributes
+
+=item Per-instance Data
+
+=item Layers in action.
+
+=item Per-instance flag bits
+
+PERLIO_F_EOF, PERLIO_F_CANWRITE,  PERLIO_F_CANREAD, PERLIO_F_ERROR,
+PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8,
+PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF,
+PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS
+
+=item Methods in Detail
+
+fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF,
+PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode,
+Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof,
+Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt,
+Set_ptrcnt
+
+=item Implementing PerlIO Layers
+
+C implementations, Perl implementations
+
+=item Core Layers
+
+"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8"
+
+=item Extension Layers
+
+":encoding", ":scalar", ":via"
+
+=back
+
+=item TODO
+
+=back
+
+=head2 perlapio - perl's IO abstraction interface.
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B<PerlIO_stdin()>,
+B<PerlIO_stdout()>, B<PerlIO_stderr()>, B<PerlIO_open(path, mode)>,
+B<PerlIO_fdopen(fd,mode)>, B<PerlIO_reopen(path,mode,f)>,
+B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
+B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
+B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
+B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
+B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
+B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_seek(f,offset,whence)>,
+B<PerlIO_tell(f)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
+B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)>
+
+=over 4
+
+=item Co-existence with stdio
+
+B<PerlIO_importFILE(f,mode)>, B<PerlIO_exportFILE(f,mode)>,
+B<PerlIO_releaseFILE(p,f)>, B<PerlIO_findFILE(f)>
+
+=item "Fast gets" Functions
+
+B<PerlIO_fast_gets(f)>, B<PerlIO_has_cntptr(f)>, B<PerlIO_get_cnt(f)>,
+B<PerlIO_get_ptr(f)>, B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_canset_cnt(f)>,
+B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>, B<PerlIO_get_base(f)>,
+B<PerlIO_get_bufsiz(f)>
+
+=item Other Functions
+
+PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers),
+'E<lt>' read, 'E<gt>' write, '+' read/write, PerlIO_debug(fmt,...)
+
+=back
+
+=back
+
+=head2 perlhack - How to hack at the Perl internals
+
+=over 4
+
+=item DESCRIPTION
+
+Does concept match the general goals of Perl?, Where is the
+implementation?, Backwards compatibility, Could it be a module instead?, Is
+the feature generic enough?, Does it potentially introduce new bugs?, Does
+it preclude other desirable features?, Is the implementation robust?, Is
+the implementation generic enough to be portable?, Is the implementation
+tested?, Is there enough documentation?, Is there another way to do it?,
+Does it create too much work?, Patches speak louder than words
+
+=over 4
+
+=item Keeping in sync
+
+rsync'ing the source tree, Using rsync over the LAN, Using pushing over the
+NFS, rsync'ing the patches
+
+=item Why rsync the source tree
+
+It's easier to rsync the source tree, It's more reliable
+
+=item Why rsync the patches
+
+It's easier to rsync the patches, It's a good reference, Finding a start
+point, Finding how to fix a bug, Finding the source of misbehaviour
+
+=item Perlbug administration
+
+=item Submitting patches
+
+L<perlguts>, L<perlxstut> and L<perlxs>, L<perlapi>,
+F<Porting/pumpkin.pod>, The perl5-porters FAQ
+
+=item Finding Your Way Around
+
+Core modules, Tests, Documentation, Configure, Interpreter
+
+=item Elements of the interpreter
 
-start_glob
+Startup, Parsing, Optimization, Running
 
-=item Pad Data Structures
+=item Internal Variable Types
 
-CvPADLIST, cv_clone, cv_dump, do_dump_pad, intro_my, pad_add_anon,
-pad_add_name, pad_alloc, pad_block_start, pad_check_dup, pad_findlex,
-pad_findmy, pad_fixup_inner_anons, pad_free, pad_leavemy, pad_new,
-pad_push, pad_reset, pad_setsv, pad_swipe, pad_tidy, pad_undef
+=item Op Trees
 
-=item Stack Manipulation Macros
+=item Stacks
 
-djSP, LVRET
+Argument stack, Mark stack, Save stack
 
-=item SV Manipulation Functions
+=item Millions of Macros
 
-report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas
+=item The .i Targets
 
-=item AUTHORS
+=item Poking at Perl
 
-=item SEE ALSO
+=item Using a source-level debugger
 
-=back
+run [args], break function_name, break source.c:xxx, step, next, continue,
+finish, 'enter', print
 
-=head2 perliol - C API for Perl's implementation of IO in Layers.
+=item gdb macro support
 
-=over 4
+=item Dumping Perl Data Structures
 
-=item SYNOPSIS
+=item Patching
 
-=item DESCRIPTION
+=item Patching a core module
 
-=over 4
+=item Adding a new function to the core
 
-=item History and Background
+=item Writing a test
 
-=item Layers vs Disciplines
+F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/op/>,
+F<t/pod/>, F<t/run/>, F<t/uni/>, F<t/win32/>, F<t/x2p>, t/base t/comp,
+t/cmd t/run t/io t/op, t/lib ext lib
 
-=item Data Structures
+=item Special Make Test Targets
 
-=item Functions and Attributes
+coretest, test.deparse, minitest, test.valgrind check.valgrind
+utest.valgrind ucheck.valgrind, test.third check.third utest.third
+ucheck.third, test.torture torturetest, utest ucheck test.utf8 check.utf8,
+test_harness
 
-=item Per-instance Data
+=item Running tests by hand
 
-=item Layers in action.
+PERL_CORE=1, PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST
 
-=item Per-instance flag bits
+=back
 
-PERLIO_F_EOF, PERLIO_F_CANWRITE,  PERLIO_F_CANREAD, PERLIO_F_ERROR,
-PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8,
-PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF,
-PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS
+=item EXTERNAL TOOLS FOR DEBUGGING PERL
 
-=item Methods in Detail
+=over 4
 
-fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF,
-PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode,
-Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof,
-Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt,
-Set_ptrcnt
+=item Rational Software's Purify
 
-=item Implementing PerlIO Layers
+=item Purify on Unix
 
-C implementations, Perl implementations
+-Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity
 
-=item Core Layers
+=item Purify on NT
 
-"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8"
+DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
 
-=item Extension Layers
+=item valgrind
 
-":encoding", ":scalar", ":via"
+=item Compaq's/Digital's/HP's Third Degree
 
-=back
+=item PERL_DESTRUCT_LEVEL
 
-=item TODO
+=item Profiling
 
-=back
+=item Gprof Profiling
 
-=head2 perlapio - perl's IO abstraction interface.
+-a, -b, -e routine, -f routine, -s, -z
 
-=over 4
+=item GCC gcov Profiling
 
-=item SYNOPSIS
+=item Pixie Profiling
 
-=item DESCRIPTION
+-h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage,
+-z[ero]
 
-1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B<PerlIO_stdin()>,
-B<PerlIO_stdout()>, B<PerlIO_stderr()>, B<PerlIO_open(path, mode)>,
-B<PerlIO_fdopen(fd,mode)>, B<PerlIO_reopen(path,mode,f)>,
-B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
-B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
-B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
-B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
-B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
-B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_seek(f,offset,whence)>,
-B<PerlIO_tell(f)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
-B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)>
+=item Miscellaneous tricks
 
-=over 4
+=item CONCLUSION
 
-=item Co-existence with stdio
+I<The Road goes ever on and on, down from the door where it began.>
 
-B<PerlIO_importFILE(f,mode)>, B<PerlIO_exportFILE(f,mode)>,
-B<PerlIO_releaseFILE(p,f)>, B<PerlIO_findFILE(f)>
+=back
 
-=item "Fast gets" Functions
+=item AUTHOR
 
-B<PerlIO_fast_gets(f)>, B<PerlIO_has_cntptr(f)>, B<PerlIO_get_cnt(f)>,
-B<PerlIO_get_ptr(f)>, B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_canset_cnt(f)>,
-B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>, B<PerlIO_get_base(f)>,
-B<PerlIO_get_bufsiz(f)>
+=back
 
-=item Other Functions
+=head2 perlbook - Perl book information
 
-PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers),
-'E<lt>' read, 'E<gt>' write, '+' read/write, PerlIO_debug(fmt,...)
+=over 4
 
-=back
+=item DESCRIPTION
 
 =back
 
@@ -5246,165 +5384,30 @@ goto(LABEL) and friends
 
 =item Remove distinction between functions and operators
 
-=item Make XS easier to use
-
-=item Make embedding easier to use
-
-=item man for perl
-
-=item my $Package::variable
-
-=item "or" tests defined, not truth
-
-=item "class"-based lexicals
-
-=item byteperl
-
-=item Lazy evaluation / tail recursion removal
-
-=item Make "use utf8" the default
-
-=item Unicode collation and normalization
-
-=item pack/unpack tutorial
-
-=back
-
-=back
-
-=head2 perlhack - How to hack at the Perl internals
-
-=over 4
-
-=item DESCRIPTION
-
-Does concept match the general goals of Perl?, Where is the
-implementation?, Backwards compatibility, Could it be a module instead?, Is
-the feature generic enough?, Does it potentially introduce new bugs?, Does
-it preclude other desirable features?, Is the implementation robust?, Is
-the implementation generic enough to be portable?, Is the implementation
-tested?, Is there enough documentation?, Is there another way to do it?,
-Does it create too much work?, Patches speak louder than words
-
-=over 4
-
-=item Keeping in sync
-
-rsync'ing the source tree, Using rsync over the LAN, Using pushing over the
-NFS, rsync'ing the patches
-
-=item Why rsync the source tree
-
-It's easier to rsync the source tree, It's more reliable
-
-=item Why rsync the patches
-
-It's easier to rsync the patches, It's a good reference, Finding a start
-point, Finding how to fix a bug, Finding the source of misbehaviour
-
-=item Perlbug administration
-
-=item Submitting patches
-
-L<perlguts>, L<perlxstut> and L<perlxs>, L<perlapi>,
-F<Porting/pumpkin.pod>, The perl5-porters FAQ
-
-=item Finding Your Way Around
-
-Core modules, Tests, Documentation, Configure, Interpreter
-
-=item Elements of the interpreter
-
-Startup, Parsing, Optimization, Running
-
-=item Internal Variable Types
-
-=item Op Trees
-
-=item Stacks
-
-Argument stack, Mark stack, Save stack
-
-=item Millions of Macros
-
-=item The .i Targets
-
-=item Poking at Perl
-
-=item Using a source-level debugger
-
-run [args], break function_name, break source.c:xxx, step, next, continue,
-finish, 'enter', print
-
-=item gdb macro support
-
-=item Dumping Perl Data Structures
-
-=item Patching
-
-=item Patching a core module
-
-=item Adding a new function to the core
-
-=item Writing a test
-
-F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/op/>,
-F<t/pod/>, F<t/run/>, F<t/uni/>, F<t/win32/>, F<t/x2p>, t/base t/comp,
-t/cmd t/run t/io t/op, t/lib ext lib
-
-=item Special Make Test Targets
-
-coretest, test.deparse, minitest, test.third check.third utest.third
-ucheck.third, test.torture torturetest, utest ucheck test.utf8 check.utf8,
-test_harness
-
-=item Running tests by hand
-
-PERL_CORE=1, PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST
-
-=back
-
-=item EXTERNAL TOOLS FOR DEBUGGING PERL
-
-=over 4
-
-=item Rational Software's Purify
-
-=item Purify on Unix
-
--Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity
-
-=item Purify on NT
-
-DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
-
-=item Compaq's/Digital's/HP's Third Degree
+=item Make XS easier to use
 
-=item PERL_DESTRUCT_LEVEL
+=item Make embedding easier to use
 
-=item Profiling
+=item man for perl
 
-=item Gprof Profiling
+=item my $Package::variable
 
--a, -b, -e routine, -f routine, -s, -z
+=item "or" tests defined, not truth
 
-=item GCC gcov Profiling
+=item "class"-based lexicals
 
-=item Pixie Profiling
+=item byteperl
 
--h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage,
--z[ero]
+=item Lazy evaluation / tail recursion removal
 
-=item Miscellaneous tricks
+=item Make "use utf8" the default
 
-=item CONCLUSION
+=item Unicode collation and normalization
 
-I<The Road goes ever on and on, down from the door where it began.>
+=item pack/unpack tutorial
 
 =back
 
-=item AUTHOR
-
 =back
 
 =head2 perldoc - Look up Perl documentation in Pod format.
@@ -7257,7 +7260,7 @@ long, Process terminated by SIG%s
 
 =back
 
-=head2 perlartistic -- the Perl Artistic License
+=head2 perlartistic - the Perl Artistic License
 
 =over 4
 
@@ -7284,7 +7287,7 @@ a), b), c), d), a), b), c), d)
 
 =back
 
-=head2 perlgpl -- the GNU Public General Public License, version 2
+=head2 perlgpl - the GNU General Public License, version 2
 
 =over 4
 
@@ -7334,16 +7337,6 @@ a), b), c), d), a), b), c), d)
 
 =back
 
-=head2 perlapollo, README.apollo - Perl version 5 on Apollo DomainOS
-
-=over 4
-
-=item DESCRIPTION
-
-=item AUTHOR
-
-=back
-
 =head2 perlamiga - Perl under Amiga OS
 
 =over 4
@@ -7410,6 +7403,16 @@ B<Unix emulation for AmigaOS: ixemul.library>, B<Version of Amiga OS>
 
 =back
 
+=head2 perlapollo, README.apollo - Perl version 5 on Apollo DomainOS
+
+=over 4
+
+=item DESCRIPTION
+
+=item AUTHOR
+
+=back
+
 =head2 perlbeos, README.beos - Perl version 5 on BeOS
 
 =over 4
@@ -7549,7 +7552,7 @@ I<dlsym()>, Win9x and C<d_eofnblk>, Compiler/Preprocessor defines
 
 =over 4
 
-=item Warnings on Cygwin
+=item Errors on Cygwin
 
 =item ld2 on Cygwin
 
@@ -7866,17 +7869,23 @@ op/lexassign.t, pragma/warnings.t
 
 =item DESCRIPTION
 
-=item INSTALLATION PREFIX
+=over 4
+
+=item Installation Prefix
+
+=item libperl and Prebinding
 
-=item LIBPERL AND PREBINDING
+=item Updating Panther
 
-=item UPDATING PANTHER
+=item Known problems
 
-=item MACPERL
+=item MacPerl
 
-=item CARBON
+=item Carbon
 
-=item COCOA
+=item Cocoa
+
+=back
 
 =item AUTHOR
 
@@ -8306,7 +8315,7 @@ and z/OS
 
 =back
 
-=head2 perlqnx, README.qnx - Perl version 5 on QNX
+=head2 perlplan9 - Plan 9-specific documentation for Perl
 
 =over 4
 
@@ -8314,25 +8323,35 @@ and z/OS
 
 =over 4
 
-=item Required Software for Compiling Perl on QNX4
+=item Invoking Perl
 
-/bin/sh, ar, nm, cpp, make
+=item What's in Plan 9 Perl
 
-=item Outstanding Issues with Perl on QNX4
+=item What's not in Plan 9 Perl
 
-=item QNX auxiliary files
+=item Perl5 Functions not currently supported in Plan 9 Perl
 
-qnx/ar, qnx/cpp
+=item Signals in Plan 9 Perl
 
-=item Outstanding issues with perl under QNX6
+=back
+
+=item COMPILING AND INSTALLING PERL ON PLAN 9
+
+=over 4
+
+=item Installing Perl Documentation on Plan 9
 
 =back
 
+=item BUGS
+
+=item Revision date
+
 =item AUTHOR
 
 =back
 
-=head2 perlplan9 - Plan 9-specific documentation for Perl
+=head2 perlqnx, README.qnx - Perl version 5 on QNX
 
 =over 4
 
@@ -8340,30 +8359,20 @@ qnx/ar, qnx/cpp
 
 =over 4
 
-=item Invoking Perl
-
-=item What's in Plan 9 Perl
-
-=item What's not in Plan 9 Perl
-
-=item Perl5 Functions not currently supported in Plan 9 Perl
+=item Required Software for Compiling Perl on QNX4
 
-=item Signals in Plan 9 Perl
+/bin/sh, ar, nm, cpp, make
 
-=back
+=item Outstanding Issues with Perl on QNX4
 
-=item COMPILING AND INSTALLING PERL ON PLAN 9
+=item QNX auxiliary files
 
-=over 4
+qnx/ar, qnx/cpp
 
-=item Installing Perl Documentation on Plan 9
+=item Outstanding issues with perl under QNX6
 
 =back
 
-=item BUGS
-
-=item Revision date
-
 =item AUTHOR
 
 =back
@@ -8845,18 +8854,6 @@ FETCH_I<type>_ATTRIBUTES, MODIFY_I<type>_ATTRIBUTES
 
 =back
 
-=head2 attrs - set/get attributes of a subroutine (deprecated)
-
-=over 4
-
-=item SYNOPSIS
-
-=item DESCRIPTION
-
-method, locked
-
-=back
-
 =head2 autouse - postpone load of modules until a function is used
 
 =over 4
@@ -9412,16 +9409,6 @@ type, `%s' is not a code reference
 
 =back
 
-=head2 re - Perl pragma to alter regular expression behaviour
-
-=over 4
-
-=item SYNOPSIS
-
-=item DESCRIPTION
-
-=back
-
 =head2 sigtrap - Perl pragma to enable simple signal handling
 
 =over 4
@@ -9488,36 +9475,6 @@ C<strict refs>, C<strict vars>, C<strict subs>
 
 =back
 
-=head2 threads - Perl extension allowing use of interpreter based threads
-from perl
-
-=over 4
-
-=item SYNOPSIS
-
-=item DESCRIPTION
-
-$thread = threads->create(function, LIST), $thread->join, $thread->detach,
-threads->self, $thread->tid, threads->object( tid ), threads->yield();,
-threads->list();, async BLOCK;
-
-=item WARNINGS
-
-A thread exited while %d other threads were still running
-
-=item TODO
-
-=item BUGS
-
-Parent-Child threads, Returning objects, Creating threads inside BEGIN
-blocks, PERL_OLD_SIGNALS are not threadsafe, will not be
-
-=item AUTHOR and COPYRIGHT
-
-=item SEE ALSO
-
-=back
-
 =head2 threadshared, threads::shared - Perl extension for sharing data
 structures between threads
 
@@ -9557,8 +9514,8 @@ code
 
 =item Utility functions
 
-$num_octets = utf8::upgrade($string);, utf8::downgrade($string[, FAIL_OK]),
-utf8::encode($string), $flag = utf8::decode($string), $flag =
+$num_octets = utf8::upgrade($string), $success = utf8::downgrade($string[,
+FAIL_OK]), utf8::encode($string), utf8::decode($string), $flag =
 utf8::is_utf8(STRING), $flag = utf8::valid(STRING)
 
 =back
@@ -13655,8 +13612,6 @@ clean_subdirs_target
 
 realclean_subdirs_target
 
-max_exec_len
-
 os_flavor
 
 =over 4
@@ -13909,6 +13864,18 @@ B<PERL_MM_MANIFEST_DEBUG>
 
 =back
 
+=head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item SEE ALSO
+
+=back
+
 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
 
 =over 4
@@ -14463,6 +14430,18 @@ catpath
 
 =over 4
 
+=item OO INTERFACE
+
+B<new>
+
+=back
+
+B<filename>
+
+B<DESTROY>
+
+=over 4
+
 =item FUNCTIONS
 
 B<tempfile>
@@ -14511,6 +14490,10 @@ B<unlink0>
 
 =back
 
+B<cmpstat>
+
+B<unlink1>
+
 =over 4
 
 =item PACKAGE VARIABLES
@@ -15111,7 +15094,7 @@ Sichuan Yi, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik languages], {znd}
 =item DESCRIPTION
 
 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
-rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
+rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ]
 
 =item SEE ALSO
 
@@ -15349,7 +15332,7 @@ handles
 =item DESCRIPTION
 
 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
-rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
+rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ]
 
 =item SEE ALSO
 
@@ -16702,7 +16685,8 @@ C<O_RDONLY>, C<O_WRONLY>, C<O_RDWR>
 
 =back
 
-=head2 NEXT - Provide a pseudo-class NEXT that allows method redispatch
+=head2 NEXT - Provide a pseudo-class NEXT (et al) that allows method
+redispatch
 
 =over 4
 
@@ -16716,6 +16700,10 @@ C<O_RDONLY>, C<O_WRONLY>, C<O_RDWR>
 
 =item Avoiding repetitions
 
+=item Invoking all versions of a method with a single call
+
+=item Using C<EVERY> methods
+
 =back
 
 =item AUTHOR
@@ -17565,6 +17553,8 @@ $obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh)
 
 =item SEE ALSO
 
+=item ACKNOWLEDGEMENTS
+
 =item COPYRIGHT
 
 =back
@@ -19588,59 +19578,115 @@ B<assert>
 
 =item DESCRIPTION
 
-=over 4
-
 =item Construction
 
-B<new>
+=over 4
+
+=item C<new>
 
 =back
 
 =back
 
-B<_init>
+=over 4
+
+=item C<_init>
+
+=back
 
 =over 4
 
 =item Analysis
 
-B<analyze>
+=over 4
+
+=item C<analyze>
+
+=back
+
+=back
+
+=over 4
+
+=item C<analyze_fh>
+
+=back
+
+=over 4
+
+=item C<analyze_file>
+
+=back
+
+=over 4
+
+=item C<_switches>
+
+=back
+
+=over 4
+
+=item C<_INC2PERL5LIB>
 
 =back
 
-B<analyze_fh>
+=over 4
 
-B<analyze_file>
+=item C<_filtered_INC>
 
-B<_switches>
+=back
 
-B<_INC2PERL5LIB>
+=over 4
 
-B<_filtered_INC>
+=item C<_restore_PERL5LIB>
 
-B<_restore_PERL5LIB>
+=back
 
 =over 4
 
 =item Parsing
 
-B<_is_comment>
+=over 4
+
+=item C<_is_comment>
+
+=back
+
+=back
+
+=over 4
+
+=item C<_is_header>
+
+=back
+
+=over 4
+
+=item C<_is_test>
 
 =back
 
-B<_is_header>
+=over 4
+
+=item C<_is_bail_out>
 
-B<_is_test>
+=back
+
+=over 4
 
-B<_is_bail_out>
+=item C<_reset_file_state>
 
-B<_reset_file_state>
+=back
 
 =over 4
 
 =item Results
 
-B<_detailize>
+=over 4
+
+=item C<_detailize>
+
+=back
 
 =back
 
@@ -20684,21 +20730,29 @@ don't all have manual pages yet:
 
 =item a2p
 
-=item s2p
+=item c2ph
 
-=item find2perl
+=item dprofpp
 
 =item h2ph
 
-=item c2ph
-
 =item h2xs
 
-=item xsubpp
+=item perlbug
+
+=item perldoc
+
+=item pl2pm
+
+=item pod2html
 
 =item pod2man
 
-=item wrapsuid
+=item s2p
+
+=item splain
+
+=item xsubpp
 
 =back
 
index 92f6a3d..61d0e97 100644 (file)
@@ -358,33 +358,29 @@ x2p : [.x2p]$(DBG)a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
 extra.pods : miniperl
        @ @extra_pods.com
 
-pod0 = [.lib.pod]perl.pod [.lib.pod]perl5004delta.pod [.lib.pod]perl5005delta.pod [.lib.pod]perl561delta.pod
-pod1 = [.lib.pod]perl56delta.pod [.lib.pod]perl570delta.pod [.lib.pod]perl571delta.pod [.lib.pod]perl572delta.pod
-pod2 = [.lib.pod]perl573delta.pod [.lib.pod]perl58delta.pod [.lib.pod]perlaix.pod [.lib.pod]perlamiga.pod [.lib.pod]perlapi.pod
-pod3 = [.lib.pod]perlapio.pod [.lib.pod]perlapollo.pod [.lib.pod]perlartistic.pod [.lib.pod]perlbeos.pod [.lib.pod]perlbook.pod [.lib.pod]perlboot.pod
-pod4 = [.lib.pod]perlbot.pod [.lib.pod]perlbs2000.pod [.lib.pod]perlcall.pod [.lib.pod]perlce.pod [.lib.pod]perlcheat.pod [.lib.pod]perlclib.pod
-pod5 = [.lib.pod]perlcn.pod [.lib.pod]perlcompile.pod [.lib.pod]perlcygwin.pod [.lib.pod]perldata.pod
-pod6 = [.lib.pod]perldbmfilter.pod [.lib.pod]perldebguts.pod [.lib.pod]perldebtut.pod [.lib.pod]perldebug.pod
-pod7 = [.lib.pod]perldelta.pod [.lib.pod]perldgux.pod [.lib.pod]perldiag.pod [.lib.pod]perldoc.pod [.lib.pod]perldos.pod [.lib.pod]perldsc.pod
-pod8 = [.lib.pod]perlebcdic.pod [.lib.pod]perlembed.pod [.lib.pod]perlepoc.pod [.lib.pod]perlfaq.pod [.lib.pod]perlfaq1.pod
-pod9 = [.lib.pod]perlfaq2.pod [.lib.pod]perlfaq3.pod [.lib.pod]perlfaq4.pod [.lib.pod]perlfaq5.pod [.lib.pod]perlfaq6.pod
-pod10 = [.lib.pod]perlfaq7.pod [.lib.pod]perlfaq8.pod [.lib.pod]perlfaq9.pod [.lib.pod]perlfilter.pod [.lib.pod]perlfork.pod
-pod11 = [.lib.pod]perlform.pod [.lib.pod]perlfreebsd.pod [.lib.pod]perlfunc.pod [.lib.pod]perlguts.pod [.lib.pod]perlgpl.pod [.lib.pod]perlhack.pod
-pod12 = [.lib.pod]perlhist.pod [.lib.pod]perlhpux.pod [.lib.pod]perlhurd.pod [.lib.pod]perlintern.pod [.lib.pod]perlintro.pod
-pod13 = [.lib.pod]perliol.pod [.lib.pod]perlipc.pod [.lib.pod]perlirix.pod [.lib.pod]perljp.pod [.lib.pod]perlko.pod
-pod14 = [.lib.pod]perllexwarn.pod [.lib.pod]perllocale.pod [.lib.pod]perllol.pod [.lib.pod]perlmachten.pod
-pod15 = [.lib.pod]perlmacos.pod [.lib.pod]perlmacosx.pod [.lib.pod]perlmint.pod [.lib.pod]perlmod.pod [.lib.pod]perlmodinstall.pod
-pod16 = [.lib.pod]perlmodlib.pod [.lib.pod]perlmodstyle.pod [.lib.pod]perlmpeix.pod [.lib.pod]perlnetware.pod
-pod17 = [.lib.pod]perlnewmod.pod [.lib.pod]perlnumber.pod [.lib.pod]perlobj.pod [.lib.pod]perlop.pod [.lib.pod]perlopentut.pod
-pod18 = [.lib.pod]perlos2.pod [.lib.pod]perlos390.pod [.lib.pod]perlos400.pod [.lib.pod]perlothrtut.pod [.lib.pod]perlpacktut.pod
-pod19 = [.lib.pod]perlplan9.pod [.lib.pod]perlpod.pod [.lib.pod]perlpodspec.pod [.lib.pod]perlport.pod [.lib.pod]perlqnx.pod
-pod20 = [.lib.pod]perlre.pod [.lib.pod]perlref.pod [.lib.pod]perlreftut.pod [.lib.pod]perlrequick.pod [.lib.pod]perlretut.pod [.lib.pod]perlreref.pod
-pod21 = [.lib.pod]perlrun.pod [.lib.pod]perlsec.pod [.lib.pod]perlsolaris.pod [.lib.pod]perlstyle.pod [.lib.pod]perlsub.pod
-pod22 = [.lib.pod]perlsyn.pod [.lib.pod]perlthrtut.pod [.lib.pod]perltie.pod [.lib.pod]perltoc.pod [.lib.pod]perltodo.pod
-pod23 = [.lib.pod]perltooc.pod [.lib.pod]perltoot.pod [.lib.pod]perltrap.pod [.lib.pod]perltru64.pod [.lib.pod]perltw.pod
-pod24 = [.lib.pod]perlunicode.pod [.lib.pod]perluniintro.pod [.lib.pod]perlutil.pod [.lib.pod]perluts.pod [.lib.pod]perlvar.pod
-pod25 = [.lib.pod]perlvmesa.pod [.lib.pod]perlvms.pod [.lib.pod]perlvos.pod [.lib.pod]perlwin32.pod [.lib.pod]perlxs.pod [.lib.pod]perlxstut.pod
-pod = $(pod0) $(pod1) $(pod2) $(pod3) $(pod4) $(pod5) $(pod6) $(pod7) $(pod8) $(pod9) $(pod10) $(pod11) $(pod12) $(pod13) $(pod14) $(pod15) $(pod16) $(pod17) $(pod18) $(pod19) $(pod20) $(pod21) $(pod22) $(pod23) $(pod24) $(pod25)
+pod0 = [.lib.pod]perl.pod [.lib.pod]perl5004delta.pod [.lib.pod]perl5005delta.pod [.lib.pod]perl561delta.pod [.lib.pod]perl56delta.pod
+pod1 = [.lib.pod]perl570delta.pod [.lib.pod]perl571delta.pod [.lib.pod]perl572delta.pod [.lib.pod]perl573delta.pod [.lib.pod]perl58delta.pod
+pod2 = [.lib.pod]perlaix.pod [.lib.pod]perlamiga.pod [.lib.pod]perlapi.pod [.lib.pod]perlapio.pod [.lib.pod]perlapollo.pod [.lib.pod]perlartistic.pod
+pod3 = [.lib.pod]perlbeos.pod [.lib.pod]perlbook.pod [.lib.pod]perlboot.pod [.lib.pod]perlbot.pod [.lib.pod]perlbs2000.pod [.lib.pod]perlcall.pod
+pod4 = [.lib.pod]perlce.pod [.lib.pod]perlcheat.pod [.lib.pod]perlclib.pod [.lib.pod]perlcn.pod [.lib.pod]perlcompile.pod [.lib.pod]perlcygwin.pod
+pod5 = [.lib.pod]perldata.pod [.lib.pod]perldbmfilter.pod [.lib.pod]perldebguts.pod [.lib.pod]perldebtut.pod [.lib.pod]perldebug.pod [.lib.pod]perldelta.pod
+pod6 = [.lib.pod]perldgux.pod [.lib.pod]perldiag.pod [.lib.pod]perldoc.pod [.lib.pod]perldos.pod [.lib.pod]perldsc.pod [.lib.pod]perlebcdic.pod
+pod7 = [.lib.pod]perlembed.pod [.lib.pod]perlepoc.pod [.lib.pod]perlfaq.pod [.lib.pod]perlfaq1.pod [.lib.pod]perlfaq2.pod [.lib.pod]perlfaq3.pod
+pod8 = [.lib.pod]perlfaq4.pod [.lib.pod]perlfaq5.pod [.lib.pod]perlfaq6.pod [.lib.pod]perlfaq7.pod [.lib.pod]perlfaq8.pod [.lib.pod]perlfaq9.pod
+pod9 = [.lib.pod]perlfilter.pod [.lib.pod]perlfork.pod [.lib.pod]perlform.pod [.lib.pod]perlfreebsd.pod [.lib.pod]perlfunc.pod [.lib.pod]perlgpl.pod
+pod10 = [.lib.pod]perlguts.pod [.lib.pod]perlhack.pod [.lib.pod]perlhist.pod [.lib.pod]perlhpux.pod [.lib.pod]perlhurd.pod [.lib.pod]perlintern.pod
+pod11 = [.lib.pod]perlintro.pod [.lib.pod]perliol.pod [.lib.pod]perlipc.pod [.lib.pod]perlirix.pod [.lib.pod]perljp.pod [.lib.pod]perlko.pod
+pod12 = [.lib.pod]perllexwarn.pod [.lib.pod]perllocale.pod [.lib.pod]perllol.pod [.lib.pod]perlmachten.pod [.lib.pod]perlmacos.pod [.lib.pod]perlmacosx.pod
+pod13 = [.lib.pod]perlmint.pod [.lib.pod]perlmod.pod [.lib.pod]perlmodinstall.pod [.lib.pod]perlmodlib.pod [.lib.pod]perlmodstyle.pod [.lib.pod]perlmpeix.pod
+pod14 = [.lib.pod]perlnetware.pod [.lib.pod]perlnewmod.pod [.lib.pod]perlnumber.pod [.lib.pod]perlobj.pod [.lib.pod]perlop.pod [.lib.pod]perlopentut.pod
+pod15 = [.lib.pod]perlos2.pod [.lib.pod]perlos390.pod [.lib.pod]perlos400.pod [.lib.pod]perlothrtut.pod [.lib.pod]perlpacktut.pod [.lib.pod]perlplan9.pod
+pod16 = [.lib.pod]perlpod.pod [.lib.pod]perlpodspec.pod [.lib.pod]perlport.pod [.lib.pod]perlqnx.pod [.lib.pod]perlre.pod [.lib.pod]perlref.pod
+pod17 = [.lib.pod]perlreftut.pod [.lib.pod]perlrequick.pod [.lib.pod]perlreref.pod [.lib.pod]perlretut.pod [.lib.pod]perlrun.pod [.lib.pod]perlsec.pod
+pod18 = [.lib.pod]perlsolaris.pod [.lib.pod]perlstyle.pod [.lib.pod]perlsub.pod [.lib.pod]perlsyn.pod [.lib.pod]perlthrtut.pod [.lib.pod]perltie.pod
+pod19 = [.lib.pod]perltoc.pod [.lib.pod]perltodo.pod [.lib.pod]perltooc.pod [.lib.pod]perltoot.pod [.lib.pod]perltrap.pod [.lib.pod]perltru64.pod
+pod20 = [.lib.pod]perltw.pod [.lib.pod]perlunicode.pod [.lib.pod]perluniintro.pod [.lib.pod]perlutil.pod [.lib.pod]perluts.pod [.lib.pod]perlvar.pod
+pod21 = [.lib.pod]perlvmesa.pod [.lib.pod]perlvms.pod [.lib.pod]perlvos.pod [.lib.pod]perlwin32.pod [.lib.pod]perlxs.pod [.lib.pod]perlxstut.pod
+pod = $(pod0) $(pod1) $(pod2) $(pod3) $(pod4) $(pod5) $(pod6) $(pod7) $(pod8) $(pod9) $(pod10) $(pod11) $(pod12) $(pod13) $(pod14) $(pod15) $(pod16) $(pod17) $(pod18) $(pod19) $(pod20) $(pod21)
 
 perlpods : $(pod)
        @ $(NOOP)
@@ -1042,13 +1038,13 @@ preplibrary : $(MINIPERL_EXE) $(LIBPREREQ)
        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
        Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
 
-[.lib.pod]perlretut.pod : [.pod]perlretut.pod
+[.lib.pod]perlreref.pod : [.pod]perlreref.pod
        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
        Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
 
-[.lib.pod]perlreref.pod : [.pod]perlreref.pod
-     @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
-     Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
+[.lib.pod]perlretut.pod : [.pod]perlretut.pod
+       @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
+       Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
 
 [.lib.pod]perlrun.pod : [.pod]perlrun.pod
        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
@@ -1134,9 +1130,9 @@ preplibrary : $(MINIPERL_EXE) $(LIBPREREQ)
        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
        Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
 
-[.lib.pod]perlvms.pod : [.vms]perlvms.pod
-        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
-        Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
+[.lib.pod]perlvms.pod : [.pod]perlvms.pod
+       @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
+       Copy/NoConfirm/Log $(MMS$SOURCE) [.lib.pod]
 
 [.lib.pod]perlvos.pod : [.pod]perlvos.pod
        @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
index f71542b..3a64cd3 100644 (file)
@@ -16,56 +16,36 @@ REALPERL = ..\perl.exe
 
 POD = \
        perl.pod        \
-       perldelta.pod   \
        perl5004delta.pod       \
        perl5005delta.pod       \
-       perldata.pod    \
-       perlsyn.pod     \
-       perlop.pod      \
-       perlre.pod      \
-       perlreref.pod   \
-       perlretut.pod   \
-       perlrequick.pod \
-       perlrun.pod     \
-       perlfunc.pod    \
-       perlopentut.pod \
-       perlvar.pod     \
-       perlsub.pod     \
-       perlmod.pod     \
-       perlmodlib.pod  \
-       perlmodinstall.pod      \
-       perlform.pod    \
-       perllocale.pod  \
-       perlunicode.pod \
-       perluniintro.pod        \
-       perlref.pod     \
-       perlreftut.pod  \
-       perldsc.pod     \
-       perllol.pod     \
-       perltoot.pod    \
-       perlobj.pod     \
-       perltie.pod     \
+       perl561delta.pod        \
+       perl56delta.pod \
+       perl570delta.pod        \
+       perl571delta.pod        \
+       perl572delta.pod        \
+       perl573delta.pod        \
+       perl58delta.pod \
+       perlapi.pod     \
+       perlapio.pod    \
+       perlartistic.pod        \
+       perlbook.pod    \
+       perlboot.pod    \
        perlbot.pod     \
-       perlipc.pod     \
-       perlthrtut.pod  \
+       perlcall.pod    \
+       perlcheat.pod   \
+       perlclib.pod    \
+       perlcompile.pod \
+       perldata.pod    \
+       perldbmfilter.pod       \
+       perldebguts.pod \
+       perldebtut.pod  \
        perldebug.pod   \
+       perldelta.pod   \
        perldiag.pod    \
-       perlsec.pod     \
-       perltrap.pod    \
-       perlcheat.pod   \
-       perlport.pod    \
-       perlstyle.pod   \
-       perlpod.pod     \
-       perlbook.pod    \
+       perldoc.pod     \
+       perldsc.pod     \
+       perlebcdic.pod  \
        perlembed.pod   \
-       perlapio.pod    \
-       perlwin32.pod   \
-       perlxs.pod      \
-       perlxstut.pod   \
-       perlguts.pod    \
-       perlcall.pod    \
-       perltodo.pod    \
-       perlhist.pod    \
        perlfaq.pod     \
        perlfaq1.pod    \
        perlfaq2.pod    \
@@ -76,60 +56,92 @@ POD = \
        perlfaq7.pod    \
        perlfaq8.pod    \
        perlfaq9.pod    \
-       perltoc.pod
+       perlfilter.pod  \
+       perlfork.pod    \
+       perlform.pod    \
+       perlfunc.pod    \
+       perlgpl.pod     \
+       perlguts.pod    \
+       perlhack.pod    \
+       perlhist.pod    \
+       perlintern.pod  \
+       perlintro.pod   \
+       perliol.pod     \
+       perlipc.pod     \
+       perllexwarn.pod \
+       perllocale.pod  \
+       perllol.pod     \
+       perlmod.pod     \
+       perlmodinstall.pod      \
+       perlmodlib.pod  \
+       perlmodstyle.pod        \
+       perlnewmod.pod  \
+       perlnumber.pod  \
+       perlobj.pod     \
+       perlop.pod      \
+       perlopentut.pod \
+       perlothrtut.pod \
+       perlpacktut.pod \
+       perlpod.pod     \
+       perlpodspec.pod \
+       perlport.pod    \
+       perlre.pod      \
+       perlref.pod     \
+       perlreftut.pod  \
+       perlrequick.pod \
+       perlreref.pod   \
+       perlretut.pod   \
+       perlrun.pod     \
+       perlsec.pod     \
+       perlstyle.pod   \
+       perlsub.pod     \
+       perlsyn.pod     \
+       perlthrtut.pod  \
+       perltie.pod     \
+       perltoc.pod     \
+       perltodo.pod    \
+       perltooc.pod    \
+       perltoot.pod    \
+       perltrap.pod    \
+       perlunicode.pod \
+       perluniintro.pod        \
+       perlutil.pod    \
+       perlvar.pod     \
+       perlxs.pod      \
+       perlxstut.pod   
 
 MAN = \
        perl.man        \
-       perldelta.man   \
        perl5004delta.man       \
        perl5005delta.man       \
-       perldata.man    \
-       perlsyn.man     \
-       perlop.man      \
-       perlre.man      \
-       perlreref.man   \
-       perlretut.man   \
-       perlrequick.man \
-       perlrun.man     \
-       perlfunc.man    \
-       perlopentut.man \
-       perlvar.man     \
-       perlsub.man     \
-       perlmod.man     \
-       perlmodlib.man  \
-       perlmodinstall.man      \
-       perlform.man    \
-       perllocale.man  \
-       perlunicode.man \
-       perluniintro.man        \
-       perlref.man     \
-       perlreftut.man  \
-       perldsc.man     \
-       perllol.man     \
-       perltoot.man    \
-       perlobj.man     \
-       perltie.man     \
+       perl561delta.man        \
+       perl56delta.man \
+       perl570delta.man        \
+       perl571delta.man        \
+       perl572delta.man        \
+       perl573delta.man        \
+       perl58delta.man \
+       perlapi.man     \
+       perlapio.man    \
+       perlartistic.man        \
+       perlbook.man    \
+       perlboot.man    \
        perlbot.man     \
-       perlipc.man     \
-       perlthrtut.man  \
+       perlcall.man    \
+       perlcheat.man   \
+       perlclib.man    \
+       perlcompile.man \
+       perldata.man    \
+       perldbmfilter.man       \
+       perldebguts.man \
+       perldebtut.man  \
        perldebug.man   \
+       perldelta.man   \
        perldiag.man    \
-       perlsec.man     \
-       perltrap.man    \
-       perlcheat.man   \
-       perlport.man    \
-       perlstyle.man   \
-       perlpod.man     \
-       perlbook.man    \
+       perldoc.man     \
+       perldsc.man     \
+       perlebcdic.man  \
        perlembed.man   \
-       perlapio.man    \
-       perlwin32.man   \
-       perlxs.man      \
-       perlxstut.man   \
-       perlguts.man    \
-       perlcall.man    \
-       perltodo.man    \
-       perlhist.man    \
        perlfaq.man     \
        perlfaq1.man    \
        perlfaq2.man    \
@@ -140,60 +152,92 @@ MAN = \
        perlfaq7.man    \
        perlfaq8.man    \
        perlfaq9.man    \
-       perltoc.man
+       perlfilter.man  \
+       perlfork.man    \
+       perlform.man    \
+       perlfunc.man    \
+       perlgpl.man     \
+       perlguts.man    \
+       perlhack.man    \
+       perlhist.man    \
+       perlintern.man  \
+       perlintro.man   \
+       perliol.man     \
+       perlipc.man     \
+       perllexwarn.man \
+       perllocale.man  \
+       perllol.man     \
+       perlmod.man     \
+       perlmodinstall.man      \
+       perlmodlib.man  \
+       perlmodstyle.man        \
+       perlnewmod.man  \
+       perlnumber.man  \
+       perlobj.man     \
+       perlop.man      \
+       perlopentut.man \
+       perlothrtut.man \
+       perlpacktut.man \
+       perlpod.man     \
+       perlpodspec.man \
+       perlport.man    \
+       perlre.man      \
+       perlref.man     \
+       perlreftut.man  \
+       perlrequick.man \
+       perlreref.man   \
+       perlretut.man   \
+       perlrun.man     \
+       perlsec.man     \
+       perlstyle.man   \
+       perlsub.man     \
+       perlsyn.man     \
+       perlthrtut.man  \
+       perltie.man     \
+       perltoc.man     \
+       perltodo.man    \
+       perltooc.man    \
+       perltoot.man    \
+       perltrap.man    \
+       perlunicode.man \
+       perluniintro.man        \
+       perlutil.man    \
+       perlvar.man     \
+       perlxs.man      \
+       perlxstut.man   
 
 HTML = \
        perl.html       \
-       perldelta.html  \
        perl5004delta.html      \
        perl5005delta.html      \
-       perldata.html   \
-       perlsyn.html    \
-       perlop.html     \
-       perlre.html     \
-       perlreref.html  \
-       perlretut.html  \
-       perlrequick.html        \
-       perlrun.html    \
-       perlfunc.html   \
-       perlopentut.html        \
-       perlvar.html    \
-       perlsub.html    \
-       perlmod.html    \
-       perlmodlib.html \
-       perlmodinstall.html     \
-       perlform.html   \
-       perllocale.html \
-       perlunicode.html        \
-       perluniintro.html       \
-       perlref.html    \
-       perlreftut.html \
-       perldsc.html    \
-       perllol.html    \
-       perltoot.html   \
-       perlobj.html    \
-       perltie.html    \
+       perl561delta.html       \
+       perl56delta.html        \
+       perl570delta.html       \
+       perl571delta.html       \
+       perl572delta.html       \
+       perl573delta.html       \
+       perl58delta.html        \
+       perlapi.html    \
+       perlapio.html   \
+       perlartistic.html       \
+       perlbook.html   \
+       perlboot.html   \
        perlbot.html    \
-       perlipc.html    \
-       perlthrtut.html \
+       perlcall.html   \
+       perlcheat.html  \
+       perlclib.html   \
+       perlcompile.html        \
+       perldata.html   \
+       perldbmfilter.html      \
+       perldebguts.html        \
+       perldebtut.html \
        perldebug.html  \
+       perldelta.html  \
        perldiag.html   \
-       perlsec.html    \
-       perltrap.html   \
-       perlcheat.html  \
-       perlport.html   \
-       perlstyle.html  \
-       perlpod.html    \
-       perlbook.html   \
+       perldoc.html    \
+       perldsc.html    \
+       perlebcdic.html \
        perlembed.html  \
-       perlapio.html   \
-       perlwin32.html  \
-       perlxs.html     \
-       perlxstut.html  \
-       perlguts.html   \
-       perlcall.html   \
-       perltodo.html   \
-       perlhist.html   \
        perlfaq.html    \
        perlfaq1.html   \
        perlfaq2.html   \
@@ -203,61 +247,93 @@ HTML = \
        perlfaq6.html   \
        perlfaq7.html   \
        perlfaq8.html   \
-       perlfaq9.html
+       perlfaq9.html   \
+       perlfilter.html \
+       perlfork.html   \
+       perlform.html   \
+       perlfunc.html   \
+       perlgpl.html    \
+       perlguts.html   \
+       perlhack.html   \
+       perlhist.html   \
+       perlintern.html \
+       perlintro.html  \
+       perliol.html    \
+       perlipc.html    \
+       perllexwarn.html        \
+       perllocale.html \
+       perllol.html    \
+       perlmod.html    \
+       perlmodinstall.html     \
+       perlmodlib.html \
+       perlmodstyle.html       \
+       perlnewmod.html \
+       perlnumber.html \
+       perlobj.html    \
+       perlop.html     \
+       perlopentut.html        \
+       perlothrtut.html        \
+       perlpacktut.html        \
+       perlpod.html    \
+       perlpodspec.html        \
+       perlport.html   \
+       perlre.html     \
+       perlref.html    \
+       perlreftut.html \
+       perlrequick.html        \
+       perlreref.html  \
+       perlretut.html  \
+       perlrun.html    \
+       perlsec.html    \
+       perlstyle.html  \
+       perlsub.html    \
+       perlsyn.html    \
+       perlthrtut.html \
+       perltie.html    \
+       perltodo.html   \
+       perltooc.html   \
+       perltoot.html   \
+       perltrap.html   \
+       perlunicode.html        \
+       perluniintro.html       \
+       perlutil.html   \
+       perlvar.html    \
+       perlxs.html     \
+       perlxstut.html  
 # not perltoc.html
 
 TEX = \
        perl.tex        \
-       perldelta.tex   \
        perl5004delta.tex       \
        perl5005delta.tex       \
-       perldata.tex    \
-       perlsyn.tex     \
-       perlop.tex      \
-       perlre.tex      \
-       perlreref.tex   \
-       perlretut.tex   \
-       perlrequick.tex \
-       perlrun.tex     \
-       perlfunc.tex    \
-       perlopentut.tex \
-       perlvar.tex     \
-       perlsub.tex     \
-       perlmod.tex     \
-       perlmodlib.tex  \
-       perlmodinstall.tex      \
-       perlform.tex    \
-       perllocale.tex  \
-       perlunicode.tex \
-       perluniintro.tex        \
-       perlref.tex     \
-       perlreftut.tex  \
-       perldsc.tex     \
-       perllol.tex     \
-       perltoot.tex    \
-       perlobj.tex     \
-       perltie.tex     \
+       perl561delta.tex        \
+       perl56delta.tex \
+       perl570delta.tex        \
+       perl571delta.tex        \
+       perl572delta.tex        \
+       perl573delta.tex        \
+       perl58delta.tex \
+       perlapi.tex     \
+       perlapio.tex    \
+       perlartistic.tex        \
+       perlbook.tex    \
+       perlboot.tex    \
        perlbot.tex     \
-       perlipc.tex     \
-       perlthrtut.tex  \
+       perlcall.tex    \
+       perlcheat.tex   \
+       perlclib.tex    \
+       perlcompile.tex \
+       perldata.tex    \
+       perldbmfilter.tex       \
+       perldebguts.tex \
+       perldebtut.tex  \
        perldebug.tex   \
+       perldelta.tex   \
        perldiag.tex    \
-       perlsec.tex     \
-       perltrap.tex    \
-       perlcheat.tex   \
-       perlport.tex    \
-       perlstyle.tex   \
-       perlpod.tex     \
-       perlbook.tex    \
+       perldoc.tex     \
+       perldsc.tex     \
+       perlebcdic.tex  \
        perlembed.tex   \
-       perlapio.tex    \
-       perlwin32.tex   \
-       perlxs.tex      \
-       perlxstut.tex   \
-       perlguts.tex    \
-       perlcall.tex    \
-       perltodo.tex    \
-       perlhist.tex    \
        perlfaq.tex     \
        perlfaq1.tex    \
        perlfaq2.tex    \
@@ -268,7 +344,59 @@ TEX = \
        perlfaq7.tex    \
        perlfaq8.tex    \
        perlfaq9.tex    \
-       perltoc.tex
+       perlfilter.tex  \
+       perlfork.tex    \
+       perlform.tex    \
+       perlfunc.tex    \
+       perlgpl.tex     \
+       perlguts.tex    \
+       perlhack.tex    \
+       perlhist.tex    \
+       perlintern.tex  \
+       perlintro.tex   \
+       perliol.tex     \
+       perlipc.tex     \
+       perllexwarn.tex \
+       perllocale.tex  \
+       perllol.tex     \
+       perlmod.tex     \
+       perlmodinstall.tex      \
+       perlmodlib.tex  \
+       perlmodstyle.tex        \
+       perlnewmod.tex  \
+       perlnumber.tex  \
+       perlobj.tex     \
+       perlop.tex      \
+       perlopentut.tex \
+       perlothrtut.tex \
+       perlpacktut.tex \
+       perlpod.tex     \
+       perlpodspec.tex \
+       perlport.tex    \
+       perlre.tex      \
+       perlref.tex     \
+       perlreftut.tex  \
+       perlrequick.tex \
+       perlreref.tex   \
+       perlretut.tex   \
+       perlrun.tex     \
+       perlsec.tex     \
+       perlstyle.tex   \
+       perlsub.tex     \
+       perlsyn.tex     \
+       perlthrtut.tex  \
+       perltie.tex     \
+       perltoc.tex     \
+       perltodo.tex    \
+       perltooc.tex    \
+       perltoot.tex    \
+       perltrap.tex    \
+       perlunicode.tex \
+       perluniintro.tex        \
+       perlutil.tex    \
+       perlvar.tex     \
+       perlxs.tex      \
+       perlxstut.tex   
 
 man:   pod2man $(MAN)