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