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