4 perltoc - perl documentation table of contents
8 This page provides a brief table of contents for the rest of the Perl
9 documentation set. It is meant to be scanned quickly or grepped
10 through to locate the proper section you're looking for.
12 =head1 BASIC DOCUMENTATION
14 =head2 perl - Practical Extraction and Report Language
26 =item Reference Manual
28 =item Internals and C Language Interface
32 =item Platform-Specific
56 =head2 perlintro -- a brief introduction and overview of Perl
66 =item Running Perl programs
68 =item Basic syntax overview
70 =item Perl variable types
72 Scalars, Arrays, Hashes
74 =item Variable scoping
76 =item Conditional and looping constructs
78 if, while, for, foreach
80 =item Builtin operators and functions
82 Arithmetic, Numeric comparison, String comparison, Boolean logic,
87 =item Regular expressions
89 Simple matching, Simple substitution, More complex regular expressions,
90 Parentheses for capturing, Other regexp features
92 =item Writing subroutines
96 =item Using Perl modules
104 =head2 perlfaq - frequently asked questions about Perl ($Date: 2001/11/19
113 =item perlfaq: Structural overview of the FAQ.
115 =item L<perlfaq1>: General Questions About Perl
117 =item L<perlfaq2>: Obtaining and Learning about Perl
119 =item L<perlfaq3>: Programming Tools
121 =item L<perlfaq4>: Data Manipulation
123 =item L<perlfaq5>: Files and Formats
125 =item L<perlfaq6>: Regexps
127 =item L<perlfaq7>: General Perl Language Issues
129 =item L<perlfaq8>: System Interaction
131 =item L<perlfaq9>: Networking
135 =item About the perlfaq documents
139 =item Where to get the perlfaq
141 =item How to contribute to the perlfaq
143 =item What will happen if you mail your Perl programming problems to the
150 =item Author and Copyright Information
154 =item Bundled Distributions
162 1/November/2000, 23/May/99, 13/April/99, 7/January/99, 22/June/98,
163 24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version,
164 Initial Release: 11/March/97
168 =head2 perlbook - Perl book information
176 =head2 perlsyn - Perl syntax
186 =item Simple statements
188 =item Compound statements
196 =item Basic BLOCKs and Switch Statements
200 =item PODs: Embedded Documentation
202 =item Plain Old Comments (Not!)
208 =head2 perldata - Perl data types
222 =item Scalar value constructors
224 =item List value constructors
228 =item Typeglobs and Filehandles
236 =head2 perlop - Perl operators and precedence
246 =item Terms and List Operators (Leftward)
248 =item The Arrow Operator
250 =item Auto-increment and Auto-decrement
254 =item Symbolic Unary Operators
256 =item Binding Operators
258 =item Multiplicative Operators
260 =item Additive Operators
262 =item Shift Operators
264 =item Named Unary Operators
266 =item Relational Operators
268 =item Equality Operators
272 =item Bitwise Or and Exclusive Or
274 =item C-style Logical And
276 =item C-style Logical Or
278 =item Range Operators
280 =item Conditional Operator
282 =item Assignment Operators
286 =item List Operators (Rightward)
292 =item Logical or and Exclusive Or
294 =item C Operators Missing From Perl
296 unary &, unary *, (TYPE)
298 =item Quote and Quote-like Operators
300 =item Regexp Quote-Like Operators
302 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
303 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
304 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
305 y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF
307 =item Gory details of parsing quoted constructs
309 Finding the end, Removal of backslashes before delimiters, Interpolation,
310 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
311 C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
312 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
317 =item Constant Folding
319 =item Bitwise String Operators
321 =item Integer Arithmetic
323 =item Floating-point Arithmetic
331 =head2 perlsub - Perl subroutines
341 =item Private Variables via my()
343 =item Persistent Private Variables
345 =item Temporary Values via local()
347 =item Lvalue subroutines
349 =item Passing Symbol Table Entries (typeglobs)
351 =item When to Still Use local()
353 =item Pass by Reference
357 =item Constant Functions
359 =item Overriding Built-in Functions
363 =item Subroutine Attributes
371 =head2 perlfunc - Perl builtin functions
379 =item Perl Functions by Category
381 Functions for SCALARs or strings, Regular expressions and pattern matching,
382 Numeric functions, Functions for real @ARRAYs, Functions for list data,
383 Functions for real %HASHes, Input and output functions, Functions for fixed
384 length data or records, Functions for filehandles, files, or directories,
385 Keywords related to the control flow of your perl program, Keywords related
386 to scoping, Miscellaneous functions, Functions for processes and process
387 groups, Keywords related to perl modules, Keywords related to classes and
388 object-orientedness, Low-level socket functions, System V interprocess
389 communication functions, Fetching user and group info, Fetching network
390 info, Time-related functions, Functions new in perl5, Functions obsoleted
395 =item Alphabetical Listing of Perl Functions
397 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
398 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
399 binmode FILEHANDLE, DISCIPLINE, binmode FILEHANDLE, bless REF,CLASSNAME,
400 bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE,
401 chomp( LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr
402 NUMBER, chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir
403 DIRHANDLE, connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt
404 PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR,
405 defined, delete EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR,
406 dump LABEL, dump, each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval
407 BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp,
408 fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock
409 FILEHANDLE,OPERATION, fork, format, formline PICTURE,LIST, getc FILEHANDLE,
410 getc, getlogin, getpeername SOCKET, getpgrp PID, getppid, getpriority
411 WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME, getnetbyname
412 NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, getservbyname
413 NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE,
414 getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent,
415 gethostent, getnetent, getprotoent, getservent, setpwent, setgrent,
416 sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent
417 STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent,
418 endservent, getsockname SOCKET, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR,
419 glob, gmtime EXPR, goto LABEL, goto EXPR, goto &NAME, grep BLOCK LIST, grep
420 EXPR,LIST, hex EXPR, hex, import, index STR,SUBSTR,POSITION, index
421 STR,SUBSTR, int EXPR, int, ioctl FILEHANDLE,FUNCTION,SCALAR, join
422 EXPR,LIST, keys HASH, kill SIGNAL, LIST, last LABEL, last, lc EXPR, lc,
423 lcfirst EXPR, lcfirst, length EXPR, length, link OLDFILE,NEWFILE, listen
424 SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock THING, log EXPR, log,
425 lstat EXPR, lstat, m//, map BLOCK LIST, map EXPR,LIST, mkdir FILENAME,MASK,
426 mkdir FILENAME, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgrcv
427 ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my EXPR : ATTRIBUTES,
428 next LABEL, next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open
429 FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST, open
430 FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, opendir DIRHANDLE,EXPR, ord
431 EXPR, ord, our EXPR, our EXPR : ATTRIBUTES, pack TEMPLATE,LIST, package
432 NAMESPACE, package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos
433 SCALAR, pos, print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE
434 FORMAT, LIST, printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST,
435 q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR,
436 quotemeta, rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
437 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
438 readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
439 ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, require EXPR,
440 require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir
441 DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME,
442 rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir
443 DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT,
444 semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
445 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
446 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
447 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
448 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
449 EXPR, sleep, sockatmark SOCKET, socket SOCKET,DOMAIN,TYPE,PROTOCOL,
450 socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort
451 BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice
452 ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, split
453 /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, split /PATTERN/, split, sprintf
454 FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, srand, stat FILEHANDLE, stat
455 EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME, sub NAME BLOCK,
456 substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
457 EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
458 FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
459 FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
460 FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
461 FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
462 syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
463 VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
464 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
465 ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
466 TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module VERSION LIST,
467 use Module VERSION, use Module LIST, use Module, use VERSION, utime LIST,
468 values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
469 LIST, write FILEHANDLE, write EXPR, write, y///
475 =head2 perlreftut - Mark's very short tutorial about references
481 =item Who Needs Complicated Data Structures?
489 =item Making References
491 =item Using References
509 =item Distribution Conditions
515 =head2 perldsc - Perl Data Structures Cookbook
521 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
522 more elaborate constructs
526 =item COMMON MISTAKES
528 =item CAVEAT ON PRECEDENCE
530 =item WHY YOU SHOULD ALWAYS C<use strict>
536 =item ARRAYS OF ARRAYS
540 =item Declaration of an ARRAY OF ARRAYS
542 =item Generation of an ARRAY OF ARRAYS
544 =item Access and Printing of an ARRAY OF ARRAYS
548 =item HASHES OF ARRAYS
552 =item Declaration of a HASH OF ARRAYS
554 =item Generation of a HASH OF ARRAYS
556 =item Access and Printing of a HASH OF ARRAYS
560 =item ARRAYS OF HASHES
564 =item Declaration of an ARRAY OF HASHES
566 =item Generation of an ARRAY OF HASHES
568 =item Access and Printing of an ARRAY OF HASHES
572 =item HASHES OF HASHES
576 =item Declaration of a HASH OF HASHES
578 =item Generation of a HASH OF HASHES
580 =item Access and Printing of a HASH OF HASHES
584 =item MORE ELABORATE RECORDS
588 =item Declaration of MORE ELABORATE RECORDS
590 =item Declaration of a HASH OF COMPLEX RECORDS
592 =item Generation of a HASH OF COMPLEX RECORDS
604 =head2 perlrequick - Perl regular expressions quick start
614 =item Simple word matching
616 =item Using character classes
618 =item Matching this or that
620 =item Grouping things and hierarchical matching
622 =item Extracting matches
624 =item Matching repetitions
628 =item Search and replace
630 =item The split operator
638 =item AUTHOR AND COPYRIGHT
642 =item Acknowledgments
648 =head2 perlpod - the Plain Old Documentation format
656 =item Ordinary Paragraph
658 =item Verbatim Paragraph
660 =item Command Paragraph
662 C<=head1 I<Heading Text>>, C<=head2 I<Heading Text>>, C<=head3 I<Heading
663 Text>>, C<=head4 I<Heading Text>>, C<=over I<indentlevel>>, C<=item
664 I<stuff...>>, C<=back>, C<=cut>, C<=pod>, C<=begin I<formatname>>, C<=end
665 I<formatname>>, C<=for I<formatname> I<text...>>
667 =item Formatting Codes
669 C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
670 C<CE<lt>codeE<gt>> -- code text, C<LE<lt>nameE<gt>> -- a hyperlink,
671 C<EE<lt>escapeE<gt>> -- a character escape, C<FE<lt>filenameE<gt>> -- used
672 for filenames, C<SE<lt>textE<gt>> -- text contains non-breaking spaces,
673 C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a null
674 (zero-effect) formatting code
678 =item Embedding Pods in Perl Modules
680 =item Hints for Writing Pod
690 =head2 perlpodspec - Plain Old Documentation: format specification and
697 =item Pod Definitions
701 "=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item",
702 "=back", "=begin formatname", "=end formatname", "=for formatname text..."
704 =item Pod Formatting Codes
706 C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
707 C<CE<lt>codeE<gt>> -- code text, C<FE<lt>filenameE<gt>> -- style for
708 filenames, C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a
709 null (zero-effect) formatting code, C<LE<lt>nameE<gt>> -- a hyperlink,
710 C<EE<lt>escapeE<gt>> -- a character escape, C<SE<lt>textE<gt>> -- text
711 contains non-breaking spaces
713 =item Notes on Implementing Pod Processors
715 =item About LE<lt>...E<gt> Codes
717 First:, Second:, Third:, Fourth:, Fifth:, Sixth:
719 =item About =over...=back Regions
721 =item About Data Paragraphs and "=begin/=end" Regions
729 =head2 perlstyle - Perl style guide
737 =head2 perltrap - Perl traps for the unwary
755 =item Perl4 to Perl5 Traps
757 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
758 Traps, General data type traps, Context Traps - scalar, list contexts,
759 Precedence Traps, General Regular Expression Traps using s///, etc,
760 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
762 =item Discontinuance, Deprecation, and BugFix traps
764 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
765 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
766 Discontinuance, Deprecation, Discontinuance, Discontinuance
770 Parsing, Parsing, Parsing, Parsing, Parsing
772 =item Numerical Traps
774 Numerical, Numerical, Numerical, Bitwise string ops
776 =item General data type traps
778 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
779 (Constants), (Scalars), (Variable Suicide)
781 =item Context Traps - scalar, list contexts
783 (list context), (scalar context), (scalar context), (list, builtin)
785 =item Precedence Traps
787 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
790 =item General Regular Expression Traps using s///, etc.
792 Regular Expression, Regular Expression, Regular Expression, Regular
793 Expression, Regular Expression, Regular Expression, Regular Expression,
796 =item Subroutine, Signal, Sorting Traps
798 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
804 =item Interpolation Traps
806 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
807 Interpolation, Interpolation, Interpolation, Interpolation
813 =item Unclassified Traps
815 C<require>/C<do> trap using returned value, C<split> on empty string with
822 =head2 perlrun - how to execute the Perl interpreter
832 =item #! and quoting on non-Unix systems
834 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
836 =item Location of Perl
838 =item Command Switches
840 B<-0>[I<digits>], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I<foo[=bar,baz]>,
841 B<-D>I<letters>, B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>,
842 B<-h>, B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
843 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
844 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
845 B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-W>,
846 B<-X>, B<-x> I<directory>
852 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
853 (specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL,
854 PERL_ENCODING, PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to
859 =head2 perldiag - various Perl diagnostics
867 =head2 perllexwarn - Perl Lexical Warnings
875 =item Default Warnings and Optional Warnings
877 =item What's wrong with B<-w> and C<$^W>
879 =item Controlling Warnings from the Command Line
883 =item Backward Compatibility
885 =item Category Hierarchy
889 =item Reporting Warnings from a Module
901 =head2 perldebtut - Perl debugging tutorial
909 =item Looking at data and -w and w
913 =item Stepping through code
915 =item Placeholder for a, w, t, T
917 =item REGULAR EXPRESSIONS
935 =head2 perldebug - Perl debugging
941 =item The Perl Debugger
945 =item Debugger Commands
947 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
948 [expr], r, <CR>, c [line|sub], l, l min+incr, l min-max, l line, l subname,
949 -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], t, t expr,
950 b [line] [condition], b subname [condition], b postpone subname
951 [condition], b load filename, b compile subname, d [line], D, a [line]
952 command, a [line], A, W expr, W, O booloption .., O anyoption? .., O
953 option=value .., < ?, < [ command ], << command, > ?, > command, >>
954 command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !!
955 cmd, @ file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man
958 =item Configurable Options
960 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
961 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
962 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<windowSize>,
963 C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
964 C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>,
965 C<undefPrint>, C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>
967 =item Debugger input/output
969 Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
972 =item Debugging compile-time statements
974 =item Debugger Customization
976 =item Readline Support
978 =item Editor Support for Debugging
980 =item The Perl Profiler
984 =item Debugging regular expressions
986 =item Debugging memory usage
994 =head2 perlvar - Perl predefined variables
1002 =item Predefined Names
1004 $ARG, $_, $a, $b, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1005 $LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*,
1006 HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $,
1007 IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/,
1008 HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|,
1009 IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
1010 IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS,
1011 $\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
1012 HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%,
1013 HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=,
1014 HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START,
1015 @-, C<$`> is the same as C<substr($var, 0, $-[0])>, C<$&> is the same as
1016 C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the same as C<substr($var,
1017 $+[0])>, C<$1> is the same as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2>
1018 is the same as C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as
1019 C<substr $var, $-[3], $+[3] - $-[3])>, HANDLE->format_name(EXPR),
1020 $FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^,
1021 IO::Handle->format_line_break_characters EXPR,
1022 $FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR,
1023 $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING},
1024 $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@,
1025 $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID,
1026 $>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $),
1027 $PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D,
1028 $SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O,
1029 ${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
1030 0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S,
1031 $BASETIME, $^T, ${^TAINT}, $PERL_VERSION, $^V, $WARNING, $^W,
1032 ${^WARNING_BITS}, ${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, ARGV,
1033 $ARGV, @ARGV, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr}
1035 =item Error Indicators
1037 =item Technical Note on the Syntax of Variable Names
1045 =head2 perllol - Manipulating Arrays of Arrays in Perl
1053 =item Declaration and Access of Arrays of Arrays
1055 =item Growing Your Own
1057 =item Access and Printing
1069 =head2 perlopentut - tutorial on opening things in Perl
1075 =item Open E<agrave> la shell
1083 =item The Minus File
1085 =item Mixing Reads and Writes
1091 =item Open E<agrave> la C
1095 =item Permissions E<agrave> la mode
1099 =item Obscure Open Tricks
1103 =item Re-Opening Files (dups)
1105 =item Dispelling the Dweomer
1107 =item Paths as Opens
1109 =item Single Argument Open
1111 =item Playing with STDIN and STDOUT
1115 =item Other I/O Issues
1119 =item Opening Non-File Files
1129 =item AUTHOR and COPYRIGHT
1135 =head2 perlpacktut - tutorial on C<pack> and C<unpack>
1141 =item The Basic Principle
1145 =item Packing Numbers
1151 =item Unpacking a Stack Frame
1153 =item How to Eat an Egg on a Net
1155 =item Floating point Numbers
1159 =item Exotic Templates
1171 =item Another Portable Binary Encoding
1175 =item Lengths and Widths
1179 =item String Lengths
1181 =item Dynamic Templates
1185 =item Packing and Unpacking C Structures
1189 =item The Alignment Pit
1191 =item Alignment, Take 2
1193 =item Alignment, Take 3
1195 =item Pointers for How to Use Them
1201 =item Funnies Section
1207 =head2 perlretut - Perl regular expressions tutorial
1213 =item Part 1: The basics
1217 =item Simple word matching
1219 =item Using character classes
1221 =item Matching this or that
1223 =item Grouping things and hierarchical matching
1225 =item Extracting matches
1227 =item Matching repetitions
1229 =item Building a regexp
1231 =item Using regular expressions in Perl
1235 =item Part 2: Power tools
1239 =item More on characters, strings, and character classes
1241 =item Compiling and saving regular expressions
1243 =item Embedding comments and modifiers in a regular expression
1245 =item Non-capturing groupings
1247 =item Looking ahead and looking behind
1249 =item Using independent subexpressions to prevent backtracking
1251 =item Conditional expressions
1253 =item A bit of magic: executing Perl code in a regular expression
1255 =item Pragmas and debugging
1263 =item AUTHOR AND COPYRIGHT
1267 =item Acknowledgments
1273 =head2 perlre - Perl regular expressions
1283 =item Regular Expressions
1285 [1], [2], [3], cntrl, graph, print, punct, xdigit
1287 =item Extended Patterns
1289 C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1290 C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
1291 code })>, C<(??{ code })>, C<< (?>pattern) >>,
1292 C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
1296 =item Version 8 Regular Expressions
1298 =item Warning on \1 vs $1
1300 =item Repeated patterns matching zero-length substring
1302 =item Combining pieces together
1304 C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
1305 C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
1306 C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
1307 C<(?(condition)yes-pattern|no-pattern)>
1309 =item Creating custom RE engines
1319 =head2 perlref - Perl references and nested data structures
1329 =item Making References
1331 =item Using References
1333 =item Symbolic references
1335 =item Not-so-symbolic references
1337 =item Pseudo-hashes: Using an array as a hash
1339 =item Function Templates
1349 =head2 perlform - Perl formats
1357 =item Format Variables
1367 =item Accessing Formatting Internals
1375 =head2 perlboot - Beginner's Object-Oriented Tutorial
1383 =item If we could talk to the animals...
1385 =item Introducing the method invocation arrow
1387 =item Invoking a barnyard
1389 =item The extra parameter of method invocation
1391 =item Calling a second method to simplify things
1393 =item Inheriting the windpipes
1395 =item A few notes about @ISA
1397 =item Overriding the methods
1399 =item Starting the search from a different place
1401 =item The SUPER way of doing things
1403 =item Where we're at so far...
1405 =item A horse is a horse, of course of course -- or is it?
1407 =item Invoking an instance method
1409 =item Accessing the instance data
1411 =item How to build a horse
1413 =item Inheriting the constructor
1415 =item Making a method work with either classes or instances
1417 =item Adding parameters to a method
1419 =item More interesting instances
1421 =item A horse of a different color
1433 =head2 perltoot - Tom's object-oriented tutorial for perl
1439 =item Creating a Class
1443 =item Object Representation
1445 =item Class Interface
1447 =item Constructors and Instance Methods
1449 =item Planning for the Future: Better Constructors
1453 =item Other Object Methods
1461 =item Accessing Class Data
1463 =item Debugging Methods
1465 =item Class Destructors
1467 =item Documenting the Interface
1477 =item Overridden Methods
1479 =item Multiple Inheritance
1481 =item UNIVERSAL: The Root of All Objects
1485 =item Alternate Object Representations
1489 =item Arrays as Objects
1491 =item Closures as Objects
1495 =item AUTOLOAD: Proxy Methods
1499 =item Autoloaded Data Methods
1501 =item Inherited Autoloaded Data Methods
1505 =item Metaclassical Tools
1511 =item Data Members as Variables
1519 =item Object Terminology
1525 =item AUTHOR AND COPYRIGHT
1531 =item Acknowledgments
1537 =head2 perltooc - Tom's OO Tutorial for Class Data in Perl
1543 =item Class Data in a Can
1545 =item Class Data as Package Variables
1549 =item Putting All Your Eggs in One Basket
1551 =item Inheritance Concerns
1553 =item The Eponymous Meta-Object
1555 =item Indirect References to Class Data
1557 =item Monadic Classes
1559 =item Translucent Attributes
1563 =item Class Data as Lexical Variables
1567 =item Privacy and Responsibility
1569 =item File-Scoped Lexicals
1571 =item More Inheritance Concerns
1573 =item Locking the Door and Throwing Away the Key
1575 =item Translucency Revisited
1583 =item AUTHOR AND COPYRIGHT
1585 =item ACKNOWLEDGEMENTS
1591 =head2 perlobj - Perl objects
1599 =item An Object is Simply a Reference
1601 =item A Class is Simply a Package
1603 =item A Method is Simply a Subroutine
1605 =item Method Invocation
1607 =item Indirect Object Syntax
1609 =item Default UNIVERSAL methods
1611 isa(CLASS), can(METHOD), VERSION( [NEED] )
1617 =item Two-Phased Garbage Collection
1625 =head2 perlbot - Bag'o Object Tricks (the BOT)
1631 =item OO SCALING TIPS
1633 =item INSTANCE VARIABLES
1635 =item SCALAR INSTANCE VARIABLES
1637 =item INSTANCE VARIABLE INHERITANCE
1639 =item OBJECT RELATIONSHIPS
1641 =item OVERRIDING SUPERCLASS METHODS
1643 =item USING RELATIONSHIP WITH SDBM
1645 =item THINKING OF CODE REUSE
1647 =item CLASS CONTEXT AND THE OBJECT
1649 =item INHERITING A CONSTRUCTOR
1655 =head2 perltie - how to hide an object class in a simple variable
1667 TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
1672 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
1673 FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
1674 key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this,
1675 UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY
1680 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
1681 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
1682 this, NEXTKEY this, lastkey, UNTIE this, DESTROY this
1684 =item Tying FileHandles
1686 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
1687 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this,
1692 =item The C<untie> Gotcha
1704 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1705 safe subprocesses, sockets, and semaphores)
1721 =item Using open() for IPC
1727 =item Background Processes
1729 =item Complete Dissociation of Child from Parent
1731 =item Safe Pipe Opens
1733 =item Bidirectional Communication with Another Process
1735 =item Bidirectional Communication with Yourself
1739 =item Sockets: Client/Server Communication
1743 =item Internet Line Terminators
1745 =item Internet TCP Clients and Servers
1747 =item Unix-Domain TCP Clients and Servers
1751 =item TCP Clients with IO::Socket
1755 =item A Simple Client
1757 C<Proto>, C<PeerAddr>, C<PeerPort>
1759 =item A Webget Client
1761 =item Interactive Client with IO::Socket
1765 =item TCP Servers with IO::Socket
1767 Proto, LocalPort, Listen, Reuse
1769 =item UDP: Message Passing
1783 =head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change)
1793 =item Behavior of other Perl features in forked pseudo-processes
1795 $$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
1796 filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
1797 files, directories and network sockets
1799 =item Resource limits
1801 =item Killing the parent process
1803 =item Lifetime of the parent process and pseudo-processes
1805 =item CAVEATS AND LIMITATIONS
1807 BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
1808 Global state maintained by XSUBs, Interpreter embedded in larger
1809 application, Thread-safety of extensions
1821 =head2 perlnumber - semantics of numbers and numeric operations in Perl
1829 =item Storing numbers
1831 =item Numeric operators and numeric conversions
1833 =item Flavors of Perl numeric operations
1835 Arithmetic operators except, C<no integer>, Arithmetic operators except,
1836 C<use integer>, Bitwise operators, C<no integer>, Bitwise operators, C<use
1837 integer>, Operators which expect an integer, Operators which expect a
1846 =head2 perlthrtut - tutorial on threads in Perl
1854 =head2 perlothrtut - old tutorial on threads in Perl
1860 =item What Is A Thread Anyway?
1862 =item Threaded Program Models
1874 =item Native threads
1876 =item What kind of threads are perl threads?
1878 =item Threadsafe Modules
1884 =item Basic Thread Support
1886 =item Creating Threads
1888 =item Giving up control
1890 =item Waiting For A Thread To Exit
1892 =item Errors In Threads
1894 =item Ignoring A Thread
1898 =item Threads And Data
1902 =item Shared And Unshared Data
1904 =item Thread Pitfall: Races
1906 =item Controlling access: lock()
1908 =item Thread Pitfall: Deadlocks
1910 =item Queues: Passing Data Around
1914 =item Threads And Code
1918 =item Semaphores: Synchronizing Data Access
1920 Basic semaphores, Advanced Semaphores
1922 =item Attributes: Restricting Access To Subroutines
1924 =item Subroutine Locks
1928 =item Locking A Subroutine
1932 =item General Thread Utility Routines
1936 =item What Thread Am I In?
1940 =item Are These Threads The Same?
1942 =item What Threads Are Running?
1946 =item A Complete Example
1954 =item Introductory Texts
1956 =item OS-Related References
1958 =item Other References
1962 =item Acknowledgements
1970 =head2 perlport - Writing portable Perl
1976 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
1985 =item Numbers endianness and Width
1987 =item Files and Filesystems
1989 =item System Interaction
1991 =item Interprocess Communication (IPC)
1993 =item External Subroutines (XS)
1995 =item Standard Modules
1999 =item Character sets and character encoding
2001 =item Internationalisation
2003 =item System Resources
2013 Mailing list: cpan-testers@perl.org, Testing results:
2014 http://testers.cpan.org/
2022 =item DOS and Derivatives
2030 =item EBCDIC Platforms
2038 =item FUNCTION IMPLEMENTATIONS
2042 =item Alphabetical Listing of Perl Functions
2044 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, alarm SECONDS, alarm, binmode
2045 FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt
2046 PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec
2047 LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock
2048 FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority
2049 WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID,
2050 getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
2051 getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
2052 getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
2053 STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
2054 endhostent, endnetent, endprotoent, endservent, getsockopt
2055 SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR,
2056 kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR,
2057 lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv
2058 ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe
2059 READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2060 RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2061 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP,
2062 setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt
2063 SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS,
2064 shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET,
2065 socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat
2066 EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
2067 FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
2068 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
2069 wait, waitpid PID,FLAGS
2075 v1.48, 02 February 2001, v1.47, 22 March 2000, v1.46, 12 February 2000,
2076 v1.45, 20 December 1999, v1.44, 19 July 1999, v1.43, 24 May 1999, v1.42, 22
2077 May 1999, v1.41, 19 May 1999, v1.40, 11 April 1999, v1.39, 11 February
2078 1999, v1.38, 31 December 1998, v1.37, 19 December 1998, v1.36, 9 September
2079 1998, v1.35, 13 August 1998, v1.33, 06 August 1998, v1.32, 05 August 1998,
2080 v1.30, 03 August 1998, v1.23, 10 July 1998
2082 =item Supported Platforms
2086 =item AUTHORS / CONTRIBUTORS
2092 =head2 perllocale - Perl locale handling (internationalization and
2099 =item PREPARING TO USE LOCALES
2105 =item The use locale pragma
2107 =item The setlocale function
2109 =item Finding locales
2111 =item LOCALE PROBLEMS
2113 =item Temporarily fixing locale problems
2115 =item Permanently fixing locale problems
2117 =item Permanently fixing your system's locale configuration
2119 =item Fixing system locale configuration
2121 =item The localeconv function
2123 =item I18N::Langinfo
2127 =item LOCALE CATEGORIES
2131 =item Category LC_COLLATE: Collation
2133 =item Category LC_CTYPE: Character Types
2135 =item Category LC_NUMERIC: Numeric Formatting
2137 =item Category LC_MONETARY: Formatting of monetary amounts
2141 =item Other categories
2149 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
2150 LC_NUMERIC, LC_TIME, LANG
2156 =item Backward compatibility
2158 =item I18N:Collate obsolete
2160 =item Sort speed and memory use impacts
2162 =item write() and LC_NUMERIC
2164 =item Freely available locale definitions
2168 =item An imperfect standard
2176 =item Broken systems
2186 =head2 perluniintro - Perl Unicode introduction
2196 =item Perl's Unicode Support
2198 =item Perl's Unicode Model
2200 =item Creating Unicode
2202 =item Handling Unicode
2204 =item Legacy Encodings
2208 =item Displaying Unicode As Text
2212 =item Advanced Topics
2216 =item Questions With Answers
2218 Will My Old Scripts Break?, How Do I Make My Scripts Work With Unicode?,
2219 How Do I Know Whether My String Is In Unicode?, How Do I Detect Data That's
2220 Not Valid In a Particular Encoding, How Do I Convert Binary Data Into a
2221 Particular Encoding, Or Vice Versa?, How Do I Display Unicode? How Do I
2222 Input Unicode?, How Does Unicode Work With Traditional Locales?
2224 =item Hexadecimal Notation
2226 =item Further Resources
2230 =item UNICODE IN OLDER PERLS
2234 =item ACKNOWLEDGEMENTS
2236 =item AUTHOR, COPYRIGHT, AND LICENSE
2240 =head2 perlunicode - Unicode support in Perl
2248 =item Important Caveats
2250 Input and Output Disciplines, Regular Expressions, C<use utf8> still needed
2251 to enable UTF-8/UTF-EBCDIC in scripts
2253 =item Byte and Character semantics
2255 =item Effects of character semantics
2261 =item Character encodings for input and output
2267 =item UNICODE REGULAR EXPRESSION SUPPORT LEVEL
2271 =item Unicode Encodings
2273 UTF-8, UTF-EBCDIC, UTF-16, UTF-16BE, UTF16-LE, Surrogates, and BOMs (Byte
2274 Order Marks), UTF-32, UTF-32BE, UTF32-LE, UCS-2, UCS-4, UTF-7
2276 =item Security Implications of Malformed UTF-8
2278 =item Unicode in Perl on EBCDIC
2280 =item Using Unicode in XS
2288 =head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
2294 =item COMMON CHARACTER CODE SETS
2302 =item Latin 1 (ISO 8859-1)
2306 =item 13 variant characters
2314 =item Unicode and UTF
2318 =item SINGLE OCTET TABLES
2320 recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
2322 =item IDENTIFYING CHARACTER CODE SETS
2336 =item OPERATOR DIFFERENCES
2338 =item FUNCTION DIFFERENCES
2340 chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
2342 =item REGULAR EXPRESSION DIFFERENCES
2350 =item Ignore ASCII vs. EBCDIC sort differences.
2352 =item MONO CASE then sort data.
2354 =item Convert, sort data, then re convert.
2356 =item Perform sorting on one type of machine only.
2360 =item TRANSFORMATION FORMATS
2364 =item URL decoding and encoding
2366 =item uu encoding and decoding
2368 =item Quoted-Printable encoding and decoding
2370 =item Caesarian ciphers
2374 =item Hashing order and checksums
2378 =item MULTI OCTET CHARACTER SETS
2390 chcp, dataset access, OS/390, z/OS iconv, locales
2410 =head2 perlsec - Perl security
2418 =item Laundering and Detecting Tainted Data
2420 =item Switches On the "#!" Line
2422 =item Cleaning Up Your Path
2426 =item Protecting Your Programs
2434 =head2 perlmod - Perl modules (packages and symbol tables)
2446 =item Package Constructors and Destructors
2452 =item Making your module threadsafe
2460 =head2 perlmodinstall - Installing CPAN Modules
2470 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
2471 module (sometimes unnecessary), B<INSTALL> the module
2485 =head2 perlmodlib - constructing new Perl modules and finding existing ones
2491 =item THE PERL MODULE LIBRARY
2495 =item Pragmatic Modules
2497 attributes, autouse, base, blib, bytes, charnames, constant, diagnostics,
2498 encoding, fields, filetest, integer, less, locale, open, overload, sigtrap,
2499 sort, strict, subs, utf8, vars, vmsish, warnings, warnings::register
2501 =item Standard Modules
2503 AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, Benchmark, CGI,
2504 CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push,
2505 CGI::Switch, CGI::Util, CPAN, CPAN::FirstTime, CPAN::Nox, Carp,
2506 Carp::Heavy, Class::ISA, Class::Struct, Cwd, DB, Devel::SelfStubber,
2507 Digest, DirHandle, Dumpvalue, English, Env, Exporter, Exporter::Heavy,
2508 ExtUtils::Command, ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install,
2509 ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin,
2510 ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS,
2511 ExtUtils::MM_Win32, ExtUtils::MakeMaker, ExtUtils::Manifest,
2512 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
2513 ExtUtils::testlib, Fatal, File::Basename, File::CheckTree, File::Compare,
2514 File::Copy, File::DosGlob, File::Find, File::Path, File::Spec,
2515 File::Spec::Cygwin, File::Spec::Epoc, File::Spec::Functions,
2516 File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS,
2517 File::Spec::Win32, File::Temp, File::stat, FileCache, FileHandle,
2518 Filter::Simple, FindBin, Getopt::Long, Getopt::Std, I18N::Collate,
2519 I18N::LangTags, I18N::LangTags::List, IPC::Open2, IPC::Open3,
2520 Locale::Constants, Locale::Country, Locale::Currency, Locale::Language,
2521 Locale::Maketext, Locale::Maketext::TPJ13, Math::BigFloat, Math::BigInt,
2522 Math::BigInt::Calc, Math::Complex, Math::Trig, Memoize,
2523 Memoize::AnyDBM_File, Memoize::Expire, Memoize::ExpireFile,
2524 Memoize::ExpireTest, Memoize::NDBM_File, Memoize::SDBM_File,
2525 Memoize::Storable, NEXT, Net::Cmd, Net::Config, Net::Domain, Net::FTP,
2526 Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, Net::SMTP, Net::Time,
2527 Net::hostent, Net::libnetFAQ, Net::netent, Net::protoent, Net::servent,
2528 PerlIO, Pod::Checker, Pod::Find, Pod::Functions, Pod::Html,
2529 Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils,
2530 Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color,
2531 Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, Pod::t::basic,
2532 Search::Dict, SelectSaver, SelfLoader, Shell, Switch, Symbol,
2533 Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test,
2534 Test::Builder, Test::Harness, Test::More, Test::Simple, Test::Tutorial,
2535 Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs,
2536 Text::Wrap, Thread, Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash,
2537 Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime,
2538 Time::tm, UNIVERSAL, Unicode::Collate, Unicode::UCD, User::grent,
2541 =item Extension Modules
2553 =item Central America
2565 =item Modules: Creation, Use, and Abuse
2569 =item Guidelines for Module Creation
2571 =item Guidelines for Converting Perl 4 Library Scripts into Modules
2573 =item Guidelines for Reusing Application Code
2581 =head2 perlmodstyle - Perl module style guide
2587 =item QUICK CHECKLIST
2591 =item Before you start
2599 =item Release considerations
2603 =item BEFORE YOU START WRITING A MODULE
2607 =item Has it been done before?
2609 =item Do one thing and do it well
2611 =item What's in a name?
2615 =item DESIGNING AND WRITING YOUR MODULE
2619 =item To OO or not to OO?
2621 =item Designing your API
2623 Write simple routines to do simple things, Separate functionality from
2624 output, Provide sensible shortcuts and defaults, Naming conventions,
2627 =item Strictness and warnings
2629 =item Backwards compatibility
2631 =item Error handling and messages
2635 =item DOCUMENTING YOUR MODULE
2641 =item README, INSTALL, release notes, changelogs
2645 =item RELEASE CONSIDERATIONS
2649 =item Version numbering
2651 =item Pre-requisites
2661 =item COMMON PITFALLS
2665 =item Reinventing the wheel
2667 =item Trying to do too much
2669 =item Inappropriate documentation
2675 L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Testing tools,
2676 http://pause.perl.org/, Any good book on software engineering
2682 =head2 perlnewmod - preparing a new module for distribution
2692 =item What should I make into a module?
2694 =item Step-by-step: Preparing the ground
2696 Look around, Check it's new, Discuss the need, Choose a name, Check again
2698 =item Step-by-step: Making the module
2700 Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
2701 L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
2702 documentation|perlpod>, Write tests, Write the README
2704 =item Step-by-step: Distributing your module
2706 Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
2707 tarball, Announce to the modules list, Announce to clpa, Fix bugs!
2717 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.2 $, $Date:
2718 2001/11/09 08:06:04 $)
2728 =item Who supports Perl? Who develops it? Why is it free?
2730 =item Which version of Perl should I use?
2732 =item What are perl4 and perl5?
2734 =item What is perl6?
2736 =item How stable is Perl?
2738 =item Is Perl difficult to learn?
2740 =item How does Perl compare with other languages like Java, Python, REXX,
2743 =item Can I do [task] in Perl?
2745 =item When shouldn't I program in Perl?
2747 =item What's the difference between "perl" and "Perl"?
2749 =item Is it a Perl program or a Perl script?
2751 =item What is a JAPH?
2753 =item Where can I get a list of Larry Wall witticisms?
2755 =item How can I convince my sysadmin/supervisor/employees to use version
2756 5/5.005/Perl instead of some other language?
2760 =item AUTHOR AND COPYRIGHT
2764 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.3 $,
2765 $Date: 2001/11/09 08:06:04 $)
2773 =item What machines support Perl? Where do I get it?
2775 =item How can I get a binary version of Perl?
2777 =item I don't have a C compiler on my system. How can I compile perl?
2779 =item I copied the Perl binary from one machine to another, but scripts
2782 =item I grabbed the sources and tried to compile but gdbm/dynamic
2783 loading/malloc/linking/... failed. How do I make it work?
2785 =item What modules and extensions are available for Perl? What is CPAN?
2786 What does CPAN/src/... mean?
2788 =item Is there an ISO or ANSI certified version of Perl?
2790 =item Where can I get information on Perl?
2792 =item What are the Perl newsgroups on Usenet? Where do I post questions?
2794 =item Where should I post source code?
2798 References, Tutorials, Task-Oriented, Special Topics
2800 =item Perl in Magazines
2802 =item Perl on the Net: FTP and WWW Access
2804 =item What mailing lists are there for Perl?
2806 =item Archives of comp.lang.perl.misc
2808 =item Where can I buy a commercial version of Perl?
2810 =item Where do I send bug reports?
2812 =item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
2816 =item AUTHOR AND COPYRIGHT
2820 =head2 perlfaq3 - Programming Tools ($Revision: 1.10 $, $Date: 2001/11/19
2829 =item How do I do (anything)?
2831 =item How can I use Perl interactively?
2833 =item Is there a Perl shell?
2835 =item How do I debug my Perl programs?
2837 =item How do I profile my Perl programs?
2839 =item How do I cross-reference my Perl programs?
2841 =item Is there a pretty-printer (formatter) for Perl?
2843 =item Is there a ctags for Perl?
2845 =item Is there an IDE or Windows Perl Editor?
2847 Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+,
2848 CodeMagicCD, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright,
2849 MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
2851 =item Where can I get Perl macros for vi?
2853 =item Where can I get perl-mode for emacs?
2855 =item How can I use curses with Perl?
2857 =item How can I use X or Tk with Perl?
2859 =item How can I generate simple menus without using CGI or Tk?
2861 =item How can I make my Perl program run faster?
2863 =item How can I make my Perl program take less memory?
2865 Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
2866 stringification, Pass by reference, Tie large variables to disk
2868 =item Is it unsafe to return a pointer to local data?
2870 =item How can I free an array or hash so my program shrinks?
2872 =item How can I make my CGI script more efficient?
2874 =item How can I hide the source for my Perl program?
2876 =item How can I compile my Perl program into byte code or C?
2878 =item How can I compile Perl into Java?
2880 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2882 =item Can I write useful Perl programs on the command line?
2884 =item Why don't Perl one-liners work on my DOS/Mac/VMS system?
2886 =item Where can I learn about CGI or Web programming in Perl?
2888 =item Where can I learn about object-oriented Perl programming?
2890 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
2892 =item I've read perlembed, perlguts, etc., but I can't embed perl in
2893 my C program; what am I doing wrong?
2895 =item When I tried to run my script, I got this message. What does it
2898 =item What's MakeMaker?
2902 =item AUTHOR AND COPYRIGHT
2906 =head2 perlfaq4 - Data Manipulation ($Revision: 1.10 $, $Date: 2002/01/01
2917 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
2918 numbers I should be getting (eg, 19.95)?
2920 =item Why isn't my octal data interpreted correctly?
2922 =item Does Perl have a round() function? What about ceil() and floor()?
2925 =item How do I convert between numeric representations:
2927 B<How do I convert Hexadecimal into decimal:>, B<How do I convert from
2928 decimal to hexadecimal:>, B<How do I convert from octal to decimal:>, B<How
2929 do I convert from decimal to octal:>, B<How do I convert from binary to
2930 decimal:>, B<How do I convert from decimal to binary:>
2932 =item Why doesn't & work the way I want it to?
2934 =item How do I multiply matrices?
2936 =item How do I perform an operation on a series of integers?
2938 =item How can I output Roman numerals?
2940 =item Why aren't my random numbers random?
2948 =item How do I find the week-of-the-year/day-of-the-year?
2950 =item How do I find the current century or millennium?
2952 =item How can I compare two dates and find the difference?
2954 =item How can I take a string and turn it into epoch seconds?
2956 =item How can I find the Julian Day?
2958 =item How do I find yesterday's date?
2960 =item Does Perl have a Year 2000 problem? Is Perl Y2K compliant?
2968 =item How do I validate input?
2970 =item How do I unescape a string?
2972 =item How do I remove consecutive pairs of characters?
2974 =item How do I expand function calls in a string?
2976 =item How do I find matching/nesting anything?
2978 =item How do I reverse a string?
2980 =item How do I expand tabs in a string?
2982 =item How do I reformat a paragraph?
2984 =item How can I access/change the first N letters of a string?
2986 =item How do I change the Nth occurrence of something?
2988 =item How can I count the number of occurrences of a substring within a
2991 =item How do I capitalize all the words on one line?
2993 =item How can I split a [character] delimited string except when inside
2994 [character]? (Comma-separated files)
2996 =item How do I strip blank space from the beginning/end of a string?
2998 =item How do I pad a string with blanks or pad a number with zeroes?
3000 =item How do I extract selected columns from a string?
3002 =item How do I find the soundex value of a string?
3004 =item How can I expand variables in text strings?
3006 =item What's wrong with always quoting "$vars"?
3008 =item Why don't my <<HERE documents work?
3010 1. There must be no space after the << part, 2. There (probably) should be
3011 a semicolon at the end, 3. You can't (easily) have any space in front of
3020 =item What is the difference between a list and an array?
3022 =item What is the difference between $array[1] and @array[1]?
3024 =item How can I remove duplicate elements from a list or array?
3028 =item How can I tell whether a certain element is contained in a list or
3031 =item How do I compute the difference of two arrays? How do I compute the
3032 intersection of two arrays?
3034 =item How do I test whether two arrays or hashes are equal?
3036 =item How do I find the first array element for which a condition is true?
3038 =item How do I handle linked lists?
3040 =item How do I handle circular lists?
3042 =item How do I shuffle an array randomly?
3044 =item How do I process/modify each element of an array?
3046 =item How do I select a random element from an array?
3048 =item How do I permute N elements of a list?
3050 =item How do I sort an array by (anything)?
3052 =item How do I manipulate arrays of bits?
3054 =item Why does defined() return true on empty arrays and hashes?
3058 =item Data: Hashes (Associative Arrays)
3062 =item How do I process an entire hash?
3064 =item What happens if I add or remove keys from a hash while iterating over
3067 =item How do I look up a hash element by value?
3069 =item How can I know how many entries are in a hash?
3071 =item How do I sort a hash (optionally by value instead of key)?
3073 =item How can I always keep my hash sorted?
3075 =item What's the difference between "delete" and "undef" with hashes?
3077 =item Why don't my tied hashes make the defined/exists distinction?
3079 =item How do I reset an each() operation part-way through?
3081 =item How can I get the unique keys from two hashes?
3083 =item How can I store a multidimensional array in a DBM file?
3085 =item How can I make my hash remember the order I put elements into it?
3087 =item Why does passing a subroutine an undefined element in a hash create
3090 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
3091 array of hashes or arrays?
3093 =item How can I use a reference as a hash key?
3101 =item How do I handle binary data correctly?
3103 =item How do I determine whether a scalar is a number/whole/integer/float?
3105 =item How do I keep persistent data across program calls?
3107 =item How do I print out or copy a recursive data structure?
3109 =item How do I define methods for every class/object?
3111 =item How do I verify a credit card checksum?
3113 =item How do I pack arrays of doubles or floats for XS code?
3117 =item AUTHOR AND COPYRIGHT
3121 =head2 perlfaq5 - Files and Formats ($Revision: 1.6 $, $Date: 2001/12/19
3130 =item How do I flush/unbuffer an output filehandle? Why must I do this?
3132 =item How do I change one line in a file/delete a line in a file/insert a
3133 line in the middle of a file/append to the beginning of a file?
3135 =item How do I count the number of lines in a file?
3137 =item How do I make a temporary file name?
3139 =item How can I manipulate fixed-record-length files?
3141 =item How can I make a filehandle local to a subroutine? How do I pass
3142 filehandles between subroutines? How do I make an array of filehandles?
3144 =item How can I use a filehandle indirectly?
3146 =item How can I set up a footer format to be used with write()?
3148 =item How can I write() into a string?
3150 =item How can I output my numbers with commas added?
3152 =item How can I translate tildes (~) in a filename?
3154 =item How come when I open a file read-write it wipes it out?
3156 =item Why do I sometimes get an "Argument list too long" when I use <*>?
3158 =item Is there a leak/bug in glob()?
3160 =item How can I open a file with a leading ">" or trailing blanks?
3162 =item How can I reliably rename a file?
3164 =item How can I lock a file?
3166 =item Why can't I just open(FH, ">file.lock")?
3168 =item I still don't get locking. I just want to increment the number in
3169 the file. How can I do this?
3171 =item All I want to do is append a small amount of text to the end of a
3172 file. Do I still have to use locking?
3174 =item How do I randomly update a binary file?
3176 =item How do I get a file's timestamp in perl?
3178 =item How do I set a file's timestamp in perl?
3180 =item How do I print to more than one file at once?
3182 =item How can I read in an entire file all at once?
3184 =item How can I read in a file by paragraphs?
3186 =item How can I read a single character from a file? From the keyboard?
3188 =item How can I tell whether there's a character waiting on a filehandle?
3190 =item How do I do a C<tail -f> in perl?
3192 =item How do I dup() a filehandle in Perl?
3194 =item How do I close a file descriptor by number?
3196 =item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
3197 `C:\temp\foo.exe` work?
3199 =item Why doesn't glob("*.*") get all the files?
3201 =item Why does Perl let me delete read-only files? Why does C<-i> clobber
3202 protected files? Isn't this a bug in Perl?
3204 =item How do I select a random line from a file?
3206 =item Why do I get weird spaces when I print an array of lines?
3210 =item AUTHOR AND COPYRIGHT
3214 =head2 perlfaq6 - Regexes ($Revision: 1.6 $, $Date: 2002/01/01 22:26:45 $)
3222 =item How can I hope to use regular expressions without creating illegible
3223 and unmaintainable code?
3225 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
3227 =item I'm having trouble matching over more than one line. What's wrong?
3229 =item How can I pull out lines between two patterns that are themselves on
3232 =item I put a regular expression into $/ but it didn't work. What's wrong?
3234 =item How do I substitute case insensitively on the LHS while preserving
3237 =item How can I make C<\w> match national character sets?
3239 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
3241 =item How can I quote a variable to use in a regex?
3243 =item What is C</o> really for?
3245 =item How do I use a regular expression to strip C style comments from a
3248 =item Can I use Perl regular expressions to match balanced text?
3250 =item What does it mean that regexes are greedy? How can I get around it?
3252 =item How do I process each word on each line?
3254 =item How can I print out a word-frequency or line-frequency summary?
3256 =item How can I do approximate matching?
3258 =item How do I efficiently match many regular expressions at once?
3260 =item Why don't word-boundary searches with C<\b> work for me?
3262 =item Why does using $&, $`, or $' slow my program down?
3264 =item What good is C<\G> in a regular expression?
3266 =item Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
3268 =item What's wrong with using grep or map in a void context?
3270 =item How can I match strings with multibyte characters?
3272 =item How do I match a pattern that is supplied by the user?
3276 =item AUTHOR AND COPYRIGHT
3280 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.5 $, $Date: 2002/01/01
3289 =item Can I get a BNF/yacc/RE for the Perl language?
3291 =item What are all these $@%&* punctuation signs, and how do I know when to
3294 =item Do I always/never have to quote my strings or use semicolons and
3297 =item How do I skip some return values?
3299 =item How do I temporarily block warnings?
3301 =item What's an extension?
3303 =item Why do Perl operators have different precedence than C operators?
3305 =item How do I declare/create a structure?
3307 =item How do I create a module?
3309 =item How do I create a class?
3311 =item How can I tell if a variable is tainted?
3313 =item What's a closure?
3315 =item What is variable suicide and how can I prevent it?
3317 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
3320 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
3323 =item How do I create a static variable?
3325 =item What's the difference between dynamic and lexical (static) scoping?
3326 Between local() and my()?
3328 =item How can I access a dynamic variable while a similarly named lexical
3331 =item What's the difference between deep and shallow binding?
3333 =item Why doesn't "my($foo) = <FILE>;" work right?
3335 =item How do I redefine a builtin function, operator, or method?
3337 =item What's the difference between calling a function as &foo and foo()?
3339 =item How do I create a switch or case statement?
3341 =item How can I catch accesses to undefined variables/functions/methods?
3343 =item Why can't a method included in this same file be found?
3345 =item How can I find out my current package?
3347 =item How can I comment out a large block of perl code?
3349 =item How do I clear a package?
3351 =item How can I use a variable as a variable name?
3355 =item AUTHOR AND COPYRIGHT
3359 =head2 perlfaq8 - System Interaction ($Revision: 1.4 $, $Date: 2001/11/09
3368 =item How do I find out which operating system I'm running under?
3370 =item How come exec() doesn't return?
3372 =item How do I do fancy stuff with the keyboard/screen/mouse?
3374 Keyboard, Screen, Mouse
3376 =item How do I print something out in color?
3378 =item How do I read just one key without waiting for a return key?
3380 =item How do I check whether input is ready on the keyboard?
3382 =item How do I clear the screen?
3384 =item How do I get the screen size?
3386 =item How do I ask the user for a password?
3388 =item How do I read and write the serial port?
3390 lockfiles, open mode, end of line, flushing output, non-blocking input
3392 =item How do I decode encrypted password files?
3394 =item How do I start a process in the background?
3396 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
3398 =item How do I trap control characters/signals?
3400 =item How do I modify the shadow password file on a Unix system?
3402 =item How do I set the time and date?
3404 =item How can I sleep() or alarm() for under a second?
3406 =item How can I measure time under a second?
3408 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
3410 =item Why doesn't my sockets program work under System V (Solaris)? What
3411 does the error message "Protocol not supported" mean?
3413 =item How can I call my system's unique C functions from Perl?
3415 =item Where do I get the include files to do ioctl() or syscall()?
3417 =item Why do setuid perl scripts complain about kernel problems?
3419 =item How can I open a pipe both to and from a command?
3421 =item Why can't I get the output of a command with system()?
3423 =item How can I capture STDERR from an external command?
3425 =item Why doesn't open() return an error when a pipe open fails?
3427 =item What's wrong with using backticks in a void context?
3429 =item How can I call backticks without shell processing?
3431 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
3434 =item How can I convert my shell script to perl?
3436 =item Can I use perl to run a telnet or ftp session?
3438 =item How can I write expect in Perl?
3440 =item Is there a way to hide perl's command line from programs such as
3443 =item I {changed directory, modified my environment} in a perl script. How
3444 come the change disappeared when I exited the script? How do I get my
3445 changes to be visible?
3449 =item How do I close a process's filehandle without waiting for it to
3452 =item How do I fork a daemon process?
3454 =item How do I find out if I'm running interactively or not?
3456 =item How do I timeout a slow event?
3458 =item How do I set CPU limits?
3460 =item How do I avoid zombies on a Unix system?
3462 =item How do I use an SQL database?
3464 =item How do I make a system() exit on control-C?
3466 =item How do I open a file without blocking?
3468 =item How do I install a module from CPAN?
3470 =item What's the difference between require and use?
3472 =item How do I keep my own module/library directory?
3474 =item How do I add the directory my program lives in to the module/library
3477 =item How do I add a directory to my include path at runtime?
3479 =item What is socket.ph and where do I get it?
3483 =item AUTHOR AND COPYRIGHT
3487 =head2 perlfaq9 - Networking ($Revision: 1.5 $, $Date: 2001/11/09 08:06:04
3496 =item What is the correct form of response from a CGI script?
3498 =item My CGI script runs from the command line but not the browser. (500
3501 =item How can I get better error messages from a CGI program?
3503 =item How do I remove HTML from a string?
3505 =item How do I extract URLs?
3507 =item How do I download a file from the user's machine? How do I open a
3508 file on another machine?
3510 =item How do I make a pop-up menu in HTML?
3512 =item How do I fetch an HTML file?
3514 =item How do I automate an HTML form submission?
3516 =item How do I decode or create those %-encodings on the web?
3518 =item How do I redirect to another page?
3520 =item How do I put a password on my web pages?
3522 =item How do I edit my .htpasswd and .htgroup files with Perl?
3524 =item How do I make sure users can't enter values into a form that cause my
3525 CGI script to do bad things?
3527 =item How do I parse a mail header?
3529 =item How do I decode a CGI form?
3531 =item How do I check a valid mail address?
3533 =item How do I decode a MIME/BASE64 string?
3535 =item How do I return the user's mail address?
3537 =item How do I send mail?
3539 =item How do I use MIME to make an attachment to a mail message?
3541 =item How do I read mail?
3543 =item How do I find out my hostname/domainname/IP address?
3545 =item How do I fetch a news article or the active newsgroups?
3547 =item How do I fetch/put an FTP file?
3549 =item How can I do RPC in Perl?
3553 =item AUTHOR AND COPYRIGHT
3557 =head2 perlcompile - Introduction to the Perl Compiler-Translator
3567 B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
3571 =item Using The Back Ends
3575 =item The Cross Referencing Back End
3579 =item The Decompiling Back End
3581 =item The Lint Back End
3583 =item The Simple C Back End
3585 =item The Bytecode Back End
3587 =item The Optimized C Back End
3589 B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC,
3590 B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj,
3591 B::Stash, B::Terse, B::Xref
3595 =item KNOWN PROBLEMS
3601 =head2 perlembed - how to embed perl in your C program
3611 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
3612 Perl?>, B<Use C from C?>, B<Use Perl from C?>
3616 =item Compiling your C program
3618 =item Adding a Perl interpreter to your C program
3620 =item Calling a Perl subroutine from your C program
3622 =item Evaluating a Perl statement from your C program
3624 =item Performing Perl pattern matches and substitutions from your C program
3626 =item Fiddling with the Perl stack from your C program
3628 =item Maintaining a persistent interpreter
3630 =item Execution of END blocks
3632 =item Maintaining multiple interpreter instances
3634 =item Using Perl modules, which themselves use C libraries, from your C
3639 =item Embedding Perl under Win32
3649 =head2 perldebguts - Guts of Perl debugging
3655 =item Debugger Internals
3659 =item Writing Your Own Debugger
3663 =item Frame Listing Output Examples
3665 =item Debugging regular expressions
3669 =item Compile-time output
3671 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
3672 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
3673 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
3676 =item Types of nodes
3678 =item Run-time output
3682 =item Debugging Perl memory usage
3686 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
3688 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
3689 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
3692 =item Example of using B<-DL> switch
3694 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
3696 =item B<-DL> details
3700 =item Limitations of B<-DL> statistics
3708 =head2 perlxstut, perlXStut - Tutorial for writing XSUBs
3720 =item Version caveat
3722 =item Dynamic Loading versus Static Loading
3734 =item What has gone on?
3736 =item Writing good test scripts
3740 =item What's new here?
3742 =item Input and Output Parameters
3744 =item The XSUBPP Program
3746 =item The TYPEMAP file
3748 =item Warning about Output Arguments
3752 =item What has happened here?
3754 =item Anatomy of .xs file
3756 =item Getting the fat out of XSUBs
3758 =item More about XSUB arguments
3760 =item The Argument Stack
3762 =item Extending your Extension
3764 =item Documenting your Extension
3766 =item Installing your Extension
3770 =item New Things in this Example
3774 =item New Things in this Example
3776 =item EXAMPLE 7 (Coming Soon)
3778 =item EXAMPLE 8 (Coming Soon)
3780 =item EXAMPLE 9 (Coming Soon)
3782 =item Troubleshooting these Examples
3798 =head2 perlxs - XS language reference manual
3810 =item The Anatomy of an XSUB
3812 =item The Argument Stack
3814 =item The RETVAL Variable
3816 =item The MODULE Keyword
3818 =item The PACKAGE Keyword
3820 =item The PREFIX Keyword
3822 =item The OUTPUT: Keyword
3824 =item The NO_OUTPUT Keyword
3826 =item The CODE: Keyword
3828 =item The INIT: Keyword
3830 =item The NO_INIT Keyword
3832 =item Initializing Function Parameters
3834 =item Default Parameter Values
3836 =item The PREINIT: Keyword
3838 =item The SCOPE: Keyword
3840 =item The INPUT: Keyword
3842 =item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords
3844 =item Variable-length Parameter Lists
3846 =item The C_ARGS: Keyword
3848 =item The PPCODE: Keyword
3850 =item Returning Undef And Empty Lists
3852 =item The REQUIRE: Keyword
3854 =item The CLEANUP: Keyword
3856 =item The POSTCALL: Keyword
3858 =item The BOOT: Keyword
3860 =item The VERSIONCHECK: Keyword
3862 =item The PROTOTYPES: Keyword
3864 =item The PROTOTYPE: Keyword
3866 =item The ALIAS: Keyword
3868 =item The INTERFACE: Keyword
3870 =item The INTERFACE_MACRO: Keyword
3872 =item The INCLUDE: Keyword
3874 =item The CASE: Keyword
3876 =item The & Unary Operator
3878 =item Inserting POD, Comments and C Preprocessor Directives
3880 =item Using XS With C++
3882 =item Interface Strategy
3884 =item Perl Objects And C Structures
3888 =item Safely Storing Static Data in XS
3890 MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT
3902 =head2 perlclib - Internal replacements for standard C library functions
3912 C<t>, C<p>, C<n>, C<s>
3914 =item File Operations
3916 =item File Input and Output
3918 =item File Positioning
3920 =item Memory Management and String Handling
3922 =item Character Class Tests
3924 =item F<stdlib.h> functions
3926 =item Miscellaneous functions
3934 =head2 perlguts - Introduction to the Perl API
3946 =item What is an "IV"?
3948 =item Working with SVs
3952 =item What's Really Stored in an SV?
3954 =item Working with AVs
3956 =item Working with HVs
3958 =item Hash API Extensions
3962 =item Blessed References and Class Objects
3964 =item Creating New Variables
3966 =item Reference Counts and Mortality
3968 =item Stashes and Globs
3970 =item Double-Typed SVs
3972 =item Magic Variables
3974 =item Assigning Magic
3976 =item Magic Virtual Tables
3980 =item Understanding the Magic of Tied Hashes and Arrays
3982 =item Localizing changes
3984 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
3985 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEMORTALIZESV(SV
3986 *sv)>, C<SAVEFREEOP(OP *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>,
3987 C<SAVEDELETE(HV *hv, char *key, I32 length)>,
3988 C<SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)>,
3989 C<SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)>, C<SAVESTACK_POS()>, C<SV*
3990 save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>,
3991 C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>,
3992 C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void
3993 save_hptr(HV **hptr)>
4001 =item XSUBs and the Argument Stack
4003 =item Calling Perl Routines from within C Programs
4005 =item Memory Allocation
4009 =item Putting a C value on Perl stack
4013 =item Scratchpads and recursion
4023 =item Examining the tree
4025 =item Compile pass 1: check routines
4027 =item Compile pass 1a: constant folding
4029 =item Compile pass 2: context propagation
4031 =item Compile pass 3: peephole optimization
4033 =item Pluggable runops
4037 =item Examining internal data structures with the C<dump> functions
4039 =item How multiple interpreters and concurrency are supported
4043 =item Background and PERL_IMPLICIT_CONTEXT
4045 =item So what happened to dTHR?
4047 =item How do I use all this in extensions?
4049 =item Should I do anything special if I call perl from multiple threads?
4051 =item Future Plans and PERL_IMPLICIT_SYS
4055 =item Internal Functions
4057 A, p, d, s, n, r, f, M, o, j, x
4061 =item Formatted Printing of IVs, UVs, and NVs
4063 =item Pointer-To-Integer and Integer-To-Pointer
4065 =item Source Documentation
4069 =item Unicode Support
4073 =item What B<is> Unicode, anyway?
4075 =item How can I recognise a UTF8 string?
4077 =item How does UTF8 represent Unicode characters?
4079 =item How does Perl store UTF8 strings?
4081 =item How do I convert a string to UTF8?
4083 =item Is there anything else I need to know?
4087 =item Custom Operators
4095 =head2 perlcall - Perl calling conventions from C
4101 An Error Handler, An Event Driven Program
4103 =item THE CALL_ FUNCTIONS
4105 call_sv, call_pv, call_method, call_argv
4125 =item Determining the Context
4129 =item KNOWN PROBLEMS
4135 =item No Parameters, Nothing returned
4137 =item Passing Parameters
4139 =item Returning a Scalar
4141 =item Returning a list of values
4143 =item Returning a list in a scalar context
4145 =item Returning Data from Perl via the parameter list
4149 =item Using G_KEEPERR
4153 =item Using call_argv
4155 =item Using call_method
4159 =item Using Perl to dispose of temporaries
4161 =item Strategies for storing Callback Context Information
4163 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
4164 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
4167 =item Alternate Stack Manipulation
4169 =item Creating and calling an anonymous subroutine in C
4181 =head2 perlutil - utilities packaged with the Perl distribution
4191 L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>,
4192 L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>,
4193 L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>,
4194 L<roffitall|roffitall>
4198 L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
4200 =item Administration
4202 L<libnetcfg|libnetcfg>
4206 L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
4207 L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
4215 =head2 perlfilter - Source Filters
4225 =item WRITING A SOURCE FILTER
4227 =item WRITING A SOURCE FILTER IN C
4229 B<Decryption Filters>
4231 =item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
4233 =item WRITING A SOURCE FILTER IN PERL
4235 =item USING CONTEXT: THE DEBUG FILTER
4247 =head2 perldbmfilter - Perl DBM Filters
4255 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
4256 B<filter_fetch_value>
4262 =item An Example -- the NULL termination problem.
4264 =item Another Example -- Key is a C int.
4274 =head2 perlapi - autogenerated documentation for the perl public API
4280 =item "Gimme" Values
4282 GIMME, GIMME_V, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID
4284 =item Array Manipulation Functions
4286 AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill,
4287 av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift,
4288 get_av, newAV, Nullav, sortsv
4290 =item Callback Functions
4292 call_argv, call_method, call_pv, call_sv, ENTER, eval_pv, eval_sv,
4293 FREETMPS, LEAVE, SAVETMPS
4295 =item Character classes
4297 isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, toLOWER, toUPPER
4299 =item Cloning an interpreter
4303 =item CV Manipulation Functions
4305 CvSTASH, get_cv, Nullcv
4307 =item Embedding Functions
4309 load_module, perl_alloc, perl_construct, perl_destruct, perl_free,
4310 perl_parse, perl_run, require_pv
4312 =item Global Variables
4314 PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes
4318 GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, gv_stashpv,
4323 HEf_SVKEY, Nullch, Nullsv
4325 =item Hash Manipulation Functions
4327 get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set,
4328 HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists,
4329 hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey,
4330 hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, hv_store,
4331 hv_store_ent, hv_undef, newHV, Nullhv
4333 =item Magical Functions
4335 mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set,
4336 SvGETMAGIC, SvSETMAGIC, SvSetMagicSV, SvSetSV, SvSetSV_nosteal
4338 =item Memory Management
4340 Copy, Move, New, Newc, NEWSV, Newz, Renew, Renewc, Safefree, savepv,
4341 savepvn, StructCopy, Zero
4343 =item Miscellaneous Functions
4345 fbm_compile, fbm_instr, form, getcwd_sv, strEQ, strGE, strGT, strLE, strLT,
4346 strNE, strnEQ, strnNE
4348 =item Numeric functions
4350 grok_bin, grok_hex, grok_number, grok_numeric_radix, grok_oct, scan_bin,
4353 =item Optree Manipulation Functions
4355 cv_const_sv, newCONSTSUB, newXS
4357 =item Shared SV Functions
4359 sharedsv_find, sharedsv_init, sharedsv_lock, sharedsv_new,
4360 sharedsv_thrcnt_dec, sharedsv_thrcnt_inc, sharedsv_unlock
4362 =item Stack Manipulation Macros
4364 dMARK, dORIGMARK, dSP, EXTEND, MARK, ORIGMARK, POPi, POPl, POPn, POPp,
4365 POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu,
4366 PUTBACK, SP, SPAGAIN, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XSRETURN,
4367 XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF,
4368 XSRETURN_YES, XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES
4372 svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG
4374 =item SV Manipulation Functions
4376 get_sv, looks_like_number, newRV_inc, newRV_noinc, newSV, newSViv, newSVnv,
4377 newSVpv, newSVpvf, newSVpvn, newSVpvn_share, newSVrv, newSVsv, newSVuv,
4378 new_vstring, SvCUR, SvCUR_set, SvEND, SvGROW, SvIOK, SvIOKp, SvIOK_notUV,
4379 SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVx,
4380 SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off,
4381 SvNOK_on, SvNOK_only, SvNV, SvNVX, SvNVx, SvOK, SvOOK, SvPOK, SvPOKp,
4382 SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only_UTF8, SvPV, SvPVbyte,
4383 SvPVbytex, SvPVbytex_force, SvPVbyte_force, SvPVbyte_nolen, SvPVutf8,
4384 SvPVutf8x, SvPVutf8x_force, SvPVutf8_force, SvPVutf8_nolen, SvPVX, SvPVx,
4385 SvPV_force, SvPV_force_nomg, SvPV_nolen, SvREFCNT, SvREFCNT_dec,
4386 SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSetMagicSV_nosteal,
4387 SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SvTRUE, SvTYPE,
4388 SvUOK, SvUPGRADE, SvUTF8, SvUTF8_off, SvUTF8_on, SvUV, SvUVx, SvUVX,
4389 sv_2bool, sv_2cv, sv_2io, sv_2iv, sv_2mortal, sv_2nv, sv_2pvbyte,
4390 sv_2pvbyte_nolen, sv_2pvutf8, sv_2pvutf8_nolen, sv_2pv_flags, sv_2pv_nolen,
4391 sv_2uv, sv_backoff, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn,
4392 sv_catpvn_flags, sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_flags,
4393 sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_collxfrm, sv_dec,
4394 sv_derived_from, sv_eq, sv_force_normal, sv_force_normal_flags, sv_free,
4395 sv_gets, sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_iv, sv_len,
4396 sv_len_utf8, sv_magic, sv_mortalcopy, sv_newmortal, sv_newref, sv_nv,
4397 sv_pos_b2u, sv_pos_u2b, sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force,
4398 sv_pvn, sv_pvn_force, sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n,
4399 sv_pvutf8n_force, sv_reftype, sv_replace, sv_report_used, sv_reset,
4400 sv_rvweaken, sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv,
4401 sv_setpvf, sv_setpvf_mg, sv_setpviv, sv_setpviv_mg, sv_setpvn,
4402 sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv,
4403 sv_setref_pvn, sv_setref_uv, sv_setsv, sv_setsv_flags, sv_setsv_mg,
4404 sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, sv_true, sv_unmagic, sv_unref,
4405 sv_unref_flags, sv_untaint, sv_upgrade, sv_usepvn, sv_usepvn_mg,
4406 sv_utf8_decode, sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade,
4407 sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn, sv_vsetpvfn
4409 =item Unicode Support
4411 bytes_from_utf8, bytes_to_utf8, ibcmp_utf8, is_utf8_char, is_utf8_string,
4412 pv_uni_display, sv_recode_to_utf8, sv_uni_display, to_utf8_case,
4413 to_utf8_fold, to_utf8_lower, to_utf8_title, to_utf8_upper, utf8n_to_uvchr,
4414 utf8n_to_uvuni, utf8_distance, utf8_hop, utf8_length, utf8_to_bytes,
4415 utf8_to_uvchr, utf8_to_uvuni, uvchr_to_utf8, uvuni_to_utf8_flags
4417 =item Variables created by C<xsubpp> and C<xsubpp> internal functions
4419 ax, CLASS, dAX, dITEMS, dXSARGS, dXSI32, items, ix, newXSproto, RETVAL, ST,
4420 THIS, XS, XSRETURN_EMPTY, XS_VERSION, XS_VERSION_BOOTCHECK
4422 =item Warning and Dieing
4432 =head2 perlintern - autogenerated documentation of purely B<internal>
4439 =item Global Variables
4441 PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_ofs_sv,
4452 =item Stack Manipulation Macros
4456 =item SV Manipulation Functions
4458 report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, sv_free_arenas
4466 =head2 perliol - C API for Perl's implementation of IO in Layers.
4476 =item History and Background
4478 =item Layers vs Disciplines
4480 =item Data Structures
4482 =item Functions and Attributes
4484 =item Per-instance Data
4486 =item Layers in action.
4488 =item Per-instance flag bits
4490 PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR,
4491 PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8,
4492 PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF,
4493 PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS
4495 =item Methods in Detail
4497 char * name;, Size_t size;, IV kind;, PERLIO_K_BUFFERED, PERLIO_K_CANCRLF,
4498 PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, PERLIO_K_RAW, IV
4499 (*Pushed)(pTHX_ PerlIO *f,const char *mode, SV *arg);, IV
4500 (*Popped)(pTHX_ PerlIO *f);, PerlIO * (*Open)(...);, SV *
4501 (*Getarg)(pTHX_ PerlIO *f, CLONE_PARAMS *param, int flags), IV
4502 (*Fileno)(pTHX_ PerlIO *f);, PerlIO * (*Dup)(pTHX_ PerlIO *f, PerlIO *o,
4503 CLONE_PARAMS *param, int flags), SSize_t (*Read)(pTHX_ PerlIO *f,
4504 void *vbuf, Size_t count);, SSize_t (*Unread)(pTHX_ PerlIO *f, const
4505 void *vbuf, Size_t count);, SSize_t (*Write)(PerlIO *f, const void
4506 *vbuf, Size_t count);, IV (*Seek)(pTHX_ PerlIO *f, Off_t
4507 offset, int whence);, Off_t (*Tell)(pTHX_ PerlIO *f);, IV
4508 (*Close)(pTHX_ PerlIO *f);, IV (*Flush)(pTHX_ PerlIO *f);,
4509 IV (*Fill)(pTHX_ PerlIO *f);, IV (*Eof)(pTHX_ PerlIO
4510 *f);, IV (*Error)(pTHX_ PerlIO *f);, void
4511 (*Clearerr)(pTHX_ PerlIO *f);, void (*Setlinebuf)(pTHX_ PerlIO
4512 *f);, STDCHAR * (*Get_base)(pTHX_ PerlIO *f);, Size_t
4513 (*Get_bufsiz)(pTHX_ PerlIO *f);, STDCHAR * (*Get_ptr)(pTHX_ PerlIO
4514 *f);, SSize_t (*Get_cnt)(pTHX_ PerlIO *f);, void
4515 (*Set_ptrcnt)(pTHX_ PerlIO *f,STDCHAR *ptr,SSize_t cnt);
4519 "unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8"
4521 =item Extension Layers
4523 ":encoding", ":Scalar", ":Object" or ":Perl"
4531 =head2 perlapio - perl's IO abstraction interface.
4539 1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B<PerlIO_stdin()>,
4540 B<PerlIO_stdout()>, B<PerlIO_stderr()>, B<PerlIO_open(path, mode)>,
4541 B<PerlIO_fdopen(fd,mode)>, B<PerlIO_reopen(path,mode,f)>,
4542 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
4543 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
4544 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
4545 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
4546 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
4547 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_seek(f,offset,whence)>,
4548 B<PerlIO_tell(f)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
4549 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)>
4553 =item Co-existence with stdio
4555 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
4556 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>
4558 =item "Fast gets" Functions
4560 B<PerlIO_fast_gets(f)>, B<PerlIO_has_cntptr(f)>, B<PerlIO_get_cnt(f)>,
4561 B<PerlIO_get_ptr(f)>, B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_canset_cnt(f)>,
4562 B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>, B<PerlIO_get_base(f)>,
4563 B<PerlIO_get_bufsiz(f)>
4565 =item Other Functions
4567 PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers),
4568 'E<lt>' read, 'E<gt>' write, '+' read/write, PerlIO_debug(fmt,...)
4574 =head2 perltodo - Perl TO-DO List
4580 =item To do during 5.6.x
4584 =item Support for I/O disciplines
4586 =item Autoload bytes.pm
4588 =item Make "\u{XXXX}" et al work
4590 =item Create a char *sv_pvprintify(sv, STRLEN *lenp, UV flags)
4592 =item Overloadable regex assertions
4596 =item use Thread for iThreads
4598 =item make perl_clone optionally clone ops
4600 =item Work out exit/die semantics for threads
4602 =item Typed lexicals for compiler
4604 =item Compiler workarounds for Win32
4606 =item AUTOLOADing in the compiler
4608 =item Fixing comppadlist when compiling
4610 =item Cleaning up exported namespace
4612 =item Complete signal handling
4614 =item Out-of-source builds
4616 =item POSIX realtime support
4618 =item UNIX98 support
4622 =item Long double conversion
4626 =item Thread-safe regexes
4628 =item Arithmetic on non-Arabic numerals
4630 =item POSIX Unicode character classes
4632 =item Factoring out common suffices/prefices in regexps (trie optimization)
4634 =item Security audit shipped utilities
4636 =item Custom opcodes
4638 =item DLL Versioning
4640 =item Introduce @( and @)
4642 =item Floating point handling
4644 =item IV/UV preservation
4646 =item Replace pod2html with something using Pod::Parser
4648 =item Automate module testing on CPAN
4650 =item sendmsg and recvmsg
4652 =item Rewrite perlre documentation
4654 =item Convert example code to IO::Handle filehandles
4656 =item Document Win32 choices
4658 =item Check new modules
4660 =item Make roffitall find pods and libs itself
4664 =item To do at some point
4668 =item Remove regular expression recursion
4670 =item Memory leaks after failed eval
4672 =item pack "(stuff)*"
4674 =item bitfields in pack
4676 =item Cross compilation
4678 =item Perl preprocessor / macros
4680 =item Perl lexer in Perl
4682 =item Using POSIX calls internally
4684 =item -i rename file when changed
4686 =item All ARGV input should act like E<lt>E<gt>
4688 =item Support for rerunning debugger
4690 =item Test Suite for the Debugger
4692 =item my sub foo { }
4694 =item One-pass global destruction
4696 =item Rewrite regexp parser
4698 =item Cache recently used regexps
4700 =item Re-entrant functions
4702 =item Cross-compilation support
4704 =item Bit-shifting bitvectors
4706 =item debugger pragma
4708 =item use less pragma
4710 =item switch structures
4712 =item Cache eval tree
4716 =item Shrink opcode tables
4718 =item Optimize away @_
4720 =item Prototypes versus indirect objects
4724 =item Prototype method calls
4726 =item Return context prototype declarations
4730 =item Garbage collection
4734 =item pack/unpack tutorial
4736 =item Rewrite perldoc
4738 =item Install .3p manpages
4740 =item Unicode tutorial
4742 =item Update POSIX.pm for 1003.1-2
4744 =item Retargetable installation
4746 =item POSIX emulation on non-POSIX systems
4748 =item Rename Win32 headers
4750 =item Finish off lvalue functions
4752 =item Update sprintf documentation
4754 =item Use fchown/fchmod internally
4756 =item Make v-strings overloaded objects
4764 =item ref() in list context
4766 =item Make tr/// return histogram of characters in list context
4768 =item Compile to real threaded code
4770 =item Structured types
4772 =item Modifiable $1 et al.
4774 =item Procedural interfaces for IO::*, etc.
4778 =item Attach/detach debugger from running program
4780 =item Alternative RE syntax module
4784 =item foreach(reverse ...)
4786 =item Constant function cache
4788 =item Approximate regular expression matching
4796 =item Update guts documentation
4798 =item Add more tests
4800 =item Update auxiliary tools
4804 =item Recently done things
4808 =item Safe signal handling
4814 =item setitimer and getimiter
4816 =item Testing __DIE__ hook
4818 =item CPP equivalent in Perl
4820 =item Explicit switch statements
4828 =item perlcc to produce executable
4830 =item END blocks saved in compiled output
4832 =item Secure temporary file module
4834 =item Integrate Time::HiRes
4836 =item Turn Cwd into XS
4838 =item Mmap for input
4840 =item Byte to/from UTF8 and UTF8 to/from local conversion
4842 =item Add sockatmark support
4844 =item Mailing list archives
4848 =item Integrate MacPerl
4850 =item Web "nerve center" for Perl
4852 =item Regular expression tutorial
4854 =item Debugging Tutorial
4856 =item Integrate new modules
4858 =item Integrate profiler
4860 =item Y2K error detection
4862 =item Regular expression debugger
4866 =item "Dynamic" lexicals
4868 =item Cache precompiled modules
4872 =item Deprecated Wishes
4876 =item Loop control on do{}
4878 =item Lexically scoped typeglobs
4884 =item Generalised want()/caller())
4886 =item Named prototypes
4888 =item Built-in globbing
4890 =item Regression tests for suidperl
4892 =item Cached hash values
4894 =item Add compression modules
4896 =item Reorganise documentation into tutorials/references
4898 =item Remove distinction between functions and operators
4900 =item Make XS easier to use
4902 =item Make embedding easier to use
4906 =item my $Package::variable
4908 =item "or" tests defined, not truth
4910 =item "class"-based lexicals
4914 =item Lazy evaluation / tail recursion removal
4916 =item Make "use utf8" the default
4918 =item Unicode collation and normalization
4920 =item Create debugging macros
4922 =item truncate to the people
4928 =head2 perlhack - How to hack at the Perl internals
4934 Does concept match the general goals of Perl?, Where is the
4935 implementation?, Backwards compatibility, Could it be a module instead?, Is
4936 the feature generic enough?, Does it potentially introduce new bugs?, Does
4937 it preclude other desirable features?, Is the implementation robust?, Is
4938 the implementation generic enough to be portable?, Is the implementation
4939 tested?, Is there enough documentation?, Is there another way to do it?,
4940 Does it create too much work?, Patches speak louder than words
4944 =item Keeping in sync
4946 rsync'ing the source tree, Using rsync over the LAN, Using pushing over the
4947 NFS, rsync'ing the patches
4949 =item Why rsync the source tree
4951 It's easier to rsync the source tree, It's more recent, It's more reliable
4953 =item Why rsync the patches
4955 It's easier to rsync the patches, It's a good reference, Finding a start
4956 point, Finding how to fix a bug, Finding the source of misbehaviour
4958 =item Perlbug remote interface
4960 1 http://bugs.perl.org, 2 bugdb@perl.org, 3
4961 commands_and_bugdids@bugs.perl.org, notes, patches, tests
4963 =item Submitting patches
4965 L<perlguts>, L<perlxstut> and L<perlxs>, L<perlapi>,
4966 F<Porting/pumpkin.pod>, The perl5-porters FAQ
4968 =item Finding Your Way Around
4970 Core modules, Tests, Documentation, Configure, Interpreter
4972 =item Elements of the interpreter
4974 Startup, Parsing, Optimization, Running
4976 =item Internal Variable Types
4982 Argument stack, Mark stack, Save stack
4984 =item Millions of Macros
4986 =item Poking at Perl
4988 =item Using a source-level debugger
4990 run [args], break function_name, break source.c:xxx, step, next, continue,
4991 finish, 'enter', print
4993 =item Dumping Perl Data Structures
4997 =item Patching a core module
4999 =item Adding a new function to the core
5001 =item Writing a test
5003 F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/op/>,
5004 F<t/pod/>, F<t/run/>, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib
5008 =item EXTERNAL TOOLS FOR DEBUGGING PERL
5012 =item Rational Software's Purify
5014 =item Purify on Unix
5016 -Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity
5020 DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
5022 =item Compaq's/Digital's Third Degree
5024 =item PERL_DESTRUCT_LEVEL
5028 =item Gprof Profiling
5030 -a, -b, -e routine, -f routine, -s, -z
5032 =item GCC gcov Profiling
5034 =item Pixie Profiling
5036 -h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage,
5041 I<The Road goes ever on and on, down from the door where it began.>
5049 =head2 perlhist - the Perl history records
5057 =item THE KEEPERS OF THE PUMPKIN
5069 =item SELECTED RELEASE SIZES
5071 =item SELECTED PATCH SIZES
5075 =item THE KEEPERS OF THE RECORDS
5079 =head2 perldelta - what is new for perl v5.8.0
5085 =item Highlights In 5.8.0
5087 =item Incompatible Changes
5091 =item 64-bit platforms and malloc
5093 =item AIX Dynaloading
5095 =item Attributes for C<my> variables now handled at run-time.
5097 =item Socket Extension Dynamic in VMS
5099 =item IEEE-format Floating Point Default on OpenVMS Alpha
5101 =item Different Definition of the Unicode Character Classes \p{In...}
5103 =item Perl Parser Stress Tested
5105 =item REF(...) Instead Of SCALAR(...)
5111 =item Core Enhancements
5115 =item PerlIO is Now The Default
5119 =item Unicode Overhaul
5121 =item Understanding of Numbers
5123 =item Miscellaneous Enhancements
5127 =item Modules and Pragmata
5131 =item New Modules and Pragmata
5133 =item Updated And Improved Modules and Pragmata
5137 =item Utility Changes
5139 =item New Documentation
5141 =item Performance Enhancements
5143 =item Installation and Configuration Improvements
5147 =item Generic Improvements
5149 =item New Or Improved Platforms
5153 =item Selected Bug Fixes
5157 =item Platform Specific Changes and Fixes
5161 =item New or Changed Diagnostics
5163 =item Changed Internals
5165 =item Security Vulnerability Closed
5169 =item Known Problems
5175 =item Amiga Perl Invoking Mystery
5177 =item lib/ftmp-security tests warn 'system possibly insecure'
5179 =item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12
5181 =item HP-UX lib/io_multihomed Fails When LP64-Configured
5183 =item HP-UX lib/posix Subtest 9 Fails When LP64-Configured
5185 =item Linux With Sfio Fails op/misc Test 48
5191 =item op/sprintf tests 129 and 130
5193 =item Failure of Thread tests
5203 =item Localising a Tied Variable Leaks Memory
5205 =item Localising Tied Arrays and Hashes Is Broken
5207 =item Self-tying of Arrays and Hashes Is Forbidden
5209 =item Building Extensions Can Fail Because Of Largefiles
5211 =item Unicode Support on EBCDIC Still Spotty
5213 =item The Compiler Suite Is Still Experimental
5215 =item The Long Double Support Is Still Experimental
5217 =item Seen In Perl 5.7 But Gone Now
5221 =item Reporting Bugs
5229 =head2 perl572delta - what's new for perl v5.7.2
5235 =item Security Vulnerability Closed
5237 =item Incompatible Changes
5241 =item 64-bit platforms and malloc
5243 =item AIX Dynaloading
5245 =item Socket Extension Dynamic in VMS
5247 =item Different Definition of the Unicode Character Classes \p{In...}
5253 =item Core Enhancements
5255 =item Modules and Pragmata
5259 =item New Modules and Distributions
5261 =item Updated And Improved Modules and Pragmata
5265 =item Utility Changes
5267 =item New Documentation
5269 =item Installation and Configuration Improvements
5273 =item New Or Improved Platforms
5275 =item Generic Improvements
5279 =item Selected Bug Fixes
5283 =item Platform Specific Changes and Fixes
5287 =item New or Changed Diagnostics
5289 =item Source Code Enhancements
5293 =item MAGIC constants
5295 =item Better commented code
5297 =item Regex pre-/post-compilation items matched up
5305 =item Known Problems
5311 =item Amiga Perl Invoking Mystery
5313 =item lib/ftmp-security tests warn 'system possibly insecure'
5315 =item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12
5317 =item HP-UX lib/io_multihomed Fails When LP64-Configured
5319 =item HP-UX lib/posix Subtest 9 Fails When LP64-Configured
5321 =item Linux With Sfio Fails op/misc Test 48
5325 =item op/sprintf tests 129 and 130
5327 =item Failure of Thread tests
5337 =item Localising a Tied Variable Leaks Memory
5339 =item Self-tying of Arrays and Hashes Is Forbidden
5341 =item Variable Attributes are not Currently Usable for Tieing
5343 =item Building Extensions Can Fail Because Of Largefiles
5345 =item The Compiler Suite Is Still Experimental
5347 =item The Long Double Support is Still Experimental
5351 =item Reporting Bugs
5359 =head2 perl571delta - what's new for perl v5.7.1
5365 =item Security Vulnerability Closed
5367 =item Incompatible Changes
5369 =item Core Enhancements
5373 =item AUTOLOAD Is Now Lvaluable
5375 =item PerlIO is Now The Default
5377 =item Signals Are Now Safe
5381 =item Modules and Pragmata
5387 =item Updated And Improved Modules and Pragmata
5391 =item Performance Enhancements
5393 =item Utility Changes
5395 =item New Documentation
5411 =item README.solaris
5415 =item Porting/repository.pod
5419 =item Installation and Configuration Improvements
5423 =item New Or Improved Platforms
5425 =item Generic Improvements
5427 d_cmsghdr, d_fcntl_can_lock, d_fsync, d_getitimer, d_getpagsz, d_msghdr_s,
5428 need_va_copy, d_readv, d_recvmsg, d_sendmsg, sig_size, d_sockatmark,
5429 d_strtoq, d_u32align, d_ualarm, d_usleep
5433 =item Selected Bug Fixes
5437 =item Platform Specific Changes and Fixes
5441 =item New or Changed Diagnostics
5443 =item Changed Internals
5447 =item Known Problems
5451 =item AIX vac 5.0.0.0 May Produce Buggy Code For Perl
5453 =item lib/ftmp-security tests warn 'system possibly insecure'
5455 =item lib/io_multihomed Fails In LP64-Configured HP-UX
5457 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX
5461 =item Linux With Sfio Fails op/misc Test 48
5463 =item sigaction test 13 in VMS
5465 =item sprintf tests 129 and 130
5467 =item Failure of Thread tests
5469 =item Localising a Tied Variable Leaks Memory
5471 =item Self-tying of Arrays and Hashes Is Forbidden
5473 =item Building Extensions Can Fail Because Of Largefiles
5475 =item The Compiler Suite Is Still Experimental
5479 =item Reporting Bugs
5487 =head2 perl570delta - what's new for perl v5.7.0
5493 =item Security Vulnerability Closed
5495 =item Incompatible Changes
5497 =item Core Enhancements
5499 =item Modules and Pragmata
5505 =item Updated And Improved Modules and Pragmata
5509 =item Utility Changes
5511 =item New Documentation
5513 =item Performance Enhancements
5515 =item Installation and Configuration Improvements
5519 =item Generic Improvements
5523 =item Selected Bug Fixes
5527 =item Platform Specific Changes and Fixes
5531 =item New or Changed Diagnostics
5533 =item Changed Internals
5535 =item Known Problems
5539 =item Unicode Support Still Far From Perfect
5541 =item EBCDIC Still A Lost Platform
5543 =item Building Extensions Can Fail Because Of Largefiles
5545 =item ftmp-security tests warn 'system possibly insecure'
5547 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX
5549 =item Long Doubles Still Don't Work In Solaris
5551 =item Linux With Sfio Fails op/misc Test 48
5553 =item Storable tests fail in some platforms
5555 =item Threads Are Still Experimental
5557 =item The Compiler Suite Is Still Experimental
5561 =item Reporting Bugs
5569 =head2 perl561delta, perldelta - what's new for perl v5.6.x
5575 =item Summary of changes between 5.6.0 and 5.6.1
5579 =item Security Issues
5581 =item Core bug fixes
5583 C<UNIVERSAL::isa()>, Memory leaks, Numeric conversions, qw(a\\b), caller(),
5584 Bugs in regular expressions, "slurp" mode, Autovivification of symbolic
5585 references to special variables, Lexical warnings, Spurious warnings and
5586 errors, glob(), Tainting, sort(), #line directives, Subroutine prototypes,
5587 map(), Debugger, PERL5OPT, chop(), Unicode support, 64-bit support,
5588 Compiler, Lvalue subroutines, IO::Socket, File::Find, xsubpp, C<no
5593 =item Configuration issues
5597 =item Bundled modules
5599 B::Concise, File::Temp, Pod::LaTeX, Pod::Text::Overstrike, CGI, CPAN,
5600 Class::Struct, DB_File, Devel::Peek, File::Find, Getopt::Long, IO::Poll,
5601 IPC::Open3, Math::BigFloat, Math::Complex, Net::Ping, Opcode, Pod::Parser,
5602 Pod::Text, SDBM_File, Sys::Syslog, Tie::RefHash, Tie::SubstrHash
5604 =item Platform-specific improvements
5606 NCR MP-RAS, NonStop-UX
5610 =item Core Enhancements
5614 =item Interpreter cloning, threads, and concurrency
5616 =item Lexically scoped warning categories
5618 =item Unicode and UTF-8 support
5620 =item Support for interpolating named characters
5622 =item "our" declarations
5624 =item Support for strings represented as a vector of ordinals
5626 =item Improved Perl version numbering system
5628 =item New syntax for declaring subroutine attributes
5630 =item File and directory handles can be autovivified
5632 =item open() with more than two arguments
5634 =item 64-bit support
5636 =item Large file support
5642 =item Enhanced support for sort() subroutines
5644 =item C<sort $coderef @foo> allowed
5646 =item File globbing implemented internally
5648 =item Support for CHECK blocks
5650 =item POSIX character class syntax [: :] supported
5652 =item Better pseudo-random number generator
5654 =item Improved C<qw//> operator
5656 =item Better worst-case behavior of hashes
5658 =item pack() format 'Z' supported
5660 =item pack() format modifier '!' supported
5662 =item pack() and unpack() support counted strings
5664 =item Comments in pack() templates
5666 =item Weak references
5668 =item Binary numbers supported
5670 =item Lvalue subroutines
5672 =item Some arrows may be omitted in calls through references
5674 =item Boolean assignment operators are legal lvalues
5676 =item exists() is supported on subroutine names
5678 =item exists() and delete() are supported on array elements
5680 =item Pseudo-hashes work better
5682 =item Automatic flushing of output buffers
5684 =item Better diagnostics on meaningless filehandle operations
5686 =item Where possible, buffered data discarded from duped input filehandle
5688 =item eof() has the same old magic as <>
5690 =item binmode() can be used to set :crlf and :raw modes
5692 =item C<-T> filetest recognizes UTF-8 encoded files as "text"
5694 =item system(), backticks and pipe open now reflect exec() failure
5696 =item Improved diagnostics
5698 =item Diagnostics follow STDERR
5700 =item More consistent close-on-exec behavior
5702 =item syswrite() ease-of-use
5704 =item Better syntax checks on parenthesized unary operators
5706 =item Bit operators support full native integer width
5708 =item Improved security features
5710 =item More functional bareword prototype (*)
5712 =item C<require> and C<do> may be overridden
5714 =item $^X variables may now have names longer than one character
5716 =item New variable $^C reflects C<-c> switch
5718 =item New variable $^V contains Perl version as a string
5720 =item Optional Y2K warnings
5722 =item Arrays now always interpolate into double-quoted strings
5726 =item Modules and Pragmata
5732 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper,
5733 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English,
5734 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec,
5735 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt,
5736 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker,
5737 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage,
5738 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname,
5739 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
5745 =item Utility Changes
5759 =item The Perl Debugger
5763 =item Improved Documentation
5765 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod,
5766 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod,
5767 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod,
5768 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
5770 =item Performance enhancements
5774 =item Simple sort() using { $a <=> $b } and the like are optimized
5776 =item Optimized assignments to lexical variables
5778 =item Faster subroutine calls
5780 =item delete(), each(), values() and hash iteration are faster
5784 =item Installation and Configuration Improvements
5788 =item -Dusethreads means something different
5790 =item New Configure flags
5792 =item Threadedness and 64-bitness now more daring
5798 =item -Duselargefiles
5800 =item installusrbinperl
5806 =item Enhanced Installation Directories
5808 =item gcc automatically tried if 'cc' does not seem to be working
5812 =item Platform specific changes
5816 =item Supported platforms
5820 =item OS390 (OpenEdition MVS)
5828 =item Significant bug fixes
5832 =item <HANDLE> on empty files
5834 =item C<eval '...'> improvements
5836 =item All compilation errors are true errors
5838 =item Implicitly closed filehandles are safer
5840 =item Behavior of list slices is more consistent
5842 =item C<(\$)> prototype and C<$foo{a}>
5844 =item C<goto &sub> and AUTOLOAD
5846 =item C<-bareword> allowed under C<use integer>
5848 =item Failures in DESTROY()
5850 =item Locale bugs fixed
5854 =item Spurious subroutine stubs after failed subroutine calls
5856 =item Taint failures under C<-U>
5858 =item END blocks and the C<-c> switch
5860 =item Potential to leak DATA filehandles
5864 =item New or Changed Diagnostics
5866 "%s" variable %s masks earlier declaration in same %s, "my sub" not yet
5867 implemented, "our" variable %s redeclared, '!' allowed only after types %s,
5868 / cannot take a count, / must be followed by a, A or Z, / must be followed
5869 by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape
5870 \\%c passed through, /%s/: Unrecognized escape \\%c in character class
5871 passed through, /%s/ should probably be written as "%s", %s() called too
5872 early to check prototype, %s argument is not a HASH or&nb