This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
capitalize correctly, noticed by David Dyck.
[perl5.git] / pod / perltoc.pod
1
2 =head1 NAME
3
4 perltoc - perl documentation table of contents
5
6 =head1 DESCRIPTION
7
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.
11
12 =head1 BASIC DOCUMENTATION
13
14 =head2 perl - Practical Extraction and Report Language
15
16 =over 4
17
18 =item SYNOPSIS
19
20 =over 4
21
22 =item Overview
23
24 =item Tutorials
25
26 =item Reference Manual
27
28 =item Internals and C Language Interface
29
30 =item Miscellaneous
31
32 =item Platform-Specific
33
34 =back
35
36 =item DESCRIPTION
37
38 =item AVAILABILITY
39
40 =item ENVIRONMENT
41
42 =item AUTHOR
43
44 =item FILES
45
46 =item SEE ALSO
47
48 =item DIAGNOSTICS
49
50 =item BUGS
51
52 =item NOTES
53
54 =back
55
56 =head2 perlintro -- a brief introduction and overview of Perl
57
58 =over 4
59
60 =item DESCRIPTION
61
62 =over 4
63
64 =item What is Perl?
65
66 =item Running Perl programs
67
68 =item Basic syntax overview
69
70 =item Perl variable types
71
72 Scalars, Arrays, Hashes
73
74 =item Variable scoping
75
76 =item Conditional and looping constructs
77
78 if, while, for, foreach
79
80 =item Builtin operators and functions
81
82 Arithmetic, Numeric comparison, String comparison, Boolean logic,
83 Miscellaneous
84
85 =item Files and I/O
86
87 =item Regular expressions
88
89 Simple matching, Simple substitution, More complex regular expressions,
90 Parentheses for capturing, Other regexp features
91
92 =item Writing subroutines
93
94 =item OO Perl
95
96 =item Using Perl modules
97
98 =back
99
100 =item AUTHOR
101
102 =back
103
104 =head2 perlfaq - frequently asked questions about Perl ($Date: 2001/11/19
105 17:09:37 $)
106
107 =over 4
108
109 =item DESCRIPTION
110
111 =over 4
112
113 =item perlfaq: Structural overview of the FAQ.
114
115 =item L<perlfaq1>: General Questions About Perl
116
117 =item L<perlfaq2>: Obtaining and Learning about Perl
118
119 =item L<perlfaq3>: Programming Tools
120
121 =item L<perlfaq4>: Data Manipulation
122
123 =item L<perlfaq5>: Files and Formats
124
125 =item L<perlfaq6>: Regexps
126
127 =item L<perlfaq7>: General Perl Language Issues
128
129 =item L<perlfaq8>: System Interaction
130
131 =item L<perlfaq9>: Networking
132
133 =back
134
135 =item About the perlfaq documents
136
137 =over 4
138
139 =item Where to get the perlfaq
140
141 =item How to contribute to the perlfaq
142
143 =item What will happen if you mail your Perl programming problems to the
144 authors
145
146 =back
147
148 =item Credits
149
150 =item Author and Copyright Information
151
152 =over 4
153
154 =item Bundled Distributions
155
156 =item Disclaimer
157
158 =back
159
160 =item Changes
161
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
165
166 =back
167
168 =head2 perlbook - Perl book information
169
170 =over 4
171
172 =item DESCRIPTION
173
174 =back
175
176 =head2 perlsyn - Perl syntax
177
178 =over 4
179
180 =item DESCRIPTION
181
182 =over 4
183
184 =item Declarations
185
186 =item Simple statements
187
188 =item Compound statements
189
190 =item Loop Control
191
192 =item For Loops
193
194 =item Foreach Loops
195
196 =item Basic BLOCKs and Switch Statements
197
198 =item Goto
199
200 =item PODs: Embedded Documentation
201
202 =item Plain Old Comments (Not!)
203
204 =back
205
206 =back
207
208 =head2 perldata - Perl data types
209
210 =over 4
211
212 =item DESCRIPTION
213
214 =over 4
215
216 =item Variable names
217
218 =item Context
219
220 =item Scalar values
221
222 =item Scalar value constructors
223
224 =item List value constructors
225
226 =item Slices
227
228 =item Typeglobs and Filehandles
229
230 =back
231
232 =item SEE ALSO
233
234 =back
235
236 =head2 perlop - Perl operators and precedence
237
238 =over 4
239
240 =item SYNOPSIS
241
242 =item DESCRIPTION
243
244 =over 4
245
246 =item Terms and List Operators (Leftward)
247
248 =item The Arrow Operator
249
250 =item Auto-increment and Auto-decrement
251
252 =item Exponentiation
253
254 =item Symbolic Unary Operators
255
256 =item Binding Operators
257
258 =item Multiplicative Operators
259
260 =item Additive Operators
261
262 =item Shift Operators
263
264 =item Named Unary Operators
265
266 =item Relational Operators
267
268 =item Equality Operators
269
270 =item Bitwise And
271
272 =item Bitwise Or and Exclusive Or
273
274 =item C-style Logical And
275
276 =item C-style Logical Or
277
278 =item Range Operators
279
280 =item Conditional Operator
281
282 =item Assignment Operators
283
284 =item Comma Operator
285
286 =item List Operators (Rightward)
287
288 =item Logical Not
289
290 =item Logical And
291
292 =item Logical or and Exclusive Or
293
294 =item C Operators Missing From Perl
295
296 unary &, unary *, (TYPE)
297
298 =item Quote and Quote-like Operators
299
300 =item Regexp Quote-Like Operators
301
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
306
307 =item Gory details of parsing quoted constructs
308
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
313 regular expressions
314
315 =item I/O Operators
316
317 =item Constant Folding
318
319 =item Bitwise String Operators
320
321 =item Integer Arithmetic
322
323 =item Floating-point Arithmetic
324
325 =item Bigger Numbers
326
327 =back
328
329 =back
330
331 =head2 perlsub - Perl subroutines
332
333 =over 4
334
335 =item SYNOPSIS
336
337 =item DESCRIPTION
338
339 =over 4
340
341 =item Private Variables via my()
342
343 =item Persistent Private Variables
344
345 =item Temporary Values via local()
346
347 =item Lvalue subroutines
348
349 =item Passing Symbol Table Entries (typeglobs)
350
351 =item When to Still Use local()
352
353 =item Pass by Reference
354
355 =item Prototypes
356
357 =item Constant Functions
358
359 =item Overriding Built-in Functions
360
361 =item Autoloading
362
363 =item Subroutine Attributes
364
365 =back
366
367 =item SEE ALSO
368
369 =back
370
371 =head2 perlfunc - Perl builtin functions
372
373 =over 4
374
375 =item DESCRIPTION
376
377 =over 4
378
379 =item Perl Functions by Category
380
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
391 in perl5
392
393 =item Portability
394
395 =item Alphabetical Listing of Perl Functions
396
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///
470
471 =back
472
473 =back
474
475 =head2 perlreftut - Mark's very short tutorial about references
476
477 =over 4
478
479 =item DESCRIPTION
480
481 =item Who Needs Complicated Data Structures?
482
483 =item The Solution
484
485 =item Syntax
486
487 =over 4
488
489 =item Making References
490
491 =item Using References
492
493 =back
494
495 =item An Example
496
497 =item Arrow Rule
498
499 =item Solution
500
501 =item The Rest
502
503 =item Summary
504
505 =item Credits
506
507 =over 4
508
509 =item Distribution Conditions
510
511 =back
512
513 =back
514
515 =head2 perldsc - Perl Data Structures Cookbook
516
517 =over 4
518
519 =item DESCRIPTION
520
521 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
522 more elaborate constructs
523
524 =item REFERENCES
525
526 =item COMMON MISTAKES
527
528 =item CAVEAT ON PRECEDENCE
529
530 =item WHY YOU SHOULD ALWAYS C<use strict>
531
532 =item DEBUGGING
533
534 =item CODE EXAMPLES
535
536 =item ARRAYS OF ARRAYS
537
538 =over 4
539
540 =item Declaration of an ARRAY OF ARRAYS
541
542 =item Generation of an ARRAY OF ARRAYS
543
544 =item Access and Printing of an ARRAY OF ARRAYS
545
546 =back
547
548 =item HASHES OF ARRAYS
549
550 =over 4
551
552 =item Declaration of a HASH OF ARRAYS
553
554 =item Generation of a HASH OF ARRAYS
555
556 =item Access and Printing of a HASH OF ARRAYS
557
558 =back
559
560 =item ARRAYS OF HASHES
561
562 =over 4
563
564 =item Declaration of an ARRAY OF HASHES
565
566 =item Generation of an ARRAY OF HASHES
567
568 =item Access and Printing of an ARRAY OF HASHES
569
570 =back
571
572 =item HASHES OF HASHES
573
574 =over 4
575
576 =item Declaration of a HASH OF HASHES
577
578 =item Generation of a HASH OF HASHES
579
580 =item Access and Printing of a HASH OF HASHES
581
582 =back
583
584 =item MORE ELABORATE RECORDS
585
586 =over 4
587
588 =item Declaration of MORE ELABORATE RECORDS
589
590 =item Declaration of a HASH OF COMPLEX RECORDS
591
592 =item Generation of a HASH OF COMPLEX RECORDS
593
594 =back
595
596 =item Database Ties
597
598 =item SEE ALSO
599
600 =item AUTHOR
601
602 =back
603
604 =head2 perlrequick - Perl regular expressions quick start
605
606 =over 4
607
608 =item DESCRIPTION
609
610 =item The Guide
611
612 =over 4
613
614 =item Simple word matching
615
616 =item Using character classes
617
618 =item Matching this or that
619
620 =item Grouping things and hierarchical matching
621
622 =item Extracting matches
623
624 =item Matching repetitions
625
626 =item More matching
627
628 =item Search and replace
629
630 =item The split operator
631
632 =back
633
634 =item BUGS
635
636 =item SEE ALSO
637
638 =item AUTHOR AND COPYRIGHT
639
640 =over 4
641
642 =item Acknowledgments
643
644 =back
645
646 =back
647
648 =head2 perlpod - the Plain Old Documentation format
649
650 =over 4
651
652 =item DESCRIPTION
653
654 =over 4
655
656 =item Ordinary Paragraph
657
658 =item Verbatim Paragraph
659
660 =item Command Paragraph
661
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...>>
666
667 =item Formatting Codes
668
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
675
676 =item The Intent
677
678 =item Embedding Pods in Perl Modules
679
680 =item Hints for Writing Pod
681
682 =back
683
684 =item SEE ALSO
685
686 =item AUTHOR
687
688 =back
689
690 =head2 perlpodspec - Plain Old Documentation: format specification and
691 notes
692
693 =over 4
694
695 =item DESCRIPTION
696
697 =item Pod Definitions
698
699 =item Pod Commands
700
701 "=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item",
702 "=back", "=begin formatname", "=end formatname", "=for formatname text..."
703
704 =item Pod Formatting Codes
705
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
712
713 =item Notes on Implementing Pod Processors
714
715 =item About LE<lt>...E<gt> Codes
716
717 First:, Second:, Third:, Fourth:, Fifth:, Sixth:
718
719 =item About =over...=back Regions
720
721 =item About Data Paragraphs and "=begin/=end" Regions
722
723 =item SEE ALSO
724
725 =item AUTHOR
726
727 =back
728
729 =head2 perlstyle - Perl style guide
730
731 =over 4
732
733 =item DESCRIPTION
734
735 =back
736
737 =head2 perltrap - Perl traps for the unwary
738
739 =over 4
740
741 =item DESCRIPTION
742
743 =over 4
744
745 =item Awk Traps
746
747 =item C Traps
748
749 =item Sed Traps
750
751 =item Shell Traps
752
753 =item Perl Traps
754
755 =item Perl4 to Perl5 Traps
756
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
761
762 =item Discontinuance, Deprecation, and BugFix traps
763
764 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
765 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
766 Discontinuance, Deprecation, Discontinuance, Discontinuance
767
768 =item Parsing Traps
769
770 Parsing, Parsing, Parsing, Parsing, Parsing
771
772 =item Numerical Traps
773
774 Numerical, Numerical, Numerical, Bitwise string ops
775
776 =item General data type traps
777
778 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
779 (Constants), (Scalars), (Variable Suicide)
780
781 =item Context Traps - scalar, list contexts
782
783 (list context), (scalar context), (scalar context), (list, builtin)
784
785 =item Precedence Traps
786
787 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
788 Precedence
789
790 =item General Regular Expression Traps using s///, etc.
791
792 Regular Expression, Regular Expression, Regular Expression, Regular
793 Expression, Regular Expression, Regular Expression, Regular Expression,
794 Regular Expression
795
796 =item Subroutine, Signal, Sorting Traps
797
798 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
799
800 =item OS Traps
801
802 (SysV), (SysV)
803
804 =item Interpolation Traps
805
806 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
807 Interpolation, Interpolation, Interpolation, Interpolation
808
809 =item DBM Traps
810
811 DBM, DBM
812
813 =item Unclassified Traps
814
815 C<require>/C<do> trap using returned value, C<split> on empty string with
816 LIMIT specified
817
818 =back
819
820 =back
821
822 =head2 perlrun - how to execute the Perl interpreter
823
824 =over 4
825
826 =item SYNOPSIS
827
828 =item DESCRIPTION
829
830 =over 4
831
832 =item #! and quoting on non-Unix systems
833
834 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
835
836 =item Location of Perl
837
838 =item Command Switches
839
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>
847
848 =back
849
850 =item ENVIRONMENT
851
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
855 the VMS port)
856
857 =back
858
859 =head2 perldiag - various Perl diagnostics
860
861 =over 4
862
863 =item DESCRIPTION
864
865 =back
866
867 =head2 perllexwarn - Perl Lexical Warnings
868
869 =over 4
870
871 =item DESCRIPTION
872
873 =over 4
874
875 =item Default Warnings and Optional Warnings
876
877 =item What's wrong with B<-w> and C<$^W>
878
879 =item Controlling Warnings from the Command Line
880
881 B<-w>, B<-W>, B<-X>
882
883 =item Backward Compatibility
884
885 =item Category Hierarchy
886
887 =item Fatal Warnings
888
889 =item Reporting Warnings from a Module
890
891 =back
892
893 =item TODO
894
895 =item SEE ALSO
896
897 =item AUTHOR
898
899 =back
900
901 =head2 perldebtut - Perl debugging tutorial
902
903 =over 4
904
905 =item DESCRIPTION
906
907 =item use strict
908
909 =item Looking at data and -w and w
910
911 =item help
912
913 =item Stepping through code
914
915 =item Placeholder for a, w, t, T
916
917 =item REGULAR EXPRESSIONS
918
919 =item OUTPUT TIPS
920
921 =item CGI
922
923 =item GUIs
924
925 =item SUMMARY
926
927 =item SEE ALSO
928
929 =item AUTHOR
930
931 =item CONTRIBUTORS
932
933 =back
934
935 =head2 perldebug - Perl debugging
936
937 =over 4
938
939 =item DESCRIPTION
940
941 =item The Perl Debugger
942
943 =over 4
944
945 =item Debugger Commands
946
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
956 [manpage]
957
958 =item Configurable Options
959
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>
966
967 =item Debugger input/output
968
969 Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
970 listing
971
972 =item Debugging compile-time statements
973
974 =item Debugger Customization
975
976 =item Readline Support
977
978 =item Editor Support for Debugging
979
980 =item The Perl Profiler
981
982 =back
983
984 =item Debugging regular expressions
985
986 =item Debugging memory usage
987
988 =item SEE ALSO
989
990 =item BUGS
991
992 =back
993
994 =head2 perlvar - Perl predefined variables
995
996 =over 4
997
998 =item DESCRIPTION
999
1000 =over 4
1001
1002 =item Predefined Names
1003
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}
1034
1035 =item Error Indicators
1036
1037 =item Technical Note on the Syntax of Variable Names
1038
1039 =back
1040
1041 =item BUGS
1042
1043 =back
1044
1045 =head2 perllol - Manipulating Arrays of Arrays in Perl
1046
1047 =over 4
1048
1049 =item DESCRIPTION
1050
1051 =over 4
1052
1053 =item Declaration and Access of Arrays of Arrays
1054
1055 =item Growing Your Own
1056
1057 =item Access and Printing
1058
1059 =item Slices
1060
1061 =back
1062
1063 =item SEE ALSO
1064
1065 =item AUTHOR
1066
1067 =back
1068
1069 =head2 perlopentut - tutorial on opening things in Perl
1070
1071 =over 4
1072
1073 =item DESCRIPTION
1074
1075 =item Open E<agrave> la shell
1076
1077 =over 4
1078
1079 =item Simple Opens
1080
1081 =item Pipe Opens
1082
1083 =item The Minus File
1084
1085 =item Mixing Reads and Writes
1086
1087 =item Filters 
1088
1089 =back
1090
1091 =item Open E<agrave> la C
1092
1093 =over 4
1094
1095 =item Permissions E<agrave> la mode
1096
1097 =back
1098
1099 =item Obscure Open Tricks
1100
1101 =over 4
1102
1103 =item Re-Opening Files (dups)
1104
1105 =item Dispelling the Dweomer
1106
1107 =item Paths as Opens
1108
1109 =item Single Argument Open
1110
1111 =item Playing with STDIN and STDOUT
1112
1113 =back
1114
1115 =item Other I/O Issues
1116
1117 =over 4
1118
1119 =item Opening Non-File Files
1120
1121 =item Binary Files
1122
1123 =item File Locking
1124
1125 =back
1126
1127 =item SEE ALSO 
1128
1129 =item AUTHOR and COPYRIGHT
1130
1131 =item HISTORY
1132
1133 =back
1134
1135 =head2 perlpacktut - tutorial on C<pack> and C<unpack>
1136
1137 =over 4
1138
1139 =item DESCRIPTION
1140
1141 =item The Basic Principle
1142
1143 =item Packing Text
1144
1145 =item Packing Numbers
1146
1147 =over 4
1148
1149 =item Integers
1150
1151 =item Unpacking a Stack Frame
1152
1153 =item How to Eat an Egg on a Net
1154
1155 =item Floating point Numbers
1156
1157 =back
1158
1159 =item Exotic Templates
1160
1161 =over 4
1162
1163 =item Bit Strings
1164
1165 =item Uuencoding
1166
1167 =item Doing Sums
1168
1169 =item  Unicode
1170
1171 =item Another Portable Binary Encoding
1172
1173 =back
1174
1175 =item Lengths and Widths
1176
1177 =over 4
1178
1179 =item String Lengths
1180
1181 =item Dynamic Templates
1182
1183 =back
1184
1185 =item Packing and Unpacking C Structures
1186
1187 =over 4
1188
1189 =item The Alignment Pit
1190
1191 =item Alignment, Take 2
1192
1193 =item Alignment, Take 3
1194
1195 =item Pointers for How to Use Them
1196
1197 =back
1198
1199 =item Pack Recipes
1200
1201 =item Funnies Section
1202
1203 =item Authors
1204
1205 =back
1206
1207 =head2 perlretut - Perl regular expressions tutorial
1208
1209 =over 4
1210
1211 =item DESCRIPTION
1212
1213 =item Part 1: The basics
1214
1215 =over 4
1216
1217 =item Simple word matching
1218
1219 =item Using character classes
1220
1221 =item Matching this or that
1222
1223 =item Grouping things and hierarchical matching
1224
1225 =item Extracting matches
1226
1227 =item Matching repetitions
1228
1229 =item Building a regexp
1230
1231 =item Using regular expressions in Perl
1232
1233 =back
1234
1235 =item Part 2: Power tools
1236
1237 =over 4
1238
1239 =item More on characters, strings, and character classes
1240
1241 =item Compiling and saving regular expressions
1242
1243 =item Embedding comments and modifiers in a regular expression
1244
1245 =item Non-capturing groupings
1246
1247 =item Looking ahead and looking behind
1248
1249 =item Using independent subexpressions to prevent backtracking
1250
1251 =item Conditional expressions
1252
1253 =item A bit of magic: executing Perl code in a regular expression
1254
1255 =item Pragmas and debugging
1256
1257 =back
1258
1259 =item BUGS
1260
1261 =item SEE ALSO
1262
1263 =item AUTHOR AND COPYRIGHT
1264
1265 =over 4
1266
1267 =item Acknowledgments
1268
1269 =back
1270
1271 =back
1272
1273 =head2 perlre - Perl regular expressions
1274
1275 =over 4
1276
1277 =item DESCRIPTION
1278
1279 i, m, s, x
1280
1281 =over 4
1282
1283 =item Regular Expressions
1284
1285 [1], [2], [3], cntrl, graph, print, punct, xdigit
1286
1287 =item Extended Patterns
1288
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)>
1293
1294 =item Backtracking
1295
1296 =item Version 8 Regular Expressions
1297
1298 =item Warning on \1 vs $1
1299
1300 =item Repeated patterns matching zero-length substring
1301
1302 =item Combining pieces together
1303
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)>
1308
1309 =item Creating custom RE engines
1310
1311 =back
1312
1313 =item BUGS
1314
1315 =item SEE ALSO
1316
1317 =back
1318
1319 =head2 perlref - Perl references and nested data structures
1320
1321 =over 4
1322
1323 =item NOTE
1324
1325 =item DESCRIPTION
1326
1327 =over 4
1328
1329 =item Making References
1330
1331 =item Using References
1332
1333 =item Symbolic references
1334
1335 =item Not-so-symbolic references
1336
1337 =item Pseudo-hashes: Using an array as a hash
1338
1339 =item Function Templates
1340
1341 =back
1342
1343 =item WARNING
1344
1345 =item SEE ALSO
1346
1347 =back
1348
1349 =head2 perlform - Perl formats
1350
1351 =over 4
1352
1353 =item DESCRIPTION
1354
1355 =over 4
1356
1357 =item Format Variables
1358
1359 =back
1360
1361 =item NOTES
1362
1363 =over 4
1364
1365 =item Footers
1366
1367 =item Accessing Formatting Internals
1368
1369 =back
1370
1371 =item WARNINGS
1372
1373 =back
1374
1375 =head2 perlboot - Beginner's Object-Oriented Tutorial
1376
1377 =over 4
1378
1379 =item DESCRIPTION
1380
1381 =over 4
1382
1383 =item If we could talk to the animals...
1384
1385 =item Introducing the method invocation arrow
1386
1387 =item Invoking a barnyard
1388
1389 =item The extra parameter of method invocation
1390
1391 =item Calling a second method to simplify things
1392
1393 =item Inheriting the windpipes
1394
1395 =item A few notes about @ISA
1396
1397 =item Overriding the methods
1398
1399 =item Starting the search from a different place
1400
1401 =item The SUPER way of doing things
1402
1403 =item Where we're at so far...
1404
1405 =item A horse is a horse, of course of course -- or is it?
1406
1407 =item Invoking an instance method
1408
1409 =item Accessing the instance data
1410
1411 =item How to build a horse
1412
1413 =item Inheriting the constructor
1414
1415 =item Making a method work with either classes or instances
1416
1417 =item Adding parameters to a method
1418
1419 =item More interesting instances
1420
1421 =item A horse of a different color
1422
1423 =item Summary
1424
1425 =back
1426
1427 =item SEE ALSO
1428
1429 =item COPYRIGHT
1430
1431 =back
1432
1433 =head2 perltoot - Tom's object-oriented tutorial for perl
1434
1435 =over 4
1436
1437 =item DESCRIPTION
1438
1439 =item Creating a Class
1440
1441 =over 4
1442
1443 =item Object Representation
1444
1445 =item Class Interface
1446
1447 =item Constructors and Instance Methods
1448
1449 =item Planning for the Future: Better Constructors
1450
1451 =item Destructors
1452
1453 =item Other Object Methods
1454
1455 =back
1456
1457 =item Class Data
1458
1459 =over 4
1460
1461 =item Accessing Class Data
1462
1463 =item Debugging Methods
1464
1465 =item Class Destructors
1466
1467 =item Documenting the Interface
1468
1469 =back
1470
1471 =item Aggregation
1472
1473 =item Inheritance
1474
1475 =over 4
1476
1477 =item Overridden Methods
1478
1479 =item Multiple Inheritance
1480
1481 =item UNIVERSAL: The Root of All Objects
1482
1483 =back
1484
1485 =item Alternate Object Representations
1486
1487 =over 4
1488
1489 =item Arrays as Objects
1490
1491 =item Closures as Objects
1492
1493 =back
1494
1495 =item AUTOLOAD: Proxy Methods
1496
1497 =over 4
1498
1499 =item Autoloaded Data Methods
1500
1501 =item Inherited Autoloaded Data Methods
1502
1503 =back
1504
1505 =item Metaclassical Tools
1506
1507 =over 4
1508
1509 =item Class::Struct
1510
1511 =item Data Members as Variables
1512
1513 =back
1514
1515 =item NOTES
1516
1517 =over 4
1518
1519 =item Object Terminology
1520
1521 =back
1522
1523 =item SEE ALSO
1524
1525 =item AUTHOR AND COPYRIGHT
1526
1527 =item COPYRIGHT
1528
1529 =over 4
1530
1531 =item Acknowledgments
1532
1533 =back
1534
1535 =back
1536
1537 =head2 perltooc - Tom's OO Tutorial for Class Data in Perl
1538
1539 =over 4
1540
1541 =item DESCRIPTION
1542
1543 =item Class Data in a Can
1544
1545 =item Class Data as Package Variables
1546
1547 =over 4
1548
1549 =item Putting All Your Eggs in One Basket
1550
1551 =item Inheritance Concerns
1552
1553 =item The Eponymous Meta-Object
1554
1555 =item Indirect References to Class Data
1556
1557 =item Monadic Classes
1558
1559 =item Translucent Attributes
1560
1561 =back
1562
1563 =item Class Data as Lexical Variables
1564
1565 =over 4
1566
1567 =item Privacy and Responsibility 
1568
1569 =item File-Scoped Lexicals
1570
1571 =item More Inheritance Concerns
1572
1573 =item Locking the Door and Throwing Away the Key
1574
1575 =item Translucency Revisited
1576
1577 =back
1578
1579 =item NOTES
1580
1581 =item SEE ALSO
1582
1583 =item AUTHOR AND COPYRIGHT
1584
1585 =item ACKNOWLEDGEMENTS
1586
1587 =item HISTORY
1588
1589 =back
1590
1591 =head2 perlobj - Perl objects
1592
1593 =over 4
1594
1595 =item DESCRIPTION
1596
1597 =over 4
1598
1599 =item An Object is Simply a Reference
1600
1601 =item A Class is Simply a Package
1602
1603 =item A Method is Simply a Subroutine
1604
1605 =item Method Invocation
1606
1607 =item Indirect Object Syntax
1608
1609 =item Default UNIVERSAL methods
1610
1611 isa(CLASS), can(METHOD), VERSION( [NEED] )
1612
1613 =item Destructors
1614
1615 =item Summary
1616
1617 =item Two-Phased Garbage Collection
1618
1619 =back
1620
1621 =item SEE ALSO
1622
1623 =back
1624
1625 =head2 perlbot - Bag'o Object Tricks (the BOT)
1626
1627 =over 4
1628
1629 =item DESCRIPTION
1630
1631 =item OO SCALING TIPS
1632
1633 =item INSTANCE VARIABLES
1634
1635 =item SCALAR INSTANCE VARIABLES
1636
1637 =item INSTANCE VARIABLE INHERITANCE
1638
1639 =item OBJECT RELATIONSHIPS
1640
1641 =item OVERRIDING SUPERCLASS METHODS
1642
1643 =item USING RELATIONSHIP WITH SDBM
1644
1645 =item THINKING OF CODE REUSE
1646
1647 =item CLASS CONTEXT AND THE OBJECT
1648
1649 =item INHERITING A CONSTRUCTOR
1650
1651 =item DELEGATION
1652
1653 =back
1654
1655 =head2 perltie - how to hide an object class in a simple variable
1656
1657 =over 4
1658
1659 =item SYNOPSIS
1660
1661 =item DESCRIPTION
1662
1663 =over 4
1664
1665 =item Tying Scalars
1666
1667 TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
1668 DESTROY this
1669
1670 =item Tying Arrays
1671
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
1676 this
1677
1678 =item Tying Hashes
1679
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
1683
1684 =item Tying FileHandles
1685
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,
1688 DESTROY this
1689
1690 =item UNTIE this
1691
1692 =item The C<untie> Gotcha
1693
1694 =back
1695
1696 =item SEE ALSO
1697
1698 =item BUGS
1699
1700 =item AUTHOR
1701
1702 =back
1703
1704 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1705 safe subprocesses, sockets, and semaphores)
1706
1707 =over 4
1708
1709 =item DESCRIPTION
1710
1711 =item Signals
1712
1713 =item Named Pipes
1714
1715 =over 4
1716
1717 =item WARNING
1718
1719 =back
1720
1721 =item Using open() for IPC
1722
1723 =over 4
1724
1725 =item Filehandles
1726
1727 =item Background Processes
1728
1729 =item Complete Dissociation of Child from Parent
1730
1731 =item Safe Pipe Opens
1732
1733 =item Bidirectional Communication with Another Process
1734
1735 =item Bidirectional Communication with Yourself
1736
1737 =back
1738
1739 =item Sockets: Client/Server Communication
1740
1741 =over 4
1742
1743 =item Internet Line Terminators
1744
1745 =item Internet TCP Clients and Servers
1746
1747 =item Unix-Domain TCP Clients and Servers
1748
1749 =back
1750
1751 =item TCP Clients with IO::Socket
1752
1753 =over 4
1754
1755 =item A Simple Client
1756
1757 C<Proto>, C<PeerAddr>, C<PeerPort>
1758
1759 =item A Webget Client
1760
1761 =item Interactive Client with IO::Socket
1762
1763 =back
1764
1765 =item TCP Servers with IO::Socket
1766
1767 Proto, LocalPort, Listen, Reuse
1768
1769 =item UDP: Message Passing
1770
1771 =item SysV IPC
1772
1773 =item NOTES
1774
1775 =item BUGS
1776
1777 =item AUTHOR
1778
1779 =item SEE ALSO
1780
1781 =back
1782
1783 =head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change)
1784
1785 =over 4
1786
1787 =item SYNOPSIS
1788
1789 =item DESCRIPTION
1790
1791 =over 4
1792
1793 =item Behavior of other Perl features in forked pseudo-processes
1794
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
1798
1799 =item Resource limits
1800
1801 =item Killing the parent process
1802
1803 =item Lifetime of the parent process and pseudo-processes
1804
1805 =item CAVEATS AND LIMITATIONS
1806
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
1810
1811 =back
1812
1813 =item BUGS
1814
1815 =item AUTHOR
1816
1817 =item SEE ALSO
1818
1819 =back
1820
1821 =head2 perlnumber - semantics of numbers and numeric operations in Perl
1822
1823 =over 4
1824
1825 =item SYNOPSIS
1826
1827 =item DESCRIPTION
1828
1829 =item Storing numbers
1830
1831 =item Numeric operators and numeric conversions
1832
1833 =item Flavors of Perl numeric operations
1834
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
1838 string
1839
1840 =item AUTHOR
1841
1842 =item SEE ALSO
1843
1844 =back
1845
1846 =head2 perlthrtut - tutorial on threads in Perl
1847
1848 =over 4
1849
1850 =item DESCRIPTION
1851
1852 =back
1853
1854 =head2 perlothrtut - old tutorial on threads in Perl
1855
1856 =over 4
1857
1858 =item DESCRIPTION
1859
1860 =item What Is A Thread Anyway?
1861
1862 =item Threaded Program Models
1863
1864 =over 4
1865
1866 =item Boss/Worker
1867
1868 =item Work Crew
1869
1870 =item Pipeline
1871
1872 =back
1873
1874 =item Native threads
1875
1876 =item What kind of threads are perl threads?
1877
1878 =item Threadsafe Modules
1879
1880 =item Thread Basics
1881
1882 =over 4
1883
1884 =item Basic Thread Support
1885
1886 =item Creating Threads
1887
1888 =item Giving up control
1889
1890 =item Waiting For A Thread To Exit
1891
1892 =item Errors In Threads
1893
1894 =item Ignoring A Thread
1895
1896 =back
1897
1898 =item Threads And Data
1899
1900 =over 4
1901
1902 =item Shared And Unshared Data
1903
1904 =item Thread Pitfall: Races
1905
1906 =item Controlling access: lock()
1907
1908 =item Thread Pitfall: Deadlocks
1909
1910 =item Queues: Passing Data Around
1911
1912 =back
1913
1914 =item Threads And Code
1915
1916 =over 4
1917
1918 =item Semaphores: Synchronizing Data Access
1919
1920 Basic semaphores, Advanced Semaphores
1921
1922 =item Attributes: Restricting Access To Subroutines
1923
1924 =item Subroutine Locks
1925
1926 =item Methods
1927
1928 =item Locking A Subroutine
1929
1930 =back
1931
1932 =item General Thread Utility Routines
1933
1934 =over 4
1935
1936 =item What Thread Am I In?
1937
1938 =item Thread IDs
1939
1940 =item Are These Threads The Same?
1941
1942 =item What Threads Are Running?
1943
1944 =back
1945
1946 =item A Complete Example
1947
1948 =item Conclusion
1949
1950 =item Bibliography
1951
1952 =over 4
1953
1954 =item Introductory Texts
1955
1956 =item OS-Related References
1957
1958 =item Other References
1959
1960 =back
1961
1962 =item Acknowledgements
1963
1964 =item AUTHOR
1965
1966 =item Copyrights
1967
1968 =back
1969
1970 =head2 perlport - Writing portable Perl
1971
1972 =over 4
1973
1974 =item DESCRIPTION
1975
1976 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
1977 portable
1978
1979 =item ISSUES
1980
1981 =over 4
1982
1983 =item Newlines
1984
1985 =item Numbers endianness and Width
1986
1987 =item Files and Filesystems
1988
1989 =item System Interaction
1990
1991 =item Interprocess Communication (IPC)
1992
1993 =item External Subroutines (XS)
1994
1995 =item Standard Modules
1996
1997 =item Time and Date
1998
1999 =item Character sets and character encoding
2000
2001 =item Internationalisation
2002
2003 =item System Resources
2004
2005 =item Security
2006
2007 =item Style
2008
2009 =back
2010
2011 =item CPAN Testers
2012
2013 Mailing list: cpan-testers@perl.org, Testing results:
2014 http://testers.cpan.org/
2015
2016 =item PLATFORMS
2017
2018 =over 4
2019
2020 =item Unix
2021
2022 =item DOS and Derivatives
2023
2024 =item S<Mac OS>
2025
2026 =item VMS
2027
2028 =item VOS
2029
2030 =item EBCDIC Platforms
2031
2032 =item Acorn RISC OS
2033
2034 =item Other perls
2035
2036 =back
2037
2038 =item FUNCTION IMPLEMENTATIONS
2039
2040 =over 4
2041
2042 =item Alphabetical Listing of Perl Functions
2043
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
2070
2071 =back
2072
2073 =item CHANGES
2074
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
2081
2082 =item Supported Platforms
2083
2084 =item SEE ALSO
2085
2086 =item AUTHORS / CONTRIBUTORS
2087
2088 =item VERSION
2089
2090 =back
2091
2092 =head2 perllocale - Perl locale handling (internationalization and
2093 localization)
2094
2095 =over 4
2096
2097 =item DESCRIPTION
2098
2099 =item PREPARING TO USE LOCALES
2100
2101 =item USING LOCALES
2102
2103 =over 4
2104
2105 =item The use locale pragma
2106
2107 =item The setlocale function
2108
2109 =item Finding locales
2110
2111 =item LOCALE PROBLEMS
2112
2113 =item Temporarily fixing locale problems
2114
2115 =item Permanently fixing locale problems
2116
2117 =item Permanently fixing your system's locale configuration
2118
2119 =item Fixing system locale configuration
2120
2121 =item The localeconv function
2122
2123 =item I18N::Langinfo
2124
2125 =back
2126
2127 =item LOCALE CATEGORIES
2128
2129 =over 4
2130
2131 =item Category LC_COLLATE: Collation
2132
2133 =item Category LC_CTYPE: Character Types
2134
2135 =item Category LC_NUMERIC: Numeric Formatting
2136
2137 =item Category LC_MONETARY: Formatting of monetary amounts
2138
2139 =item LC_TIME
2140
2141 =item Other categories
2142
2143 =back
2144
2145 =item SECURITY
2146
2147 =item ENVIRONMENT
2148
2149 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
2150 LC_NUMERIC, LC_TIME, LANG
2151
2152 =item NOTES
2153
2154 =over 4
2155
2156 =item Backward compatibility
2157
2158 =item I18N:Collate obsolete
2159
2160 =item Sort speed and memory use impacts
2161
2162 =item write() and LC_NUMERIC
2163
2164 =item Freely available locale definitions
2165
2166 =item I18n and l10n
2167
2168 =item An imperfect standard
2169
2170 =back
2171
2172 =item BUGS
2173
2174 =over 4
2175
2176 =item Broken systems
2177
2178 =back
2179
2180 =item SEE ALSO
2181
2182 =item HISTORY
2183
2184 =back
2185
2186 =head2 perluniintro - Perl Unicode introduction
2187
2188 =over 4
2189
2190 =item DESCRIPTION
2191
2192 =over 4
2193
2194 =item Unicode
2195
2196 =item Perl's Unicode Support
2197
2198 =item Perl's Unicode Model
2199
2200 =item Creating Unicode
2201
2202 =item Handling Unicode
2203
2204 =item Legacy Encodings
2205
2206 =item Unicode I/O
2207
2208 =item Displaying Unicode As Text
2209
2210 =item Special Cases
2211
2212 =item Advanced Topics
2213
2214 =item Miscellaneous
2215
2216 =item Questions With Answers
2217
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?
2223
2224 =item Hexadecimal Notation
2225
2226 =item Further Resources
2227
2228 =back
2229
2230 =item UNICODE IN OLDER PERLS
2231
2232 =item SEE ALSO
2233
2234 =item ACKNOWLEDGEMENTS
2235
2236 =item AUTHOR, COPYRIGHT, AND LICENSE
2237
2238 =back
2239
2240 =head2 perlunicode - Unicode support in Perl
2241
2242 =over 4
2243
2244 =item DESCRIPTION
2245
2246 =over 4
2247
2248 =item Important Caveats
2249
2250 Input and Output Disciplines, Regular Expressions, C<use utf8> still needed
2251 to enable UTF-8/UTF-EBCDIC in scripts
2252
2253 =item Byte and Character semantics
2254
2255 =item Effects of character semantics
2256
2257 =item Scripts
2258
2259 =item Blocks
2260
2261 =item Character encodings for input and output
2262
2263 =back
2264
2265 =item CAVEATS
2266
2267 =item UNICODE REGULAR EXPRESSION SUPPORT LEVEL
2268
2269 =over 4
2270
2271 =item Unicode Encodings
2272
2273 UTF-8, UTF-EBDIC, 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
2275
2276 =item Security Implications of Malformed UTF-8
2277
2278 =item Unicode in Perl on EBCDIC
2279
2280 =item Using Unicode in XS
2281
2282 =back
2283
2284 =item SEE ALSO
2285
2286 =back
2287
2288 =head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
2289
2290 =over 4
2291
2292 =item DESCRIPTION
2293
2294 =item COMMON CHARACTER CODE SETS
2295
2296 =over 4
2297
2298 =item ASCII
2299
2300 =item ISO 8859
2301
2302 =item Latin 1 (ISO 8859-1)
2303
2304 =item EBCDIC
2305
2306 =item 13 variant characters
2307
2308 =item 0037
2309
2310 =item 1047
2311
2312 =item POSIX-BC
2313
2314 =item Unicode and UTF
2315
2316 =back
2317
2318 =item SINGLE OCTET TABLES
2319
2320 recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
2321
2322 =item IDENTIFYING CHARACTER CODE SETS
2323
2324 =item CONVERSIONS
2325
2326 =over 4
2327
2328 =item tr///
2329
2330 =item iconv
2331
2332 =item C RTL
2333
2334 =back
2335
2336 =item OPERATOR DIFFERENCES
2337
2338 =item FUNCTION DIFFERENCES
2339
2340 chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
2341
2342 =item REGULAR EXPRESSION DIFFERENCES
2343
2344 =item SOCKETS
2345
2346 =item SORTING
2347
2348 =over 4
2349
2350 =item Ignore ASCII vs. EBCDIC sort differences.
2351
2352 =item MONO CASE then sort data.
2353
2354 =item Convert, sort data, then re convert.
2355
2356 =item Perform sorting on one type of machine only.
2357
2358 =back
2359
2360 =item TRANSFORMATION FORMATS
2361
2362 =over 4
2363
2364 =item URL decoding and encoding
2365
2366 =item uu encoding and decoding
2367
2368 =item Quoted-Printable encoding and decoding
2369
2370 =item Caesarian ciphers
2371
2372 =back
2373
2374 =item Hashing order and checksums
2375
2376 =item I18N AND L10N
2377
2378 =item MULTI OCTET CHARACTER SETS
2379
2380 =item OS ISSUES
2381
2382 =over 4
2383
2384 =item OS/400 
2385
2386 IFS access
2387
2388 =item OS/390, z/OS
2389
2390 chcp, dataset access, OS/390, z/OS iconv, locales
2391
2392 =item VM/ESA?
2393
2394 =item POSIX-BC?
2395
2396 =back
2397
2398 =item BUGS
2399
2400 =item SEE ALSO
2401
2402 =item REFERENCES
2403
2404 =item HISTORY
2405
2406 =item AUTHOR
2407
2408 =back
2409
2410 =head2 perlsec - Perl security
2411
2412 =over 4
2413
2414 =item DESCRIPTION
2415
2416 =over 4
2417
2418 =item Laundering and Detecting Tainted Data
2419
2420 =item Switches On the "#!" Line
2421
2422 =item Cleaning Up Your Path
2423
2424 =item Security Bugs
2425
2426 =item Protecting Your Programs
2427
2428 =back
2429
2430 =item SEE ALSO
2431
2432 =back
2433
2434 =head2 perlmod - Perl modules (packages and symbol tables)
2435
2436 =over 4
2437
2438 =item DESCRIPTION
2439
2440 =over 4
2441
2442 =item Packages
2443
2444 =item Symbol Tables
2445
2446 =item Package Constructors and Destructors
2447
2448 =item Perl Classes
2449
2450 =item Perl Modules
2451
2452 =item Making your module threadsafe
2453
2454 =back
2455
2456 =item SEE ALSO
2457
2458 =back
2459
2460 =head2 perlmodinstall - Installing CPAN Modules
2461
2462 =over 4
2463
2464 =item DESCRIPTION
2465
2466 =over 4
2467
2468 =item PREAMBLE
2469
2470 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
2471 module (sometimes unnecessary), B<INSTALL> the module
2472
2473 =back
2474
2475 =item PORTABILITY
2476
2477 =item HEY
2478
2479 =item AUTHOR
2480
2481 =item COPYRIGHT
2482
2483 =back
2484
2485 =head2 perlmodlib - constructing new Perl modules and finding existing ones
2486
2487 =over 4
2488
2489 =item DESCRIPTION
2490
2491 =item THE PERL MODULE LIBRARY
2492
2493 =over 4
2494
2495 =item Pragmatic Modules
2496
2497 attributes, attrs, autouse, base, blib, bytes, charnames, constant,
2498 diagnostics, encoding, fields, filetest, integer, less, locale, open, ops,
2499 overload, re, sigtrap, sort, strict, subs, utf8, vars, vmsish, warnings,
2500 warnings::register
2501
2502 =item Standard Modules
2503
2504 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
2505 B::Bytecode, B::C, B::CC, B::Concise, B::Debug, B::Deparse,
2506 B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, B::Terse,
2507 B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie,
2508 CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, CPAN,
2509 CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, Class::Struct,
2510 Cwd, DB, DB_File, Devel::SelfStubber, Digest, DirHandle, Dumpvalue, Encode,
2511 Encode::EncodeFormat, Encode::Tcl, English, Env, Exporter, Exporter::Heavy,
2512 ExtUtils::Command, ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install,
2513 ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin,
2514 ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS,
2515 ExtUtils::MM_Win32, ExtUtils::MakeMaker, ExtUtils::Manifest,
2516 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
2517 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree,
2518 File::Compare, File::Copy, File::DosGlob, File::Find, File::Path,
2519 File::Spec, File::Spec::Epoc, File::Spec::Functions, File::Spec::Mac,
2520 File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, File::Spec::Win32,
2521 File::Temp, File::stat, FileCache, FileHandle, Filter::Simple, FindBin,
2522 Getopt::Long, Getopt::Std, I18N::Collate, I18N::LangTags,
2523 I18N::LangTags::List, IO, IPC::Open2, IPC::Open3, Locale::Constants,
2524 Locale::Country, Locale::Currency, Locale::Language, Locale::Maketext,
2525 Locale::Maketext::TPJ13, Math::BigFloat, Math::BigInt, Math::BigInt::Calc,
2526 Math::Complex, Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire,
2527 Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File,
2528 Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd,
2529 Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3,
2530 Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent,
2531 Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO,
2532 Pod::Checker, Pod::Find, Pod::Html, Pod::InputObjects, Pod::LaTeX,
2533 Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, Pod::Plainer,
2534 Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike,
2535 Pod::Text::Termcap, Pod::Usage, Pod::t::basic, SDBM_File, Safe,
2536 Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch,
2537 Symbol, Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test,
2538 Test::Builder, Test::Harness, Test::More, Test::Simple, Test::Tutorial,
2539 Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs,
2540 Text::Wrap, Thread, Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash,
2541 Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime,
2542 Time::tm, UNIVERSAL, Unicode::Collate, Unicode::UCD, User::grent,
2543 User::pwent, Win32
2544
2545 =item Extension Modules
2546
2547 =back
2548
2549 =item CPAN
2550
2551 =over 4
2552
2553 =item Africa
2554
2555 =item Asia
2556
2557 =item Central America
2558
2559 =item Europe
2560
2561 =item North America
2562
2563 =item Oceania
2564
2565 =item South America
2566
2567 =back
2568
2569 =item Modules: Creation, Use, and Abuse
2570
2571 =over 4
2572
2573 =item Guidelines for Module Creation
2574
2575 =item Guidelines for Converting Perl 4 Library Scripts into Modules
2576
2577 =item Guidelines for Reusing Application Code
2578
2579 =back
2580
2581 =item NOTE
2582
2583 =back
2584
2585 =head2 perlmodstyle - Perl module style guide
2586
2587 =over 4
2588
2589 =item INTRODUCTION
2590
2591 =item QUICK CHECKLIST
2592
2593 =over 4
2594
2595 =item Before you start
2596
2597 =item The API
2598
2599 =item Stability
2600
2601 =item Documentation
2602
2603 =item Release considerations
2604
2605 =back
2606
2607 =item BEFORE YOU START WRITING A MODULE
2608
2609 =over 4
2610
2611 =item Has it been done before?
2612
2613 =item Do one thing and do it well
2614
2615 =item What's in a name?
2616
2617 =back
2618
2619 =item DESIGNING AND WRITING YOUR MODULE
2620
2621 =over 4
2622
2623 =item To OO or not to OO?
2624
2625 =item Designing your API
2626
2627 Write simple routines to do simple things, Separate functionality from
2628 output, Provide sensible shortcuts and defaults, Naming conventions,
2629 Parameter passing
2630
2631 =item Strictness and warnings
2632
2633 =item Backwards compatibility
2634
2635 =item Error handling and messages
2636
2637 =back
2638
2639 =item DOCUMENTING YOUR MODULE
2640
2641 =over 4
2642
2643 =item POD
2644
2645 =item README, INSTALL, release notes, changelogs
2646
2647 =back
2648
2649 =item RELEASE CONSIDERATIONS
2650
2651 =over 4
2652
2653 =item Version numbering
2654
2655 =item Pre-requisites
2656
2657 =item Testing
2658
2659 =item Packaging
2660
2661 =item Licensing
2662
2663 =back
2664
2665 =item COMMON PITFALLS
2666
2667 =over 4
2668
2669 =item Reinventing the wheel
2670
2671 =item Trying to do too much
2672
2673 =item Inappropriate documentation
2674
2675 =back
2676
2677 =item SEE ALSO
2678
2679 L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Testing tools,
2680 http://pause.perl.org/, Any good book on software engineering
2681
2682 =item AUTHOR
2683
2684 =back
2685
2686 =head2 perlnewmod - preparing a new module for distribution
2687
2688 =over 4
2689
2690 =item DESCRIPTION
2691
2692 =over 4
2693
2694 =item Warning
2695
2696 =item What should I make into a module?
2697
2698 =item Step-by-step: Preparing the ground
2699
2700 Look around, Check it's new, Discuss the need, Choose a name, Check again
2701
2702 =item Step-by-step: Making the module
2703
2704 Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
2705 L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
2706 documentation|perlpod>, Write tests, Write the README
2707
2708 =item Step-by-step: Distributing your module
2709
2710 Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
2711 tarball, Announce to the modules list, Announce to clpa, Fix bugs!
2712
2713 =back
2714
2715 =item AUTHOR
2716
2717 =item SEE ALSO
2718
2719 =back
2720
2721 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.2 $, $Date:
2722 2001/11/09 08:06:04 $)
2723
2724 =over 4
2725
2726 =item DESCRIPTION
2727
2728 =over 4
2729
2730 =item What is Perl?
2731
2732 =item Who supports Perl?  Who develops it?  Why is it free?
2733
2734 =item Which version of Perl should I use?
2735
2736 =item What are perl4 and perl5?
2737
2738 =item What is perl6?
2739
2740 =item How stable is Perl?
2741
2742 =item Is Perl difficult to learn?
2743
2744 =item How does Perl compare with other languages like Java, Python, REXX,
2745 Scheme, or Tcl?
2746
2747 =item Can I do [task] in Perl?
2748
2749 =item When shouldn't I program in Perl?
2750
2751 =item What's the difference between "perl" and "Perl"?
2752
2753 =item Is it a Perl program or a Perl script?
2754
2755 =item What is a JAPH?
2756
2757 =item Where can I get a list of Larry Wall witticisms?
2758
2759 =item How can I convince my sysadmin/supervisor/employees to use version
2760 5/5.005/Perl instead of some other language?
2761
2762 =back
2763
2764 =item AUTHOR AND COPYRIGHT
2765
2766 =back
2767
2768 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.3 $,
2769 $Date: 2001/11/09 08:06:04 $)
2770
2771 =over 4
2772
2773 =item DESCRIPTION
2774
2775 =over 4
2776
2777 =item What machines support Perl?  Where do I get it?
2778
2779 =item How can I get a binary version of Perl?
2780
2781 =item I don't have a C compiler on my system.  How can I compile perl?
2782
2783 =item I copied the Perl binary from one machine to another, but scripts
2784 don't work.
2785
2786 =item I grabbed the sources and tried to compile but gdbm/dynamic
2787 loading/malloc/linking/... failed.  How do I make it work?
2788
2789 =item What modules and extensions are available for Perl?  What is CPAN? 
2790 What does CPAN/src/... mean?
2791
2792 =item Is there an ISO or ANSI certified version of Perl?
2793
2794 =item Where can I get information on Perl?
2795
2796 =item What are the Perl newsgroups on Usenet?  Where do I post questions?
2797
2798 =item Where should I post source code?
2799
2800 =item Perl Books
2801
2802 References, Tutorials, Task-Oriented, Special Topics
2803
2804 =item Perl in Magazines
2805
2806 =item Perl on the Net: FTP and WWW Access
2807
2808 =item What mailing lists are there for Perl?
2809
2810 =item Archives of comp.lang.perl.misc
2811
2812 =item Where can I buy a commercial version of Perl?
2813
2814 =item Where do I send bug reports?
2815
2816 =item What is perl.com? Perl Mongers? pm.org? perl.org?
2817
2818 =back
2819
2820 =item AUTHOR AND COPYRIGHT
2821
2822 =back
2823
2824 =head2 perlfaq3 - Programming Tools ($Revision: 1.10 $, $Date: 2001/11/19
2825 17:09:37 $)
2826
2827 =over 4
2828
2829 =item DESCRIPTION
2830
2831 =over 4
2832
2833 =item How do I do (anything)?
2834
2835 =item How can I use Perl interactively?
2836
2837 =item Is there a Perl shell?
2838
2839 =item How do I debug my Perl programs?
2840
2841 =item How do I profile my Perl programs?
2842
2843 =item How do I cross-reference my Perl programs?
2844
2845 =item Is there a pretty-printer (formatter) for Perl?
2846
2847 =item Is there a ctags for Perl?
2848
2849 =item Is there an IDE or Windows Perl Editor?
2850
2851 Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+,
2852 CodeMagicCD, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright,
2853 MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
2854
2855 =item Where can I get Perl macros for vi?
2856
2857 =item Where can I get perl-mode for emacs?
2858
2859 =item How can I use curses with Perl?
2860
2861 =item How can I use X or Tk with Perl?
2862
2863 =item How can I generate simple menus without using CGI or Tk?
2864
2865 =item How can I make my Perl program run faster?
2866
2867 =item How can I make my Perl program take less memory?
2868
2869 Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
2870 stringification, Pass by reference, Tie large variables to disk
2871
2872 =item Is it unsafe to return a pointer to local data?
2873
2874 =item How can I free an array or hash so my program shrinks?
2875
2876 =item How can I make my CGI script more efficient?
2877
2878 =item How can I hide the source for my Perl program?
2879
2880 =item How can I compile my Perl program into byte code or C?
2881
2882 =item How can I compile Perl into Java?
2883
2884 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2885
2886 =item Can I write useful Perl programs on the command line?
2887
2888 =item Why don't Perl one-liners work on my DOS/Mac/VMS system?
2889
2890 =item Where can I learn about CGI or Web programming in Perl?
2891
2892 =item Where can I learn about object-oriented Perl programming?
2893
2894 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
2895
2896 =item I've read perlembed, perlguts, etc., but I can't embed perl in
2897 my C program; what am I doing wrong?
2898
2899 =item When I tried to run my script, I got this message. What does it
2900 mean?
2901
2902 =item What's MakeMaker?
2903
2904 =back
2905
2906 =item AUTHOR AND COPYRIGHT
2907
2908 =back
2909
2910 =head2 perlfaq4 - Data Manipulation ($Revision: 1.9 $, $Date: 2001/12/07
2911 21:17:58 $)
2912
2913 =over 4
2914
2915 =item DESCRIPTION
2916
2917 =item Data: Numbers
2918
2919 =over 4
2920
2921 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
2922 numbers I should be getting (eg, 19.95)?
2923
2924 =item Why isn't my octal data interpreted correctly?
2925
2926 =item Does Perl have a round() function?  What about ceil() and floor()? 
2927 Trig functions?
2928
2929 =item How do I convert between numeric representations:
2930
2931 B<How do I convert Hexadecimal into decimal:>, B<How do I convert from
2932 decimal to hexadecimal:>, B<How do I convert from octal to decimal:>, B<How
2933 do I convert from decimal to octal:>, B<How do I convert from binary to
2934 decimal:>, B<How do I convert from decimal to binary:>
2935
2936 =item Why doesn't & work the way I want it to?
2937
2938 =item How do I multiply matrices?
2939
2940 =item How do I perform an operation on a series of integers?
2941
2942 =item How can I output Roman numerals?
2943
2944 =item Why aren't my random numbers random?
2945
2946 =back
2947
2948 =item Data: Dates
2949
2950 =over 4
2951
2952 =item How do I find the week-of-the-year/day-of-the-year?
2953
2954 =item How do I find the current century or millennium?
2955
2956 =item How can I compare two dates and find the difference?
2957
2958 =item How can I take a string and turn it into epoch seconds?
2959
2960 =item How can I find the Julian Day?
2961
2962 =item How do I find yesterday's date?
2963
2964 =item Does Perl have a Year 2000 problem?  Is Perl Y2K compliant?
2965
2966 =back
2967
2968 =item Data: Strings
2969
2970 =over 4
2971
2972 =item How do I validate input?
2973
2974 =item How do I unescape a string?
2975
2976 =item How do I remove consecutive pairs of characters?
2977
2978 =item How do I expand function calls in a string?
2979
2980 =item How do I find matching/nesting anything?
2981
2982 =item How do I reverse a string?
2983
2984 =item How do I expand tabs in a string?
2985
2986 =item How do I reformat a paragraph?
2987
2988 =item How can I access/change the first N letters of a string?
2989
2990 =item How do I change the Nth occurrence of something?
2991
2992 =item How can I count the number of occurrences of a substring within a
2993 string?
2994
2995 =item How do I capitalize all the words on one line?
2996
2997 =item How can I split a [character] delimited string except when inside
2998 [character]? (Comma-separated files)
2999
3000 =item How do I strip blank space from the beginning/end of a string?
3001
3002 =item How do I pad a string with blanks or pad a number with zeroes?
3003
3004 =item How do I extract selected columns from a string?
3005
3006 =item How do I find the soundex value of a string?
3007
3008 =item How can I expand variables in text strings?
3009
3010 =item What's wrong with always quoting "$vars"?
3011
3012 =item Why don't my <<HERE documents work?
3013
3014 1. There must be no space after the << part, 2. There (probably) should be
3015 a semicolon at the end, 3. You can't (easily) have any space in front of
3016 the tag
3017
3018 =back
3019
3020 =item Data: Arrays
3021
3022 =over 4
3023
3024 =item What is the difference between a list and an array?
3025
3026 =item What is the difference between $array[1] and @array[1]?
3027
3028 =item How can I remove duplicate elements from a list or array?
3029
3030 a), b), c), d), e)
3031
3032 =item How can I tell whether a certain element is contained in a list or
3033 array?
3034
3035 =item How do I compute the difference of two arrays?  How do I compute the
3036 intersection of two arrays?
3037
3038 =item How do I test whether two arrays or hashes are equal?
3039
3040 =item How do I find the first array element for which a condition is true?
3041
3042 =item How do I handle linked lists?
3043
3044 =item How do I handle circular lists?
3045
3046 =item How do I shuffle an array randomly?
3047
3048 =item How do I process/modify each element of an array?
3049
3050 =item How do I select a random element from an array?
3051
3052 =item How do I permute N elements of a list?
3053
3054 =item How do I sort an array by (anything)?
3055
3056 =item How do I manipulate arrays of bits?
3057
3058 =item Why does defined() return true on empty arrays and hashes?
3059
3060 =back
3061
3062 =item Data: Hashes (Associative Arrays)
3063
3064 =over 4
3065
3066 =item How do I process an entire hash?
3067
3068 =item What happens if I add or remove keys from a hash while iterating over
3069 it?
3070
3071 =item How do I look up a hash element by value?
3072
3073 =item How can I know how many entries are in a hash?
3074
3075 =item How do I sort a hash (optionally by value instead of key)?
3076
3077 =item How can I always keep my hash sorted?
3078
3079 =item What's the difference between "delete" and "undef" with hashes?
3080
3081 =item Why don't my tied hashes make the defined/exists distinction?
3082
3083 =item How do I reset an each() operation part-way through?
3084
3085 =item How can I get the unique keys from two hashes?
3086
3087 =item How can I store a multidimensional array in a DBM file?
3088
3089 =item How can I make my hash remember the order I put elements into it?
3090
3091 =item Why does passing a subroutine an undefined element in a hash create
3092 it?
3093
3094 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
3095 array of hashes or arrays?
3096
3097 =item How can I use a reference as a hash key?
3098
3099 =back
3100
3101 =item Data: Misc
3102
3103 =over 4
3104
3105 =item How do I handle binary data correctly?
3106
3107 =item How do I determine whether a scalar is a number/whole/integer/float?
3108
3109 =item How do I keep persistent data across program calls?
3110
3111 =item How do I print out or copy a recursive data structure?
3112
3113 =item How do I define methods for every class/object?
3114
3115 =item How do I verify a credit card checksum?
3116
3117 =item How do I pack arrays of doubles or floats for XS code?
3118
3119 =back
3120
3121 =item AUTHOR AND COPYRIGHT
3122
3123 =back
3124
3125 =head2 perlfaq5 - Files and Formats ($Revision: 1.5 $, $Date: 2001/12/18
3126 09:01:14 $)
3127
3128 =over 4
3129
3130 =item DESCRIPTION
3131
3132 =over 4
3133
3134 =item How do I flush/unbuffer an output filehandle?  Why must I do this?
3135
3136 =item How do I change one line in a file/delete a line in a file/insert a
3137 line in the middle of a file/append to the beginning of a file?
3138
3139 =item How do I count the number of lines in a file?
3140
3141 =item How do I make a temporary file name?
3142
3143 =item How can I manipulate fixed-record-length files?
3144
3145 =item How can I make a filehandle local to a subroutine?  How do I pass
3146 filehandles between subroutines?  How do I make an array of filehandles?
3147
3148 =item How can I use a filehandle indirectly?
3149
3150 =item How can I set up a footer format to be used with write()?
3151
3152 =item How can I write() into a string?
3153
3154 =item How can I output my numbers with commas added?
3155
3156 =item How can I translate tildes (~) in a filename?
3157
3158 =item How come when I open a file read-write it wipes it out?
3159
3160 =item Why do I sometimes get an "Argument list too long" when I use <*>?
3161
3162 =item Is there a leak/bug in glob()?
3163
3164 =item How can I open a file with a leading ">" or trailing blanks?
3165
3166 =item How can I reliably rename a file?
3167
3168 =item How can I lock a file?
3169
3170 =item Why can't I just open(FH, ">file.lock")?
3171
3172 =item I still don't get locking.  I just want to increment the number in
3173 the file.  How can I do this?
3174
3175 =item All I want to do is append a small amount of text to the end of a
3176 file.  Do I still have to use locking?
3177
3178 =item How do I randomly update a binary file?
3179
3180 =item How do I get a file's timestamp in perl?
3181
3182 =item How do I set a file's timestamp in perl?
3183
3184 =item How do I print to more than one file at once?
3185
3186 =item How can I read in an entire file all at once?
3187
3188 =item How can I read in a file by paragraphs?
3189
3190 =item How can I read a single character from a file?  From the keyboard?
3191
3192 =item How can I tell whether there's a character waiting on a filehandle?
3193
3194 =item How do I do a C<tail -f> in perl?
3195
3196 =item How do I dup() a filehandle in Perl?
3197
3198 =item How do I close a file descriptor by number?
3199
3200 =item Why can't I use "C:\temp\foo" in DOS paths?  What doesn't
3201 `C:\temp\foo.exe` work?
3202
3203 =item Why doesn't glob("*.*") get all the files?
3204
3205 =item Why does Perl let me delete read-only files?  Why does C<-i> clobber
3206 protected files?  Isn't this a bug in Perl?
3207
3208 =item How do I select a random line from a file?
3209
3210 =item Why do I get weird spaces when I print an array of lines?
3211
3212 =back
3213
3214 =item AUTHOR AND COPYRIGHT
3215
3216 =back
3217
3218 =head2 perlfaq6 - Regexes ($Revision: 1.5 $, $Date: 2001/12/02 01:55:12 $)
3219
3220 =over 4
3221
3222 =item DESCRIPTION
3223
3224 =over 4
3225
3226 =item How can I hope to use regular expressions without creating illegible
3227 and unmaintainable code?
3228
3229 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
3230
3231 =item I'm having trouble matching over more than one line.  What's wrong?
3232
3233 =item How can I pull out lines between two patterns that are themselves on
3234 different lines?
3235
3236 =item I put a regular expression into $/ but it didn't work. What's wrong?
3237
3238 =item How do I substitute case insensitively on the LHS while preserving
3239 case on the RHS?
3240
3241 =item How can I make C<\w> match national character sets?
3242
3243 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
3244
3245 =item How can I quote a variable to use in a regex?
3246
3247 =item What is C</o> really for?
3248
3249 =item How do I use a regular expression to strip C style comments from a
3250 file?
3251
3252 =item Can I use Perl regular expressions to match balanced text?
3253
3254 =item What does it mean that regexes are greedy?  How can I get around it?
3255
3256 =item How do I process each word on each line?
3257
3258 =item How can I print out a word-frequency or line-frequency summary?
3259
3260 =item How can I do approximate matching?
3261
3262 =item How do I efficiently match many regular expressions at once?
3263
3264 =item Why don't word-boundary searches with C<\b> work for me?
3265
3266 =item Why does using $&, $`, or $' slow my program down?
3267
3268 =item What good is C<\G> in a regular expression?
3269
3270 =item Are Perl regexes DFAs or NFAs?  Are they POSIX compliant?
3271
3272 =item What's wrong with using grep or map in a void context?
3273
3274 =item How can I match strings with multibyte characters?
3275
3276 =item How do I match a pattern that is supplied by the user?
3277
3278 =back
3279
3280 =item AUTHOR AND COPYRIGHT
3281
3282 =back
3283
3284 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.4 $, $Date: 2001/11/07
3285 02:27:50 $)
3286
3287 =over 4
3288
3289 =item DESCRIPTION
3290
3291 =over 4
3292
3293 =item Can I get a BNF/yacc/RE for the Perl language?
3294
3295 =item What are all these $@%&* punctuation signs, and how do I know when to
3296 use them?
3297
3298 =item Do I always/never have to quote my strings or use semicolons and
3299 commas?
3300
3301 =item How do I skip some return values?
3302
3303 =item How do I temporarily block warnings?
3304
3305 =item What's an extension?
3306
3307 =item Why do Perl operators have different precedence than C operators?
3308
3309 =item How do I declare/create a structure?
3310
3311 =item How do I create a module?
3312
3313 =item How do I create a class?
3314
3315 =item How can I tell if a variable is tainted?
3316
3317 =item What's a closure?
3318
3319 =item What is variable suicide and how can I prevent it?
3320
3321 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
3322 Regex}?
3323
3324 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
3325 Passing Methods
3326
3327 =item How do I create a static variable?
3328
3329 =item What's the difference between dynamic and lexical (static) scoping? 
3330 Between local() and my()?
3331
3332 =item How can I access a dynamic variable while a similarly named lexical
3333 is in scope?
3334
3335 =item What's the difference between deep and shallow binding?
3336
3337 =item Why doesn't "my($foo) = <FILE>;" work right?
3338
3339 =item How do I redefine a builtin function, operator, or method?
3340
3341 =item What's the difference between calling a function as &foo and foo()?
3342
3343 =item How do I create a switch or case statement?
3344
3345 =item How can I catch accesses to undefined variables/functions/methods?
3346
3347 =item Why can't a method included in this same file be found?
3348
3349 =item How can I find out my current package?
3350
3351 =item How can I comment out a large block of perl code?
3352
3353 =item How do I clear a package?
3354
3355 =item How can I use a variable as a variable name?
3356
3357 =back
3358
3359 =item AUTHOR AND COPYRIGHT
3360
3361 =back
3362
3363 =head2 perlfaq8 - System Interaction ($Revision: 1.4 $, $Date: 2001/11/09
3364 08:06:04 $)
3365
3366 =over 4
3367
3368 =item DESCRIPTION
3369
3370 =over 4
3371
3372 =item How do I find out which operating system I'm running under?
3373
3374 =item How come exec() doesn't return?
3375
3376 =item How do I do fancy stuff with the keyboard/screen/mouse?
3377
3378 Keyboard, Screen, Mouse
3379
3380 =item How do I print something out in color?
3381
3382 =item How do I read just one key without waiting for a return key?
3383
3384 =item How do I check whether input is ready on the keyboard?
3385
3386 =item How do I clear the screen?
3387
3388 =item How do I get the screen size?
3389
3390 =item How do I ask the user for a password?
3391
3392 =item How do I read and write the serial port?
3393
3394 lockfiles, open mode, end of line, flushing output, non-blocking input
3395
3396 =item How do I decode encrypted password files?
3397
3398 =item How do I start a process in the background?
3399
3400 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
3401
3402 =item How do I trap control characters/signals?
3403
3404 =item How do I modify the shadow password file on a Unix system?
3405
3406 =item How do I set the time and date?
3407
3408 =item How can I sleep() or alarm() for under a second?
3409
3410 =item How can I measure time under a second?
3411
3412 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
3413
3414 =item Why doesn't my sockets program work under System V (Solaris)?  What
3415 does the error message "Protocol not supported" mean?
3416
3417 =item How can I call my system's unique C functions from Perl?
3418
3419 =item Where do I get the include files to do ioctl() or syscall()?
3420
3421 =item Why do setuid perl scripts complain about kernel problems?
3422
3423 =item How can I open a pipe both to and from a command?
3424
3425 =item Why can't I get the output of a command with system()?
3426
3427 =item How can I capture STDERR from an external command?
3428
3429 =item Why doesn't open() return an error when a pipe open fails?
3430
3431 =item What's wrong with using backticks in a void context?
3432
3433 =item How can I call backticks without shell processing?
3434
3435 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
3436 ^Z on MS-DOS)?
3437
3438 =item How can I convert my shell script to perl?
3439
3440 =item Can I use perl to run a telnet or ftp session?
3441
3442 =item How can I write expect in Perl?
3443
3444 =item Is there a way to hide perl's command line from programs such as
3445 "ps"?
3446
3447 =item I {changed directory, modified my environment} in a perl script.  How
3448 come the change disappeared when I exited the script?  How do I get my
3449 changes to be visible?
3450
3451 Unix
3452
3453 =item How do I close a process's filehandle without waiting for it to
3454 complete?
3455
3456 =item How do I fork a daemon process?
3457
3458 =item How do I find out if I'm running interactively or not?
3459
3460 =item How do I timeout a slow event?
3461
3462 =item How do I set CPU limits?
3463
3464 =item How do I avoid zombies on a Unix system?
3465
3466 =item How do I use an SQL database?
3467
3468 =item How do I make a system() exit on control-C?
3469
3470 =item How do I open a file without blocking?
3471
3472 =item How do I install a module from CPAN?
3473
3474 =item What's the difference between require and use?
3475
3476 =item How do I keep my own module/library directory?
3477
3478 =item How do I add the directory my program lives in to the module/library
3479 search path?
3480
3481 =item How do I add a directory to my include path at runtime?
3482
3483 =item What is socket.ph and where do I get it?
3484
3485 =back
3486
3487 =item AUTHOR AND COPYRIGHT
3488
3489 =back
3490
3491 =head2 perlfaq9 - Networking ($Revision: 1.5 $, $Date: 2001/11/09 08:06:04
3492 $)
3493
3494 =over 4
3495
3496 =item DESCRIPTION
3497
3498 =over 4
3499
3500 =item What is the correct form of response from a CGI script?
3501
3502 =item My CGI script runs from the command line but not the browser.  (500
3503 Server Error)
3504
3505 =item How can I get better error messages from a CGI program?
3506
3507 =item How do I remove HTML from a string?
3508
3509 =item How do I extract URLs?
3510
3511 =item How do I download a file from the user's machine?  How do I open a
3512 file on another machine?
3513
3514 =item How do I make a pop-up menu in HTML?
3515
3516 =item How do I fetch an HTML file?
3517
3518 =item How do I automate an HTML form submission?
3519
3520 =item How do I decode or create those %-encodings on the web?
3521
3522 =item How do I redirect to another page?
3523
3524 =item How do I put a password on my web pages?
3525
3526 =item How do I edit my .htpasswd and .htgroup files with Perl?
3527
3528 =item How do I make sure users can't enter values into a form that cause my
3529 CGI script to do bad things?
3530
3531 =item How do I parse a mail header?
3532
3533 =item How do I decode a CGI form?
3534
3535 =item How do I check a valid mail address?
3536
3537 =item How do I decode a MIME/BASE64 string?
3538
3539 =item How do I return the user's mail address?
3540
3541 =item How do I send mail?
3542
3543 =item How do I use MIME to make an attachment to a mail message?
3544
3545 =item How do I read mail?
3546
3547 =item How do I find out my hostname/domainname/IP address?
3548
3549 =item How do I fetch a news article or the active newsgroups?
3550
3551 =item How do I fetch/put an FTP file?
3552
3553 =item How can I do RPC in Perl?
3554
3555 =back
3556
3557 =item AUTHOR AND COPYRIGHT
3558
3559 =back
3560
3561 =head2 perlcompile - Introduction to the Perl Compiler-Translator 
3562
3563 =over 4
3564
3565 =item DESCRIPTION
3566
3567 =over 4
3568
3569 =item Layout
3570
3571 B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
3572
3573 =back
3574
3575 =item Using The Back Ends
3576
3577 =over 4
3578
3579 =item The Cross Referencing Back End
3580
3581 i, &, s, r
3582
3583 =item The Decompiling Back End
3584
3585 =item The Lint Back End
3586
3587 =item The Simple C Back End
3588
3589 =item The Bytecode Back End
3590
3591 =item The Optimized C Back End
3592
3593 B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC,
3594 B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj,
3595 B::Stash, B::Terse, B::Xref
3596
3597 =back
3598
3599 =item KNOWN PROBLEMS
3600
3601 =item AUTHOR
3602
3603 =back
3604
3605 =head2 perlembed - how to embed perl in your C program
3606
3607 =over 4
3608
3609 =item DESCRIPTION
3610
3611 =over 4
3612
3613 =item PREAMBLE
3614
3615 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
3616 Perl?>, B<Use C from C?>, B<Use Perl from C?>
3617
3618 =item ROADMAP
3619
3620 =item Compiling your C program
3621
3622 =item Adding a Perl interpreter to your C program
3623
3624 =item Calling a Perl subroutine from your C program
3625
3626 =item Evaluating a Perl statement from your C program
3627
3628 =item Performing Perl pattern matches and substitutions from your C program
3629
3630 =item Fiddling with the Perl stack from your C program
3631
3632 =item Maintaining a persistent interpreter
3633
3634 =item Execution of END blocks
3635
3636 =item Maintaining multiple interpreter instances
3637
3638 =item Using Perl modules, which themselves use C libraries, from your C
3639 program
3640
3641 =back
3642
3643 =item Embedding Perl under Win32
3644
3645 =item MORAL
3646
3647 =item AUTHOR
3648
3649 =item COPYRIGHT
3650
3651 =back
3652
3653 =head2 perldebguts - Guts of Perl debugging 
3654
3655 =over 4
3656
3657 =item DESCRIPTION
3658
3659 =item Debugger Internals
3660
3661 =over 4
3662
3663 =item Writing Your Own Debugger
3664
3665 =back
3666
3667 =item Frame Listing Output Examples
3668
3669 =item Debugging regular expressions
3670
3671 =over 4
3672
3673 =item Compile-time output
3674
3675 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
3676 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
3677 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
3678 C<anchored(TYPE)>
3679
3680 =item Types of nodes
3681
3682 =item Run-time output
3683
3684 =back
3685
3686 =item Debugging Perl memory usage
3687
3688 =over 4
3689
3690 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
3691
3692 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
3693 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
3694 6144>
3695
3696 =item Example of using B<-DL> switch
3697
3698 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
3699
3700 =item B<-DL> details
3701
3702 C<!!!>, C<!!>, C<!>
3703
3704 =item Limitations of B<-DL> statistics
3705
3706 =back
3707
3708 =item SEE ALSO
3709
3710 =back
3711
3712 =head2 perlxstut, perlXStut - Tutorial for writing XSUBs
3713
3714 =over 4
3715
3716 =item DESCRIPTION
3717
3718 =item SPECIAL NOTES
3719
3720 =over 4
3721
3722 =item make
3723
3724 =item Version caveat
3725
3726 =item Dynamic Loading versus Static Loading
3727
3728 =back
3729
3730 =item TUTORIAL
3731
3732 =over 4
3733
3734 =item EXAMPLE 1
3735
3736 =item EXAMPLE 2
3737
3738 =item What has gone on?
3739
3740 =item Writing good test scripts
3741
3742 =item EXAMPLE 3
3743
3744 =item What's new here?
3745
3746 =item Input and Output Parameters
3747
3748 =item The XSUBPP Program
3749
3750 =item The TYPEMAP file
3751
3752 =item Warning about Output Arguments
3753
3754 =item EXAMPLE 4
3755
3756 =item What has happened here?
3757
3758 =item Anatomy of .xs file
3759
3760 =item Getting the fat out of XSUBs
3761
3762 =item More about XSUB arguments
3763
3764 =item The Argument Stack
3765
3766 =item Extending your Extension
3767
3768 =item Documenting your Extension
3769
3770 =item Installing your Extension
3771
3772 =item EXAMPLE 5
3773
3774 =item New Things in this Example
3775
3776 =item EXAMPLE 6
3777
3778 =item New Things in this Example
3779
3780 =item EXAMPLE 7 (Coming Soon)
3781
3782 =item EXAMPLE 8 (Coming Soon)
3783
3784 =item EXAMPLE 9 (Coming Soon)
3785
3786 =item Troubleshooting these Examples
3787
3788 =back
3789
3790 =item See also
3791
3792 =item Author
3793
3794 =over 4
3795
3796 =item Last Changed
3797
3798 =back
3799
3800 =back
3801
3802 =head2 perlxs - XS language reference manual
3803
3804 =over 4
3805
3806 =item DESCRIPTION
3807
3808 =over 4
3809
3810 =item Introduction
3811
3812 =item On The Road
3813
3814 =item The Anatomy of an XSUB
3815
3816 =item The Argument Stack
3817
3818 =item The RETVAL Variable
3819
3820 =item The MODULE Keyword
3821
3822 =item The PACKAGE Keyword
3823
3824 =item The PREFIX Keyword
3825
3826 =item The OUTPUT: Keyword
3827
3828 =item The NO_OUTPUT Keyword
3829
3830 =item The CODE: Keyword
3831
3832 =item The INIT: Keyword
3833
3834 =item The NO_INIT Keyword
3835
3836 =item Initializing Function Parameters
3837
3838 =item Default Parameter Values
3839
3840 =item The PREINIT: Keyword
3841
3842 =item The SCOPE: Keyword
3843
3844 =item The INPUT: Keyword
3845
3846 =item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords
3847
3848 =item Variable-length Parameter Lists
3849
3850 =item The C_ARGS: Keyword
3851
3852 =item The PPCODE: Keyword
3853
3854 =item Returning Undef And Empty Lists
3855
3856 =item The REQUIRE: Keyword
3857
3858 =item The CLEANUP: Keyword
3859
3860 =item The POSTCALL: Keyword
3861
3862 =item The BOOT: Keyword
3863
3864 =item The VERSIONCHECK: Keyword
3865
3866 =item The PROTOTYPES: Keyword
3867
3868 =item The PROTOTYPE: Keyword
3869
3870 =item The ALIAS: Keyword
3871
3872 =item The INTERFACE: Keyword
3873
3874 =item The INTERFACE_MACRO: Keyword
3875
3876 =item The INCLUDE: Keyword
3877
3878 =item The CASE: Keyword
3879
3880 =item The & Unary Operator
3881
3882 =item Inserting POD, Comments and C Preprocessor Directives
3883
3884 =item Using XS With C++
3885
3886 =item Interface Strategy
3887
3888 =item Perl Objects And C Structures
3889
3890 =item The Typemap
3891
3892 =item Safely Storing Static Data in XS
3893
3894 MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT
3895
3896 =back
3897
3898 =item EXAMPLES
3899
3900 =item XS VERSION
3901
3902 =item AUTHOR
3903
3904 =back
3905
3906 =head2 perlclib - Internal replacements for standard C library functions
3907
3908 =over 4
3909
3910 =item DESCRIPTION
3911
3912 =over 4
3913
3914 =item Conventions
3915
3916 C<t>, C<p>, C<n>, C<s>
3917
3918 =item File Operations
3919
3920 =item File Input and Output
3921
3922 =item File Positioning
3923
3924 =item Memory Management and String Handling
3925
3926 =item Character Class Tests
3927
3928 =item F<stdlib.h> functions
3929
3930 =item Miscellaneous functions
3931
3932 =back
3933
3934 =item SEE ALSO
3935
3936 =back
3937
3938 =head2 perlguts - Introduction to the Perl API
3939
3940 =over 4
3941
3942 =item DESCRIPTION
3943
3944 =item Variables
3945
3946 =over 4
3947
3948 =item Datatypes
3949
3950 =item What is an "IV"?
3951
3952 =item Working with SVs
3953
3954 =item Offsets
3955
3956 =item What's Really Stored in an SV?
3957
3958 =item Working with AVs
3959
3960 =item Working with HVs
3961
3962 =item Hash API Extensions
3963
3964 =item References
3965
3966 =item Blessed References and Class Objects
3967
3968 =item Creating New Variables
3969
3970 =item Reference Counts and Mortality
3971
3972 =item Stashes and Globs
3973
3974 =item Double-Typed SVs
3975
3976 =item Magic Variables
3977
3978 =item Assigning Magic
3979
3980 =item Magic Virtual Tables
3981
3982 =item Finding Magic
3983
3984 =item Understanding the Magic of Tied Hashes and Arrays
3985
3986 =item Localizing changes
3987
3988 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
3989 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEMORTALIZESV(SV
3990 *sv)>, C<SAVEFREEOP(OP *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>,
3991 C<SAVEDELETE(HV *hv, char *key, I32 length)>,
3992 C<SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)>,
3993 C<SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)>, C<SAVESTACK_POS()>, C<SV*
3994 save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>,
3995 C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>,
3996 C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void
3997 save_hptr(HV **hptr)>
3998
3999 =back
4000
4001 =item Subroutines
4002
4003 =over 4
4004
4005 =item XSUBs and the Argument Stack
4006
4007 =item Calling Perl Routines from within C Programs
4008
4009 =item Memory Allocation
4010
4011 =item PerlIO
4012
4013 =item Putting a C value on Perl stack
4014
4015 =item Scratchpads
4016
4017 =item Scratchpads and recursion
4018
4019 =back
4020
4021 =item Compiled code
4022
4023 =over 4
4024
4025 =item Code tree
4026
4027 =item Examining the tree
4028
4029 =item Compile pass 1: check routines
4030
4031 =item Compile pass 1a: constant folding
4032
4033 =item Compile pass 2: context propagation
4034
4035 =item Compile pass 3: peephole optimization
4036
4037 =item Pluggable runops
4038
4039 =back
4040
4041 =item Examining internal data structures with the C<dump> functions
4042
4043 =item How multiple interpreters and concurrency are supported
4044
4045 =over 4
4046
4047 =item Background and PERL_IMPLICIT_CONTEXT
4048
4049 =item So what happened to dTHR?
4050
4051 =item How do I use all this in extensions?
4052
4053 =item Should I do anything special if I call perl from multiple threads?
4054
4055 =item Future Plans and PERL_IMPLICIT_SYS
4056
4057 =back
4058
4059 =item Internal Functions
4060
4061 A, p, d, s, n, r, f, M, o, j, x
4062
4063 =over 4
4064
4065 =item Formatted Printing of IVs, UVs, and NVs
4066
4067 =item Pointer-To-Integer and Integer-To-Pointer
4068
4069 =item Source Documentation
4070
4071 =back
4072
4073 =item Unicode Support
4074
4075 =over 4
4076
4077 =item What B<is> Unicode, anyway?
4078
4079 =item How can I recognise a UTF8 string?
4080
4081 =item How does UTF8 represent Unicode characters?
4082
4083 =item How does Perl store UTF8 strings?
4084
4085 =item How do I convert a string to UTF8?
4086
4087 =item Is there anything else I need to know?
4088
4089 =back
4090
4091 =item Custom Operators
4092
4093 =item AUTHORS
4094
4095 =item SEE ALSO
4096
4097 =back
4098
4099 =head2 perlcall - Perl calling conventions from C
4100
4101 =over 4
4102
4103 =item DESCRIPTION
4104
4105 An Error Handler, An Event Driven Program
4106
4107 =item THE CALL_ FUNCTIONS
4108
4109 call_sv, call_pv, call_method, call_argv
4110
4111 =item FLAG VALUES
4112
4113 =over 4
4114
4115 =item  G_VOID
4116
4117 =item  G_SCALAR
4118
4119 =item G_ARRAY
4120
4121 =item G_DISCARD
4122
4123 =item G_NOARGS
4124
4125 =item G_EVAL
4126
4127 =item G_KEEPERR
4128
4129 =item Determining the Context
4130
4131 =back
4132
4133 =item KNOWN PROBLEMS
4134
4135 =item EXAMPLES
4136
4137 =over 4
4138
4139 =item No Parameters, Nothing returned
4140
4141 =item Passing Parameters
4142
4143 =item Returning a Scalar
4144
4145 =item Returning a list of values
4146
4147 =item Returning a list in a scalar context
4148
4149 =item Returning Data from Perl via the parameter list
4150
4151 =item Using G_EVAL
4152
4153 =item Using G_KEEPERR
4154
4155 =item Using call_sv
4156
4157 =item Using call_argv
4158
4159 =item Using call_method
4160
4161 =item Using GIMME_V
4162
4163 =item Using Perl to dispose of temporaries
4164
4165 =item Strategies for storing Callback Context Information
4166
4167 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
4168 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
4169 callback
4170
4171 =item Alternate Stack Manipulation
4172
4173 =item Creating and calling an anonymous subroutine in C
4174
4175 =back
4176
4177 =item SEE ALSO
4178
4179 =item AUTHOR
4180
4181 =item DATE
4182
4183 =back
4184
4185 =head2 perlutil - utilities packaged with the Perl distribution
4186
4187 =over 4
4188
4189 =item DESCRIPTION
4190
4191 =over 4
4192
4193 =item DOCUMENTATION
4194
4195 L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>,
4196 L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>,
4197 L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>,
4198 L<roffitall|roffitall>
4199
4200 =item CONVERTORS
4201
4202 L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
4203
4204 =item Administration
4205
4206 L<libnetcfg|libnetcfg>
4207
4208 =item Development
4209
4210 L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
4211 L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
4212
4213 =item SEE ALSO
4214
4215 =back
4216
4217 =back
4218
4219 =head2 perlfilter - Source Filters
4220
4221 =over 4
4222
4223 =item DESCRIPTION
4224
4225 =item CONCEPTS
4226
4227 =item USING FILTERS
4228
4229 =item WRITING A SOURCE FILTER
4230
4231 =item WRITING A SOURCE FILTER IN C
4232
4233 B<Decryption Filters>
4234
4235 =item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
4236
4237 =item WRITING A SOURCE FILTER IN PERL
4238
4239 =item USING CONTEXT: THE DEBUG FILTER
4240
4241 =item CONCLUSION
4242
4243 =item REQUIREMENTS
4244
4245 =item AUTHOR
4246
4247 =item Copyrights
4248
4249 =back
4250
4251 =head2 perldbmfilter - Perl DBM Filters
4252
4253 =over 4
4254
4255 =item SYNOPSIS
4256
4257 =item DESCRIPTION
4258
4259 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
4260 B<filter_fetch_value>
4261
4262 =over 4
4263
4264 =item The Filter
4265
4266 =item An Example -- the NULL termination problem.
4267
4268 =item Another Example -- Key is a C int.
4269
4270 =back
4271
4272 =item SEE ALSO
4273
4274 =item AUTHOR
4275
4276 =back
4277
4278 =head2 perlapi - autogenerated documentation for the perl public API
4279
4280 =over 4
4281
4282 =item DESCRIPTION
4283
4284 AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill,
4285 av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift,
4286 ax, bytes_from_utf8, bytes_to_utf8, call_argv, call_method, call_pv,
4287 call_sv, CLASS, Copy, croak, CvSTASH, cv_const_sv, dAX, dITEMS, dMARK,
4288 dORIGMARK, dSP, dXSARGS, dXSI32, ENTER, eval_pv, eval_sv, EXTEND,
4289 fbm_compile, fbm_instr, FREETMPS, getcwd_sv, get_av, get_cv, get_hv,
4290 get_sv, GIMME, GIMME_V, grok_bin, grok_hex, grok_number,
4291 grok_numeric_radix, grok_oct, GvSV, gv_fetchmeth, gv_fetchmethod,
4292 gv_fetchmethod_autoload, gv_stashpv, gv_stashsv, G_ARRAY, G_DISCARD,
4293 G_EVAL, G_NOARGS, G_SCALAR, G_VOID, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV,
4294 HeSVKEY, HeSVKEY_force, HeSVKEY_set, HeVAL, HvNAME, hv_clear, hv_delete,
4295 hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent,
4296 hv_iterinit, hv_iterkey, hv_iterkeysv, hv_iternext, hv_iternextsv,
4297 hv_iterval, hv_magic, hv_store, hv_store_ent, hv_undef, ibcmp_utf8,
4298 isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, is_utf8_char,
4299 is_utf8_string, items, ix, LEAVE, load_module, looks_like_number, MARK,
4300 mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set,
4301 Move, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, newSV,
4302 NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVpvn_share,
4303 newSVrv, newSVsv, newSVuv, newXS, newXSproto, Newz, new_vstring, Nullav,
4304 Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc, perl_clone,
4305 perl_construct, perl_destruct, perl_free, perl_parse, perl_run,
4306 PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes, POPi, POPl, POPn,
4307 POPp, POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu,
4308 PUTBACK, pv_uni_display, Renew, Renewc, require_pv, RETVAL, Safefree,
4309 savepv, savepvn, SAVETMPS, scan_bin, scan_hex, scan_oct, sharedsv_find,
4310 sharedsv_init, sharedsv_lock, sharedsv_new, sharedsv_thrcnt_dec,
4311 sharedsv_thrcnt_inc, sharedsv_unlock, sortsv, SP, SPAGAIN, ST, strEQ,
4312 strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, StructCopy, SvCUR,
4313 SvCUR_set, SvEND, SvGETMAGIC, SvGROW, SvIOK, SvIOKp, SvIOK_notUV,
4314 SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIV, SvIVx,
4315 SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off,
4316 SvNOK_on, SvNOK_only, SvNV, SvNVx, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp,
4317 SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only_UTF8, SvPV, SvPVbyte,
4318 SvPVbytex, SvPVbytex_force, SvPVbyte_force, SvPVbyte_nolen, SvPVutf8,
4319 SvPVutf8x, SvPVutf8x_force, SvPVutf8_force, SvPVutf8_nolen, SvPVX, SvPVx,
4320 SvPV_force, SvPV_force_nomg, SvPV_nolen, SvREFCNT, SvREFCNT_dec,
4321 SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSETMAGIC, SvSetMagicSV,
4322 SvSetMagicSV_nosteal, SvSetSV, SvSetSV_nosteal, SvSTASH, SvTAINT,
4323 SvTAINTED, SvTAINTED_off, SvTAINTED_on, SvTRUE, svtype, SvTYPE, SVt_IV,
4324 SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SvUOK, SvUPGRADE,
4325 SvUTF8, SvUTF8_off, SvUTF8_on, SvUV, SvUVx, SvUVX, sv_2bool, sv_2cv,
4326 sv_2io, sv_2iv, sv_2mortal, sv_2nv, sv_2pvbyte, sv_2pvbyte_nolen,
4327 sv_2pvutf8, sv_2pvutf8_nolen, sv_2pv_flags, sv_2pv_nolen, sv_2uv,
4328 sv_backoff, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn,
4329 sv_catpvn_flags, sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_flags,
4330 sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_collxfrm, sv_dec,
4331 sv_derived_from, sv_eq, sv_force_normal, sv_force_normal_flags, sv_free,
4332 sv_gets, sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_iv, sv_len,
4333 sv_len_utf8, sv_magic, sv_mortalcopy, sv_newmortal, sv_newref, sv_nv,
4334 sv_pos_b2u, sv_pos_u2b, sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force,
4335 sv_pvn, sv_pvn_force, sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n,
4336 sv_pvutf8n_force, sv_recode_to_utf8, sv_reftype, sv_replace,
4337 sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, sv_setnv,
4338 sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv, sv_setpviv_mg,
4339 sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, sv_setref_nv,
4340 sv_setref_pv, sv_setref_pvn, sv_setref_uv, sv_setsv, sv_setsv_flags,
4341 sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_taint, sv_tainted, sv_true,
4342 sv_uni_display, sv_unmagic, sv_unref, sv_unref_flags, sv_untaint,
4343 sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_utf8_decode, sv_utf8_downgrade,
4344 sv_utf8_encode, sv_utf8_upgrade, sv_utf8_upgrade_flags, sv_uv, sv_vcatpvfn,
4345 sv_vsetpvfn, THIS, toLOWER, toUPPER, to_utf8_case, utf8n_to_uvchr,
4346 utf8n_to_uvuni, utf8_distance, utf8_hop, utf8_length, utf8_to_bytes,
4347 utf8_to_uvchr, utf8_to_uvuni, uvchr_to_utf8, uvuni_to_utf8, warn, XPUSHi,
4348 XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV,
4349 XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES,
4350 XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION,
4351 XS_VERSION_BOOTCHECK, Zero
4352
4353 =item AUTHORS
4354
4355 =item SEE ALSO
4356
4357 =back
4358
4359 =head2 perlintern - autogenerated documentation of purely B<internal>
4360                  Perl functions
4361
4362 =over 4
4363
4364 =item DESCRIPTION
4365
4366 djSP, is_gv_magical, LVRET, PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn,
4367 PL_last_in_gv, PL_ofs_sv, PL_rs, report_uninit, start_glob, sv_add_arena,
4368 sv_clean_all, sv_clean_objs, sv_free_arenas
4369
4370 =item AUTHORS
4371
4372 =item SEE ALSO
4373
4374 =back
4375
4376 =head2 perliol - C API for Perl's implementation of IO in Layers.
4377
4378 =over 4
4379
4380 =item SYNOPSIS
4381
4382 =item DESCRIPTION
4383
4384 =over 4
4385
4386 =item History and Background
4387
4388 =item Layers vs Disciplines
4389
4390 =item Data Structures
4391
4392 =item Functions and Attributes
4393
4394 =item Per-instance Data
4395
4396 =item Layers in action.
4397
4398 =item Per-instance flag bits
4399
4400 PERLIO_F_EOF, PERLIO_F_CANWRITE,  PERLIO_F_CANREAD, PERLIO_F_ERROR,
4401 PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8,
4402 PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF,
4403 PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS
4404
4405 =item Methods in Detail
4406
4407  IV             (*Pushed)(PerlIO *f,const char *mode, SV *arg);,  IV       
4408     (*Popped)(PerlIO *f);,  PerlIO *        (*Open)(...);, SV *            
4409 (*Getarg)(PerlIO *f);, IV       (*Fileno)(PerlIO *f);,  SSize_t
4410 (*Read)(PerlIO *f, void *vbuf, Size_t count);,  SSize_t (*Unread)(PerlIO
4411 *f, const void *vbuf, Size_t count);,  SSize_t (*Write)(PerlIO *f, const
4412 void *vbuf, Size_t count);,  IV               (*Seek)(PerlIO *f, Off_t
4413 offset, int whence);,  Off_t           (*Tell)(PerlIO *f);,  IV            
4414    (*Close)(PerlIO *f);,  IV               (*Flush)(PerlIO *f);,  IV       
4415        (*Fill)(PerlIO *f);,  IV                (*Eof)(PerlIO *f);,  IV     
4416    (*Error)(PerlIO *f);,  void             (*Clearerr)(PerlIO *f);,  void  
4417        (*Setlinebuf)(PerlIO *f);,  STDCHAR *   (*Get_base)(PerlIO *f);, 
4418 Size_t                (*Get_bufsiz)(PerlIO *f);,  STDCHAR *  
4419 (*Get_ptr)(PerlIO *f);,  SSize_t        (*Get_cnt)(PerlIO *f);,  void      
4420     (*Set_ptrcnt)(PerlIO *f,STDCHAR *ptr,SSize_t cnt);
4421
4422 =item Core Layers
4423
4424 "unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8"
4425
4426 =item Extension Layers
4427
4428 ":encoding", ":Scalar", ":Object" or ":Perl"
4429
4430 =back
4431
4432 =back
4433
4434 =head2 perlapio - perl's IO abstraction interface.
4435
4436 =over 4
4437
4438 =item SYNOPSIS
4439
4440 =item DESCRIPTION
4441
4442 1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B<PerlIO_stdin()>,
4443 B<PerlIO_stdout()>, B<PerlIO_stderr()>, B<PerlIO_open(path, mode)>,
4444 B<PerlIO_fdopen(fd,mode)>, B<PerlIO_reopen(path,mode,f)>,
4445 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
4446 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
4447 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
4448 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
4449 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
4450 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_seek(f,offset,whence)>,
4451 B<PerlIO_tell(f)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
4452 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)>
4453
4454 =over 4
4455
4456 =item Co-existence with stdio
4457
4458 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
4459 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>
4460
4461 =item "Fast gets" Functions
4462
4463 B<PerlIO_fast_gets(f)>, B<PerlIO_has_cntptr(f)>, B<PerlIO_get_cnt(f)>,
4464 B<PerlIO_get_ptr(f)>, B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_canset_cnt(f)>,
4465 B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>, B<PerlIO_get_base(f)>,
4466 B<PerlIO_get_bufsiz(f)>
4467
4468 =item Other Functions
4469
4470 PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers),
4471 'E<lt>' read, 'E<gt>' write, '+' read/write, PerlIO_debug(fmt,...)
4472
4473 =back
4474
4475 =back
4476
4477 =head2 perltodo - Perl TO-DO List
4478
4479 =over 4
4480
4481 =item DESCRIPTION
4482
4483 =item To do during 5.6.x
4484
4485 =over 4
4486
4487 =item Support for I/O disciplines
4488
4489 =item Autoload bytes.pm
4490
4491 =item Make "\u{XXXX}" et al work
4492
4493 =item Create a char *sv_pvprintify(sv, STRLEN *lenp, UV flags)
4494
4495 =item Overloadable regex assertions
4496
4497 =item Unicode
4498
4499 =item use Thread for iThreads
4500
4501 =item make perl_clone optionally clone ops
4502
4503 =item Work out exit/die semantics for threads
4504
4505 =item Typed lexicals for compiler
4506
4507 =item Compiler workarounds for Win32
4508
4509 =item AUTOLOADing in the compiler
4510
4511 =item Fixing comppadlist when compiling
4512
4513 =item Cleaning up exported namespace
4514
4515 =item Complete signal handling
4516
4517 =item Out-of-source builds
4518
4519 =item POSIX realtime support
4520
4521 =item UNIX98 support
4522
4523 =item IPv6 Support
4524
4525 =item Long double conversion
4526
4527 =item Locales
4528
4529 =item Thread-safe regexes
4530
4531 =item Arithmetic on non-Arabic numerals
4532
4533 =item POSIX Unicode character classes
4534
4535 =item Factoring out common suffices/prefices in regexps (trie optimization)
4536
4537 =item Security audit shipped utilities
4538
4539 =item Custom opcodes
4540
4541 =item DLL Versioning
4542
4543 =item Introduce @( and @)
4544
4545 =item Floating point handling
4546
4547 =item IV/UV preservation
4548
4549 =item Replace pod2html with something using Pod::Parser
4550
4551 =item Automate module testing on CPAN
4552
4553 =item sendmsg and recvmsg
4554
4555 =item Rewrite perlre documentation
4556
4557 =item Convert example code to IO::Handle filehandles
4558
4559 =item Document Win32 choices
4560
4561 =item Check new modules
4562
4563 =item Make roffitall find pods and libs itself
4564
4565 =back
4566
4567 =item To do at some point
4568
4569 =over 4
4570
4571 =item Remove regular expression recursion
4572
4573 =item Memory leaks after failed eval
4574
4575 =item pack "(stuff)*"
4576
4577 =item bitfields in pack
4578
4579 =item Cross compilation
4580
4581 =item Perl preprocessor / macros
4582
4583 =item Perl lexer in Perl
4584
4585 =item Using POSIX calls internally
4586
4587 =item -i rename file when changed
4588
4589 =item All ARGV input should act like E<lt>E<gt>
4590
4591 =item Support for rerunning debugger
4592
4593 =item Test Suite for the Debugger
4594
4595 =item my sub foo { }
4596
4597 =item One-pass global destruction
4598
4599 =item Rewrite regexp parser
4600
4601 =item Cache recently used regexps
4602
4603 =item Re-entrant functions
4604
4605 =item Cross-compilation support
4606
4607 =item Bit-shifting bitvectors
4608
4609 =item debugger pragma
4610
4611 =item use less pragma
4612
4613 =item switch structures
4614
4615 =item Cache eval tree
4616
4617 =item rcatmaybe
4618
4619 =item Shrink opcode tables
4620
4621 =item Optimize away @_
4622
4623 =item Prototypes versus indirect objects
4624
4625 =item Install HTML
4626
4627 =item Prototype method calls
4628
4629 =item Return context prototype declarations
4630
4631 =item magic_setisa
4632
4633 =item Garbage collection
4634
4635 =item IO tutorial
4636
4637 =item pack/unpack tutorial
4638
4639 =item Rewrite perldoc
4640
4641 =item Install .3p manpages
4642
4643 =item Unicode tutorial
4644
4645 =item Update POSIX.pm for 1003.1-2
4646
4647 =item Retargetable installation
4648
4649 =item POSIX emulation on non-POSIX systems
4650
4651 =item Rename Win32 headers
4652
4653 =item Finish off lvalue functions
4654
4655 =item Update sprintf documentation
4656
4657 =item Use fchown/fchmod internally
4658
4659 =item Make v-strings overloaded objects
4660
4661 =back
4662
4663 =item Vague ideas
4664
4665 =over 4
4666
4667 =item ref() in list context
4668
4669 =item Make tr/// return histogram of characters in list context
4670
4671 =item Compile to real threaded code
4672
4673 =item Structured types
4674
4675 =item Modifiable $1 et al.
4676
4677 =item Procedural interfaces for IO::*, etc.
4678
4679 =item RPC modules
4680
4681 =item Attach/detach debugger from running program
4682
4683 =item Alternative RE syntax module
4684
4685 =item GUI::Native
4686
4687 =item foreach(reverse ...)
4688
4689 =item Constant function cache
4690
4691 =item Approximate regular expression matching
4692
4693 =back
4694
4695 =item Ongoing
4696
4697 =over 4
4698
4699 =item Update guts documentation
4700
4701 =item Add more tests
4702
4703 =item Update auxiliary tools
4704
4705 =back
4706
4707 =item Recently done things
4708
4709 =over 4
4710
4711 =item Safe signal handling
4712
4713 =item Tie Modules
4714
4715 =item gettimeofday
4716
4717 =item setitimer and getimiter
4718
4719 =item Testing __DIE__ hook
4720
4721 =item CPP equivalent in Perl
4722
4723 =item Explicit switch statements
4724
4725 =item autocroak
4726
4727 =item UTF/EBCDIC
4728
4729 =item UTF Regexes
4730
4731 =item perlcc to produce executable
4732
4733 =item END blocks saved in compiled output
4734
4735 =item Secure temporary file module
4736
4737 =item Integrate Time::HiRes
4738
4739 =item Turn Cwd into XS
4740
4741 =item Mmap for input
4742
4743 =item Byte to/from UTF8 and UTF8 to/from local conversion
4744
4745 =item Add sockatmark support
4746
4747 =item Mailing list archives
4748
4749 =item Bug tracking
4750
4751 =item Integrate MacPerl
4752
4753 =item Web "nerve center" for Perl
4754
4755 =item Regular expression tutorial
4756
4757 =item Debugging Tutorial
4758
4759 =item Integrate new modules
4760
4761 =item Integrate profiler
4762
4763 =item Y2K error detection
4764
4765 =item Regular expression debugger
4766
4767 =item POD checker
4768
4769 =item "Dynamic" lexicals
4770
4771 =item Cache precompiled modules
4772
4773 =back
4774
4775 =item Deprecated Wishes
4776
4777 =over 4
4778
4779 =item Loop control on do{}
4780
4781 =item Lexically scoped typeglobs
4782
4783 =item format BOTTOM
4784
4785 =item report HANDLE
4786
4787 =item Generalised want()/caller())
4788
4789 =item Named prototypes
4790
4791 =item Built-in globbing
4792
4793 =item Regression tests for suidperl
4794
4795 =item Cached hash values
4796
4797 =item Add compression modules
4798
4799 =item Reorganise documentation into tutorials/references
4800
4801 =item Remove distinction between functions and operators
4802
4803 =item Make XS easier to use
4804
4805 =item Make embedding easier to use
4806
4807 =item man for perl
4808
4809 =item my $Package::variable
4810
4811 =item "or" tests defined, not truth
4812
4813 =item "class"-based lexicals
4814
4815 =item byteperl
4816
4817 =item Lazy evaluation / tail recursion removal
4818
4819 =item Make "use utf8" the default
4820
4821 =item Unicode collation and normalization
4822
4823 =item Create debugging macros
4824
4825 =item truncate to the people
4826
4827 =back
4828
4829 =back
4830
4831 =head2 perlhack - How to hack at the Perl internals
4832
4833 =over 4
4834
4835 =item DESCRIPTION
4836
4837 Does concept match the general goals of Perl?, Where is the
4838 implementation?, Backwards compatibility, Could it be a module instead?, Is
4839 the feature generic enough?, Does it potentially introduce new bugs?, Does
4840 it preclude other desirable features?, Is the implementation robust?, Is
4841 the implementation generic enough to be portable?, Is the implementation
4842 tested?, Is there enough documentation?, Is there another way to do it?,
4843 Does it create too much work?, Patches speak louder than words
4844
4845 =over 4
4846
4847 =item Keeping in sync
4848
4849 rsync'ing the source tree, Using rsync over the LAN, Using pushing over the
4850 NFS, rsync'ing the patches
4851
4852 =item Why rsync the source tree
4853
4854 It's easier to rsync the source tree, It's more recent, It's more reliable
4855
4856 =item Why rsync the patches
4857
4858 It's easier to rsync the patches, It's a good reference, Finding a start
4859 point, Finding how to fix a bug, Finding the source of misbehaviour
4860
4861 =item Perlbug remote interface
4862
4863 1 http://bugs.perl.org, 2 bugdb@perl.org, 3
4864 commands_and_bugdids@bugs.perl.org, notes, patches, tests
4865
4866 =item Submitting patches
4867
4868 L<perlguts>, L<perlxstut> and L<perlxs>, L<perlapi>,
4869 F<Porting/pumpkin.pod>, The perl5-porters FAQ
4870
4871 =item Finding Your Way Around
4872
4873 Core modules, Tests, Documentation, Configure, Interpreter
4874
4875 =item Elements of the interpreter
4876
4877 Startup, Parsing, Optimization, Running
4878
4879 =item Internal Variable Types
4880
4881 =item Op Trees
4882
4883 =item Stacks
4884
4885 Argument stack, Mark stack, Save stack
4886
4887 =item Millions of Macros
4888
4889 =item Poking at Perl
4890
4891 =item Using a source-level debugger
4892
4893 run [args], break function_name, break source.c:xxx, step, next, continue,
4894 finish, 'enter', print
4895
4896 =item Dumping Perl Data Structures
4897
4898 =item Patching
4899
4900 =item Patching a core module
4901
4902 =item Adding a new function to the core
4903
4904 =item Writing a test
4905
4906 F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/op/>,
4907 F<t/pod/>, F<t/run/>, t/base t/comp, t/cmd t/run t/io t/op, t/lib ext lib
4908
4909 =back
4910
4911 =item EXTERNAL TOOLS FOR DEBUGGING PERL
4912
4913 =over 4
4914
4915 =item Rational Software's Purify
4916
4917 =item Purify on Unix
4918
4919 -Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity
4920
4921 =item Purify on NT
4922
4923 DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
4924
4925 =item Compaq's/Digital's Third Degree
4926
4927 =item PERL_DESTRUCT_LEVEL
4928
4929 =item Profiling
4930
4931 =item Gprof Profiling
4932
4933 -a, -b, -e routine, -f routine, -s, -z
4934
4935 =item GCC gcov Profiling
4936
4937 =item Pixie Profiling
4938
4939 -h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage,
4940 -z[ero]
4941
4942 =item CONCLUSION
4943
4944 I<The Road goes ever on and on, down from the door where it began.>
4945
4946 =back
4947
4948 =item AUTHOR
4949
4950 =back
4951
4952 =head2 perlhist - the Perl history records
4953
4954 =over 4
4955
4956 =item DESCRIPTION
4957
4958 =item INTRODUCTION
4959
4960 =item THE KEEPERS OF THE PUMPKIN
4961
4962 =over 4
4963
4964 =item PUMPKIN?
4965
4966 =back
4967
4968 =item THE RECORDS
4969
4970 =over 4
4971
4972 =item SELECTED RELEASE SIZES
4973
4974 =item SELECTED PATCH SIZES
4975
4976 =back
4977
4978 =item THE KEEPERS OF THE RECORDS
4979
4980 =back
4981
4982 =head2 perldelta - what is new for perl v5.8.0
4983
4984 =over 4
4985
4986 =item DESCRIPTION
4987
4988 =item Highlights In 5.8.0
4989
4990 =item Incompatible Changes
4991
4992 =over 4
4993
4994 =item 64-bit platforms and malloc
4995
4996 =item AIX Dynaloading
4997
4998 =item Attributes for C<my> variables now handled at run-time.
4999
5000 =item Socket Extension Dynamic in VMS
5001
5002 =item IEEE-format Floating Point Default on OpenVMS Alpha
5003
5004 =item Different Definition of the Unicode Character Classes \p{In...}
5005
5006 =item Perl Parser Stress Tested
5007
5008 =item REF(...) Instead Of SCALAR(...)
5009
5010 =item Deprecations
5011
5012 =back
5013
5014 =item Core Enhancements
5015
5016 =over 4
5017
5018 =item PerlIO is Now The Default
5019
5020 =item Safe Signals
5021
5022 =item Unicode Overhaul
5023
5024 =item Understanding of Numbers
5025
5026 =item Miscellaneous Enhancements
5027
5028 =back
5029
5030 =item Modules and Pragmata
5031
5032 =over 4
5033
5034 =item New Modules and Pragmata
5035
5036 =item Updated And Improved Modules and Pragmata
5037
5038 =back
5039
5040 =item Utility Changes
5041
5042 =item New Documentation
5043
5044 =item Performance Enhancements
5045
5046 =item Installation and Configuration Improvements
5047
5048 =over 4
5049
5050 =item Generic Improvements
5051
5052 =item New Or Improved Platforms
5053
5054 =back
5055
5056 =item Selected Bug Fixes
5057
5058 =over 4
5059
5060 =item Platform Specific Changes and Fixes
5061
5062 =back
5063
5064 =item New or Changed Diagnostics
5065
5066 =item Changed Internals
5067
5068 =item Security Vulnerability Closed
5069
5070 =item New Tests
5071
5072 =item Known Problems
5073
5074 =over 4
5075
5076 =item AIX
5077
5078 =item Amiga Perl Invoking Mystery
5079
5080 =item lib/ftmp-security tests warn 'system possibly insecure'
5081
5082 =item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12
5083
5084 =item HP-UX lib/io_multihomed Fails When LP64-Configured
5085
5086 =item  HP-UX lib/posix Subtest 9 Fails When LP64-Configured
5087
5088 =item Linux With Sfio Fails op/misc Test 48
5089
5090 =item Mac OS X
5091
5092 =item OS/390
5093
5094 =item op/sprintf tests 129 and 130
5095
5096 =item  Failure of Thread tests
5097
5098 =item UNICOS
5099
5100 =item UTS
5101
5102 =item VMS
5103
5104 =item Localising a Tied Variable Leaks Memory
5105
5106 =item Localising Tied Arrays and Hashes Is Broken
5107
5108 =item Self-tying of Arrays and Hashes Is Forbidden
5109
5110 =item Building Extensions Can Fail Because Of Largefiles
5111
5112 =item Unicode Support on EBCDIC Still Spotty
5113
5114 =item The Compiler Suite Is Still Experimental
5115
5116 =item The Long Double Support Is Still Experimental
5117
5118 =item Seen In Perl 5.7 But Gone Now
5119
5120 =back
5121
5122 =item Reporting Bugs
5123
5124 =item SEE ALSO
5125
5126 =item HISTORY
5127
5128 =back
5129
5130 =head2 perl572delta - what's new for perl v5.7.2
5131
5132 =over 4
5133
5134 =item DESCRIPTION
5135
5136 =item Security Vulnerability Closed
5137
5138 =item Incompatible Changes
5139
5140 =over 4
5141
5142 =item 64-bit platforms and malloc
5143
5144 =item AIX Dynaloading
5145
5146 =item Socket Extension Dynamic in VMS
5147
5148 =item Different Definition of the Unicode Character Classes \p{In...}
5149
5150 =item Deprecations
5151
5152 =back
5153
5154 =item Core Enhancements
5155
5156 =item Modules and Pragmata
5157
5158 =over 4
5159
5160 =item New Modules and Distributions
5161
5162 =item Updated And Improved Modules and Pragmata
5163
5164 =back
5165
5166 =item Utility Changes
5167
5168 =item New Documentation
5169
5170 =item Installation and Configuration Improvements
5171
5172 =over 4
5173
5174 =item New Or Improved Platforms
5175
5176 =item Generic Improvements
5177
5178 =back
5179
5180 =item Selected Bug Fixes
5181
5182 =over 4
5183
5184 =item Platform Specific Changes and Fixes
5185
5186 =back
5187
5188 =item New or Changed Diagnostics
5189
5190 =item Source Code Enhancements
5191
5192 =over 4
5193
5194 =item MAGIC constants
5195
5196 =item Better commented code
5197
5198 =item Regex pre-/post-compilation items matched up
5199
5200 =item gcc -Wall
5201
5202 =back
5203
5204 =item New Tests
5205
5206 =item Known Problems
5207
5208 =over 4
5209
5210 =item AIX
5211
5212 =item Amiga Perl Invoking Mystery
5213
5214 =item lib/ftmp-security tests warn 'system possibly insecure'
5215
5216 =item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12
5217
5218 =item HP-UX lib/io_multihomed Fails When LP64-Configured
5219
5220 =item  HP-UX lib/posix Subtest 9 Fails When LP64-Configured
5221
5222 =item Linux With Sfio Fails op/misc Test 48
5223
5224 =item OS/390
5225
5226 =item op/sprintf tests 129 and 130
5227
5228 =item  Failure of Thread tests
5229
5230 =item UNICOS
5231
5232 =item UTS
5233
5234 =item VMS
5235
5236 =item Win32
5237
5238 =item Localising a Tied Variable Leaks Memory
5239
5240 =item Self-tying of Arrays and Hashes Is Forbidden
5241
5242 =item Variable Attributes are not Currently Usable for Tieing
5243
5244 =item Building Extensions Can Fail Because Of Largefiles
5245
5246 =item The Compiler Suite Is Still Experimental
5247
5248 =item The Long Double Support is Still Experimental
5249
5250 =back
5251
5252 =item Reporting Bugs
5253
5254 =item SEE ALSO
5255
5256 =item HISTORY
5257
5258 =back
5259
5260 =head2 perl571delta - what's new for perl v5.7.1
5261
5262 =over 4
5263
5264 =item DESCRIPTION
5265
5266 =item Security Vulnerability Closed
5267
5268 =item Incompatible Changes
5269
5270 =item Core Enhancements
5271
5272 =over 4
5273
5274 =item AUTOLOAD Is Now Lvaluable
5275
5276 =item PerlIO is Now The Default
5277
5278 =item Signals Are Now Safe
5279
5280 =back
5281
5282 =item Modules and Pragmata
5283
5284 =over 4
5285
5286 =item New Modules
5287
5288 =item Updated And Improved Modules and Pragmata
5289
5290 =back
5291
5292 =item Performance Enhancements
5293
5294 =item Utility Changes
5295
5296 =item New Documentation
5297
5298 =over 4
5299
5300 =item perlclib
5301
5302 =item perliol
5303
5304 =item README.aix
5305
5306 =item README.bs2000
5307
5308 =item README.macos
5309
5310 =item README.mpeix
5311
5312 =item README.solaris
5313
5314 =item README.vos
5315
5316 =item Porting/repository.pod
5317
5318 =back
5319
5320 =item Installation and Configuration Improvements
5321
5322 =over 4
5323
5324 =item New Or Improved Platforms
5325
5326 =item Generic Improvements
5327
5328 d_cmsghdr, d_fcntl_can_lock, d_fsync, d_getitimer, d_getpagsz, d_msghdr_s,
5329 need_va_copy, d_readv, d_recvmsg, d_sendmsg, sig_size, d_sockatmark,
5330 d_strtoq, d_u32align, d_ualarm, d_usleep
5331
5332 =back
5333
5334 =item Selected Bug Fixes
5335
5336 =over 4
5337
5338 =item Platform Specific Changes and Fixes
5339
5340 =back
5341
5342 =item New or Changed Diagnostics
5343
5344 =item Changed Internals
5345
5346 =item New Tests
5347
5348 =item Known Problems
5349
5350 =over 4
5351
5352 =item AIX vac 5.0.0.0 May Produce Buggy Code For Perl
5353
5354 =item lib/ftmp-security tests warn 'system possibly insecure'
5355
5356 =item lib/io_multihomed Fails In LP64-Configured HP-UX
5357
5358 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX
5359
5360 =item lib/b test 19
5361
5362 =item Linux With Sfio Fails op/misc Test 48
5363
5364 =item sigaction test 13 in VMS
5365
5366 =item sprintf tests 129 and 130
5367
5368 =item  Failure of Thread tests
5369
5370 =item Localising a Tied Variable Leaks Memory
5371
5372 =item Self-tying of Arrays and Hashes Is Forbidden
5373
5374 =item Building Extensions Can Fail Because Of Largefiles
5375
5376 =item The Compiler Suite Is Still Experimental
5377
5378 =back
5379
5380 =item Reporting Bugs
5381
5382 =item SEE ALSO
5383
5384 =item HISTORY
5385
5386 =back
5387
5388 =head2 perl570delta - what's new for perl v5.7.0
5389
5390 =over 4
5391
5392 =item DESCRIPTION
5393
5394 =item Security Vulnerability Closed
5395
5396 =item Incompatible Changes
5397
5398 =item Core Enhancements
5399
5400 =item Modules and Pragmata
5401
5402 =over 4
5403
5404 =item New Modules
5405
5406 =item Updated And Improved Modules and Pragmata
5407
5408 =back
5409
5410 =item Utility Changes
5411
5412 =item New Documentation
5413
5414 =item Performance Enhancements
5415
5416 =item Installation and Configuration Improvements
5417
5418 =over 4
5419
5420 =item Generic Improvements
5421
5422 =back
5423
5424 =item Selected Bug Fixes
5425
5426 =over 4
5427
5428 =item Platform Specific Changes and Fixes
5429
5430 =back
5431
5432 =item New or Changed Diagnostics
5433
5434 =item Changed Internals
5435
5436 =item Known Problems
5437
5438 =over 4
5439
5440 =item Unicode Support Still Far From Perfect
5441
5442 =item EBCDIC Still A Lost Platform
5443
5444 =item Building Extensions Can Fail Because Of Largefiles
5445
5446 =item ftmp-security tests warn 'system possibly insecure'
5447
5448 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX
5449
5450 =item Long Doubles Still Don't Work In Solaris
5451
5452 =item Linux With Sfio Fails op/misc Test 48
5453
5454 =item Storable tests fail in some platforms
5455
5456 =item Threads Are Still Experimental
5457
5458 =item The Compiler Suite Is Still Experimental
5459
5460 =back
5461
5462 =item Reporting Bugs
5463
5464 =item SEE ALSO
5465
5466 =item HISTORY
5467
5468 =back
5469
5470 =head2 perl561delta, perldelta - what's new for perl v5.6.x
5471
5472 =over 4
5473
5474 =item DESCRIPTION
5475
5476 =item Summary of changes between 5.6.0 and 5.6.1
5477
5478 =over 4
5479
5480 =item Security Issues
5481
5482 =item Core bug fixes
5483
5484 C<UNIVERSAL::isa()>, Memory leaks, Numeric conversions, qw(a\\b), caller(),
5485 Bugs in regular expressions, "slurp" mode, Autovivification of symbolic
5486 references to special variables, Lexical warnings, Spurious warnings and
5487 errors, glob(), Tainting, sort(), #line directives, Subroutine prototypes,
5488 map(), Debugger, PERL5OPT, chop(), Unicode support, 64-bit support,
5489 Compiler, Lvalue subroutines, IO::Socket, File::Find, xsubpp, C<no
5490 Module;>, Tests
5491
5492 =item Core features
5493
5494 =item Configuration issues
5495
5496 =item Documentation
5497
5498 =item Bundled modules
5499
5500 B::Concise, File::Temp, Pod::LaTeX, Pod::Text::Overstrike, CGI, CPAN,
5501 Class::Struct, DB_File, Devel::Peek, File::Find, Getopt::Long, IO::Poll,
5502 IPC::Open3, Math::BigFloat, Math::Complex, Net::Ping, Opcode, Pod::Parser,
5503 Pod::Text, SDBM_File, Sys::Syslog, Tie::RefHash, Tie::SubstrHash
5504
5505 =item Platform-specific improvements
5506
5507 NCR MP-RAS, NonStop-UX
5508
5509 =item Interpreter cloning, threads, and concurrency
5510
5511 =item Lexically scoped warning categories
5512
5513 =item Unicode and UTF-8 support
5514
5515 =item Support for interpolating named characters
5516
5517 =item "our" declarations
5518
5519 =item Support for strings represented as a vector of ordinals
5520
5521 =item Improved Perl version numbering system
5522
5523 =item New syntax for declaring subroutine attributes
5524
5525 =item File and directory handles can be autovivified
5526
5527 =item open() with more than two arguments
5528
5529 =item 64-bit support
5530
5531 =item Large file support
5532
5533 =item Long doubles
5534
5535 =item "more bits"
5536
5537 =item Enhanced support for sort() subroutines
5538
5539 =item C<sort $coderef @foo> allowed
5540
5541 =item File globbing implemented internally
5542
5543 =item Support for CHECK blocks
5544
5545 =item POSIX character class syntax [: :] supported
5546
5547 =item Better pseudo-random number generator
5548
5549 =item Improved C<qw//> operator
5550
5551 =item Better worst-case behavior of hashes
5552
5553 =item pack() format 'Z' supported
5554
5555 =item pack() format modifier '!' supported
5556
5557 =item pack() and unpack() support counted strings
5558
5559 =item Comments in pack() templates
5560
5561 =item Weak references
5562
5563 =item Binary numbers supported
5564
5565 =item Lvalue subroutines
5566
5567 =item Some arrows may be omitted in calls through references
5568
5569 =item Boolean assignment operators are legal lvalues
5570
5571 =item exists() is supported on subroutine names
5572
5573 =item exists() and delete() are supported on array elements
5574
5575 =item Pseudo-hashes work better
5576
5577 =item Automatic flushing of output buffers
5578
5579 =item Better diagnostics on meaningless filehandle operations
5580
5581 =item Where possible, buffered data discarded from duped input filehandle
5582
5583 =item eof() has the same old magic as <>
5584
5585 =item binmode() can be used to set :crlf and :raw modes
5586
5587 =item C<-T> filetest recognizes UTF-8 encoded files as "text"
5588
5589 =item system(), backticks and pipe open now reflect exec() failure
5590
5591 =item Improved diagnostics
5592
5593 =item Diagnostics follow STDERR
5594
5595 =item More consistent close-on-exec behavior
5596
5597 =item syswrite() ease-of-use
5598
5599 =item Better syntax checks on parenthesized unary operators
5600
5601 =item Bit operators support full native integer width
5602
5603 =item Improved security features
5604
5605 =item More functional bareword prototype (*)
5606
5607 =item C<require> and C<do> may be overridden
5608
5609 =item $^X variables may now have names longer than one character
5610
5611 =item New variable $^C reflects C<-c> switch
5612
5613 =item New variable $^V contains Perl version as a string
5614
5615 =item Optional Y2K warnings
5616
5617 =item Arrays now always interpolate into double-quoted strings
5618
5619 =back
5620
5621 =item Modules and Pragmata
5622
5623 =over 4
5624
5625 =item Modules
5626
5627 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper,
5628 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English,
5629 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec,
5630 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt,
5631 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker,
5632 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage,
5633 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname,
5634 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
5635
5636 =item Pragmata
5637
5638 =back
5639
5640 =item Utility Changes
5641
5642 =over 4
5643
5644 =item dprofpp
5645
5646 =item find2perl
5647
5648 =item h2xs
5649
5650 =item perlcc
5651
5652 =item perldoc
5653
5654 =item The Perl Debugger
5655
5656 =back
5657
5658 =item Improved Documentation
5659
5660 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod,
5661 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod,
5662 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod,
5663 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
5664
5665 =item Performance enhancements
5666
5667 =over 4
5668
5669 =item Simple sort() using { $a <=> $b } and the like are optimized
5670
5671 =item Optimized assignments to lexical variables
5672
5673 =item Faster subroutine calls
5674
5675 =item delete(), each(), values() and hash iteration are faster
5676
5677 =back
5678
5679 =item Installation and Configuration Improvements
5680
5681 =over 4
5682
5683 =item -Dusethreads means something different
5684
5685 =item New Configure flags
5686
5687 =item Threadedness and 64-bitness now more daring
5688
5689 =item Long Doubles
5690
5691 =item -Dusemorebits
5692
5693 =item -Duselargefiles
5694
5695 =item installusrbinperl
5696
5697 =item SOCKS support
5698
5699 =item C<-A> flag
5700
5701 =item Enhanced Installation Directories
5702
5703 =item gcc automatically tried if 'cc' does not seem to be working
5704
5705 =back
5706
5707 =item Platform specific changes
5708
5709 =over 4
5710
5711 =item Supported platforms
5712
5713 =item DOS
5714
5715 =item OS390 (OpenEdition MVS)
5716
5717 =item VMS
5718
5719 =item Win32
5720
5721 =back
5722
5723 =item Significant bug fixes
5724
5725 =over 4
5726
5727 =item <HANDLE> on empty files
5728
5729 =item C<eval '...'> improvements
5730
5731 =item All compilation errors are true errors
5732
5733 =item Implicitly closed filehandles are safer
5734
5735 =item Behavior of list slices is more consistent
5736
5737 =item C<(\$)> prototype and C<$foo{a}>
5738
5739 =item C<goto &sub> and AUTOLOAD
5740
5741 =item C<-bareword> allowed under C<use integer>
5742
5743 =item Failures in DESTROY()
5744
5745 =item Locale bugs fixed
5746
5747 =item Memory leaks
5748
5749 =item Spurious subroutine stubs after failed subroutine calls
5750
5751 =item Taint failures under C<-U>
5752
5753 =item END blocks and the C<-c> switch
5754
5755 =item Potential to leak DATA filehandles
5756
5757 =back
5758
5759 =item New or Changed Diagnostics
5760
5761 "%s" variable %s masks earlier declaration in same %s, "my sub" not yet
5762 implemented, "our" variable %s redeclared, '!' allowed only after types %s,
5763 / cannot take a count, / must be followed by a, A or Z, / must be followed
5764 by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape
5765 \\%c passed through, /%s/: Unrecognized escape \\%c in character class
5766 passed through, /%s/ should probably be written as "%s", %s() called too
5767 early to check prototype, %s argument is not a HASH or ARRAY element, %s
5768 argument is not a HASH or ARRAY element or slice, %s argument is not a
5769 subroutine name, %s package attribute may clash with future reserved word:
5770 %s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled
5771 substitution pattern, Bad realloc() ignored, Bareword found in conditional,
5772 Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector
5773 size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check
5774 filesystem of script "%s", Can't declare class for non-scalar %s in "%s",
5775 Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default,
5776 Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't
5777 remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't
5778 weaken a nonreference, Character class [:%s:] unknown, Character class
5779 syntax [%s] belongs inside character classes, Constant is not %s reference,
5780 constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated,
5781 defined(%hash) is deprecated, Did not produce a valid header, (Did you mean
5782 "local" instead of "our"?), Document contains no data, entering effective
5783 %s failed, false [] range "%s" in regexp, Filehandle %s opened only for
5784 output, flock() on closed filehandle %s, Global symbol "%s" requires
5785 explicit package name, Hexadecimal number > 0xffffffff non-portable,
5786 Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter:
5787 |%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal
5788 number of bits in vec, Integer overflow in %s number, Invalid %s attribute:
5789 %s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid
5790 separator character %s in attribute list, Invalid separator character %s in
5791 subroutine attribute list, leaving effective %s failed, Lvalue subs
5792 returning %s not implemented yet, Method %s not permitted, Missing
5793 %sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub",
5794 No %s specified for -%c, No package name allowed for variable %s in "our",
5795 No space allowed after -%c, no UTC offset information; assuming local time
5796 is UTC, Octal number > 037777777777 non-portable, panic: del_backref,
5797 panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing
5798 around "%s" list, Possible unintended interpolation of %s in string,
5799 Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS"
5800 instead, Premature end of script headers, Repeat count in pack overflows,
5801 Repeat count in unpack overflows, realloc() of freed memory ignored,
5802 Reference is already weak, setpgrp can't take arguments, Strange *+?{} on
5803 zero-length expression, switching effective %s is not implemented, This
5804 Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL
5805 environ elements (%s=%s), Too late to run %s block, Unknown open() mode
5806 '%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized
5807 escape \\%c passed through, Unterminated attribute parameter in attribute
5808 list, Unterminated attribute list, Unterminated attribute parameter in
5809 subroutine attribute list, Unterminated subroutine attribute list, Value of
5810 CLI symbol "%s" too long, Version number must be a constant number
5811
5812 =item New tests
5813
5814 =item Incompatible Changes
5815
5816 =over 4
5817
5818 =item Perl Source Incompatibilities
5819
5820 CHECK is a new keyword, Treatment of list slices of undef has changed,
5821 Format of $English::PERL_VERSION is different, Literals of the form
5822 C<1.2.3> parse differently, Possibly changed pseudo-random number
5823 generator, Hashing function for hash keys has changed, C<undef> fails on
5824 read only values, Close-on-exec bit may be set on pipe and socket handles,
5825 Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), each(),
5826 values() and C<\(%h)>, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS,
5827 Text of some diagnostic output has changed, C<%@> has been removed,
5828 Parenthesized not() behaves like a list operator, Semantics of bareword
5829 prototype C<(*)> have changed, Semantics of bit operators may have changed
5830 on 64-bit platforms, More builtins taint their results
5831
5832 =item C Source Incompatibilities
5833