This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Tiny tweaks.
[perl5.git] / pod / perltoc.pod
CommitLineData
cb1a09d0
AD
1
2=head1 NAME
3
4perltoc - perl documentation table of contents
5
6=head1 DESCRIPTION
7
8This page provides a brief table of contents for the rest of the Perl
28757baa 9documentation set. It is meant to be scanned quickly or grepped
402d0d99 10through to locate the proper section you're looking for.
cb1a09d0
AD
11
12=head1 BASIC DOCUMENTATION
13
cb1a09d0
AD
14=head2 perl - Practical Extraction and Report Language
15
d420ca49 16=over 4
a45bd81d 17
cb1a09d0
AD
18=item SYNOPSIS
19
cb1a09d0
AD
20=item DESCRIPTION
21
14218588 22=item AVAILABILITY
cb1a09d0
AD
23
24=item ENVIRONMENT
25
cb1a09d0
AD
26=item AUTHOR
27
cb1a09d0
AD
28=item FILES
29
cb1a09d0
AD
30=item SEE ALSO
31
cb1a09d0
AD
32=item DIAGNOSTICS
33
cb1a09d0
AD
34=item BUGS
35
cb1a09d0
AD
36=item NOTES
37
a45bd81d
GS
38=back
39
10151d09
JH
40=head2 perlintro -- a brief introduction and overview of Perl
41
42=over 4
43
44=item DESCRIPTION
45
46=over 4
47
48=item What is Perl?
49
50=item Running Perl programs
51
52=item Basic syntax overview
53
54=item Perl variable types
55
56Scalars, Arrays, Hashes
57
58=item Variable scoping
59
60=item Conditional and looping constructs
61
62if, while, for, foreach
63
64=item Builtin operators and functions
65
66Arithmetic, Numeric comparison, String comparison, Boolean logic,
67Miscellaneous
68
69=item Files and I/O
70
71=item Regular expressions
72
73Simple matching, Simple substitution, More complex regular expressions,
74Parentheses for capturing, Other regexp features
75
76=item Writing subroutines
77
78=item OO Perl
79
80=item Using Perl modules
81
82=back
83
84=item AUTHOR
85
86=back
87
88=head2 perlfaq - frequently asked questions about Perl ($Date: 2001/10/16
8913:27:22 $)
68dc0745 90
d420ca49 91=over 4
a45bd81d 92
68dc0745
PP
93=item DESCRIPTION
94
983dbef6 95=over 4
68dc0745 96
983dbef6 97=item perlfaq: Structural overview of the FAQ.
68dc0745 98
983dbef6 99=item L<perlfaq1>: General Questions About Perl
68dc0745 100
983dbef6 101=item L<perlfaq2>: Obtaining and Learning about Perl
68dc0745 102
983dbef6 103=item L<perlfaq3>: Programming Tools
68dc0745 104
983dbef6 105=item L<perlfaq4>: Data Manipulation
68dc0745 106
983dbef6 107=item L<perlfaq5>: Files and Formats
68dc0745 108
983dbef6 109=item L<perlfaq6>: Regexps
68dc0745 110
983dbef6 111=item L<perlfaq7>: General Perl Language Issues
68dc0745 112
983dbef6 113=item L<perlfaq8>: System Interaction
68dc0745 114
983dbef6 115=item L<perlfaq9>: Networking
68dc0745 116
a45bd81d
GS
117=back
118
983dbef6 119=item About the perlfaq documents
68dc0745 120
d420ca49 121=over 4
a45bd81d 122
983dbef6 123=item Where to get the perlfaq
68dc0745 124
983dbef6 125=item How to contribute to the perlfaq
68dc0745 126
983dbef6
JH
127=item What will happen if you mail your Perl programming problems to the
128authors
68dc0745 129
983dbef6 130=back
68dc0745 131
983dbef6 132=item Credits
68dc0745 133
983dbef6 134=item Author and Copyright Information
68dc0745 135
983dbef6
JH
136=over 4
137
138=item Bundled Distributions
139
140=item Disclaimer
68dc0745 141
4755096e 142=back
68dc0745 143
983dbef6
JH
144=item Changes
145
1461/November/2000, 23/May/99, 13/April/99, 7/January/99, 22/June/98,
14724/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version,
148Initial Release: 11/March/97
149
4755096e 150=back
68dc0745 151
4755096e 152=head2 perlbook - Perl book information
68dc0745 153
d420ca49 154=over 4
68dc0745 155
4755096e 156=item DESCRIPTION
68dc0745 157
a45bd81d
GS
158=back
159
4755096e 160=head2 perlsyn - Perl syntax
a45bd81d 161
d420ca49 162=over 4
68dc0745
PP
163
164=item DESCRIPTION
165
d420ca49 166=over 4
68dc0745 167
4755096e 168=item Declarations
68dc0745 169
4755096e 170=item Simple statements
68dc0745 171
4755096e 172=item Compound statements
3fe9a6f1 173
4755096e 174=item Loop Control
68dc0745 175
4755096e 176=item For Loops
68dc0745 177
4755096e 178=item Foreach Loops
68dc0745 179
4755096e 180=item Basic BLOCKs and Switch Statements
68dc0745 181
4755096e 182=item Goto
68dc0745 183
4755096e 184=item PODs: Embedded Documentation
68dc0745 185
4755096e 186=item Plain Old Comments (Not!)
68dc0745 187
4755096e 188=back
68dc0745 189
4755096e 190=back
193fb0af 191
4755096e 192=head2 perldata - Perl data types
68dc0745 193
d420ca49 194=over 4
68dc0745 195
4755096e 196=item DESCRIPTION
68dc0745 197
d420ca49 198=over 4
68dc0745 199
4755096e 200=item Variable names
68dc0745 201
4755096e 202=item Context
68dc0745 203
4755096e
GS
204=item Scalar values
205
206=item Scalar value constructors
207
208=item List value constructors
209
210=item Slices
211
212=item Typeglobs and Filehandles
68dc0745
PP
213
214=back
215
4755096e 216=item SEE ALSO
68dc0745 217
a45bd81d
GS
218=back
219
4755096e 220=head2 perlop - Perl operators and precedence
68dc0745 221
d420ca49 222=over 4
a45bd81d 223
4755096e
GS
224=item SYNOPSIS
225
68dc0745
PP
226=item DESCRIPTION
227
d420ca49 228=over 4
68dc0745 229
4755096e 230=item Terms and List Operators (Leftward)
68dc0745 231
4755096e 232=item The Arrow Operator
68dc0745 233
4755096e 234=item Auto-increment and Auto-decrement
68dc0745 235
4755096e 236=item Exponentiation
68dc0745 237
4755096e 238=item Symbolic Unary Operators
68dc0745 239
4755096e 240=item Binding Operators
68dc0745 241
4755096e 242=item Multiplicative Operators
68dc0745 243
4755096e 244=item Additive Operators
68dc0745 245
4755096e 246=item Shift Operators
14218588 247
4755096e 248=item Named Unary Operators
68dc0745 249
4755096e 250=item Relational Operators
68dc0745 251
4755096e 252=item Equality Operators
68dc0745 253
4755096e 254=item Bitwise And
68dc0745 255
4755096e 256=item Bitwise Or and Exclusive Or
68dc0745 257
4755096e 258=item C-style Logical And
68dc0745 259
4755096e 260=item C-style Logical Or
68dc0745 261
4755096e 262=item Range Operators
68dc0745 263
4755096e 264=item Conditional Operator
68dc0745 265
4755096e 266=item Assignment Operators
68dc0745 267
4755096e 268=item Comma Operator
68dc0745 269
4755096e 270=item List Operators (Rightward)
68dc0745 271
4755096e 272=item Logical Not
68dc0745 273
4755096e 274=item Logical And
14218588 275
4755096e 276=item Logical or and Exclusive Or
68dc0745 277
4755096e 278=item C Operators Missing From Perl
68dc0745 279
4755096e 280unary &, unary *, (TYPE)
68dc0745 281
4755096e 282=item Quote and Quote-like Operators
68dc0745 283
4755096e 284=item Regexp Quote-Like Operators
68dc0745 285
4755096e 286?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
2d967e39
JH
287qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
288s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
35bf961c 289y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF
68dc0745 290
4755096e 291=item Gory details of parsing quoted constructs
68dc0745 292
4755096e
GS
293Finding the end, Removal of backslashes before delimiters, Interpolation,
294C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
295C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
296C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
297regular expressions
68dc0745 298
4755096e 299=item I/O Operators
68dc0745 300
4755096e 301=item Constant Folding
68dc0745 302
4755096e
GS
303=item Bitwise String Operators
304
305=item Integer Arithmetic
306
307=item Floating-point Arithmetic
308
309=item Bigger Numbers
68dc0745 310
a45bd81d
GS
311=back
312
4755096e
GS
313=back
314
c2e66d9e
GS
315=head2 perlsub - Perl subroutines
316
d420ca49 317=over 4
c2e66d9e
GS
318
319=item SYNOPSIS
320
321=item DESCRIPTION
322
d420ca49 323=over 4
c2e66d9e
GS
324
325=item Private Variables via my()
326
327=item Persistent Private Variables
328
329=item Temporary Values via local()
330
331=item Lvalue subroutines
332
333=item Passing Symbol Table Entries (typeglobs)
334
335=item When to Still Use local()
336
c2e66d9e
GS
337=item Pass by Reference
338
339=item Prototypes
340
341=item Constant Functions
342
343=item Overriding Built-in Functions
344
345=item Autoloading
346
347=item Subroutine Attributes
348
349=back
350
351=item SEE ALSO
352
353=back
354
355=head2 perlfunc - Perl builtin functions
356
d420ca49 357=over 4
c2e66d9e
GS
358
359=item DESCRIPTION
360
d420ca49 361=over 4
c2e66d9e
GS
362
363=item Perl Functions by Category
364
365Functions for SCALARs or strings, Regular expressions and pattern matching,
366Numeric functions, Functions for real @ARRAYs, Functions for list data,
367Functions for real %HASHes, Input and output functions, Functions for fixed
368length data or records, Functions for filehandles, files, or directories,
369Keywords related to the control flow of your perl program, Keywords related
370to scoping, Miscellaneous functions, Functions for processes and process
371groups, Keywords related to perl modules, Keywords related to classes and
372object-orientedness, Low-level socket functions, System V interprocess
373communication functions, Fetching user and group info, Fetching network
374info, Time-related functions, Functions new in perl5, Functions obsoleted
375in perl5
376
377=item Portability
378
379=item Alphabetical Listing of Perl Functions
380
381I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
382NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
383binmode FILEHANDLE, DISCIPLINE, binmode FILEHANDLE, bless REF,CLASSNAME,
384bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE,
385chomp LIST, chomp, chop VARIABLE, chop LIST, chop, chown LIST, chr NUMBER,
386chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE,
d396a558 387connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT,
c2e66d9e
GS
388dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete
389EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump,
390each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST,
391exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl
392FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION,
393fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin,
394getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam
395NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname
396NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr
397ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
398getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
399getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
400STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
401endhostent, endnetent, endprotoent, endservent, getsockname SOCKET,
402getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL,
403goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex,
404import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
405FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST,
406last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
407link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
91e74348
JH
408lock, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map EXPR,LIST,
409mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
410msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my EXPR :
411ATTRIBUTES, next LABEL, next, no Module LIST, oct EXPR, oct, open
772ff3b9
JH
412FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST,
413open FILEHANDLE, opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR
414: ATTRIBUTES, pack TEMPLATE,LIST, package NAMESPACE, package, pipe
415READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, print FILEHANDLE
416LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, printf FORMAT,
417LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, qq/STRING/,
418qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR,
419rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH,
420readdir DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR,
421recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, ref EXPR, ref, rename
245d750e
JH
422OLDNAME,NEWNAME, require VERSION, require EXPR, require, reset EXPR, reset,
423return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
424STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
425EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
426FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
427ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
c2e66d9e
GS
428SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
429WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
430shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
431shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
80cbd5ad
JH
432EXPR, sleep, sockatmark SOCKET, socket SOCKET,DOMAIN,TYPE,PROTOCOL,
433socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort
434BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice
435ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, split
436/PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, split /PATTERN/, split, sprintf
437FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, srand, stat FILEHANDLE, stat
438EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME, sub NAME BLOCK,
439substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
c2e66d9e
GS
440EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
441FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
442FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
443FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
444FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
445syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
446VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
447FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
448ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
449TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module VERSION LIST,
450use Module VERSION, use Module LIST, use Module, use VERSION, utime LIST,
451values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
452LIST, write FILEHANDLE, write EXPR, write, y///
453
454=back
455
456=back
457
4755096e 458=head2 perlreftut - Mark's very short tutorial about references
68dc0745 459
d420ca49 460=over 4
a45bd81d 461
68dc0745
PP
462=item DESCRIPTION
463
4755096e
GS
464=item Who Needs Complicated Data Structures?
465
466=item The Solution
467
468=item Syntax
68dc0745 469
d420ca49 470=over 4
68dc0745 471
4755096e 472=item Making References
46fc3d4c 473
4755096e 474=item Using References
68dc0745 475
4755096e 476=back
68dc0745 477
4755096e 478=item An Example
68dc0745 479
4755096e 480=item Arrow Rule
14218588 481
4755096e 482=item Solution
68dc0745 483
4755096e 484=item The Rest
68dc0745 485
4755096e 486=item Summary
68dc0745 487
4755096e
GS
488=item Credits
489
d420ca49 490=over 4
4755096e
GS
491
492=item Distribution Conditions
68dc0745
PP
493
494=back
495
4755096e
GS
496=back
497
498=head2 perldsc - Perl Data Structures Cookbook
68dc0745 499
d420ca49 500=over 4
68dc0745 501
4755096e 502=item DESCRIPTION
68dc0745 503
4755096e
GS
504arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
505more elaborate constructs
14218588 506
4755096e 507=item REFERENCES
68dc0745 508
4755096e 509=item COMMON MISTAKES
68dc0745 510
4755096e 511=item CAVEAT ON PRECEDENCE
68dc0745 512
4755096e 513=item WHY YOU SHOULD ALWAYS C<use strict>
14218588 514
4755096e 515=item DEBUGGING
68dc0745 516
4755096e 517=item CODE EXAMPLES
68dc0745 518
4755096e 519=item ARRAYS OF ARRAYS
68dc0745 520
d420ca49 521=over 4
68dc0745 522
4755096e 523=item Declaration of a ARRAY OF ARRAYS
68dc0745 524
4755096e 525=item Generation of a ARRAY OF ARRAYS
68dc0745 526
4755096e 527=item Access and Printing of a ARRAY OF ARRAYS
68dc0745 528
4755096e 529=back
68dc0745 530
4755096e 531=item HASHES OF ARRAYS
68dc0745 532
d420ca49 533=over 4
68dc0745 534
4755096e 535=item Declaration of a HASH OF ARRAYS
68dc0745 536
4755096e 537=item Generation of a HASH OF ARRAYS
68dc0745 538
4755096e 539=item Access and Printing of a HASH OF ARRAYS
68dc0745 540
4755096e 541=back
68dc0745 542
4755096e 543=item ARRAYS OF HASHES
68dc0745 544
d420ca49 545=over 4
68dc0745 546
4755096e 547=item Declaration of a ARRAY OF HASHES
68dc0745 548
4755096e 549=item Generation of a ARRAY OF HASHES
68dc0745 550
4755096e 551=item Access and Printing of a ARRAY OF HASHES
14218588 552
4755096e 553=back
68dc0745 554
4755096e 555=item HASHES OF HASHES
68dc0745 556
d420ca49 557=over 4
68dc0745 558
4755096e 559=item Declaration of a HASH OF HASHES
68dc0745 560
4755096e 561=item Generation of a HASH OF HASHES
68dc0745 562
4755096e 563=item Access and Printing of a HASH OF HASHES
68dc0745
PP
564
565=back
566
4755096e 567=item MORE ELABORATE RECORDS
68dc0745 568
d420ca49 569=over 4
68dc0745 570
4755096e 571=item Declaration of MORE ELABORATE RECORDS
14218588 572
4755096e 573=item Declaration of a HASH OF COMPLEX RECORDS
68dc0745 574
4755096e 575=item Generation of a HASH OF COMPLEX RECORDS
68dc0745 576
4755096e 577=back
68dc0745 578
4755096e 579=item Database Ties
68dc0745 580
4755096e 581=item SEE ALSO
68dc0745 582
4755096e 583=item AUTHOR
14218588 584
4755096e 585=back
68dc0745 586
4755096e 587=head2 perlrequick - Perl regular expressions quick start
68dc0745 588
d420ca49 589=over 4
68dc0745 590
4755096e 591=item DESCRIPTION
68dc0745 592
4755096e 593=item The Guide
68dc0745 594
d420ca49 595=over 4
68dc0745 596
4755096e 597=item Simple word matching
68dc0745 598
4755096e 599=item Using character classes
68dc0745 600
4755096e 601=item Matching this or that
68dc0745 602
4755096e 603=item Grouping things and hierarchical matching
68dc0745 604
4755096e 605=item Extracting matches
68dc0745 606
4755096e 607=item Matching repetitions
68dc0745 608
4755096e 609=item More matching
68dc0745 610
4755096e 611=item Search and replace
68dc0745 612
4755096e 613=item The split operator
68dc0745
PP
614
615=back
616
4755096e 617=item BUGS
68dc0745 618
4755096e 619=item SEE ALSO
68dc0745 620
4755096e 621=item AUTHOR AND COPYRIGHT
68dc0745 622
d420ca49 623=over 4
68dc0745 624
4755096e 625=item Acknowledgments
14218588 626
68dc0745
PP
627=back
628
a45bd81d
GS
629=back
630
c2e66d9e 631=head2 perlpod - plain old documentation
68dc0745 632
d420ca49 633=over 4
a45bd81d 634
68dc0745
PP
635=item DESCRIPTION
636
d420ca49 637=over 4
68dc0745 638
c2e66d9e 639=item Verbatim Paragraph
68dc0745 640
c2e66d9e 641=item Command Paragraph
68dc0745 642
c2e66d9e 643=item Ordinary Block of Text
68dc0745 644
c2e66d9e 645=item The Intent
68dc0745 646
c2e66d9e 647=item Embedding Pods in Perl Modules
68dc0745 648
c2e66d9e 649=item Common Pod Pitfalls
193fb0af 650
c2e66d9e 651=back
68dc0745 652
c2e66d9e 653=item SEE ALSO
68dc0745 654
c2e66d9e 655=item AUTHOR
68dc0745 656
c2e66d9e 657=back
68dc0745 658
c2e66d9e 659=head2 perlstyle - Perl style guide
68dc0745 660
d420ca49 661=over 4
c2e66d9e
GS
662
663=item DESCRIPTION
68dc0745 664
4755096e 665=back
68dc0745 666
c2e66d9e 667=head2 perltrap - Perl traps for the unwary
68dc0745 668
d420ca49 669=over 4
68dc0745 670
c2e66d9e 671=item DESCRIPTION
68dc0745 672
d420ca49 673=over 4
68dc0745 674
c2e66d9e 675=item Awk Traps
68dc0745 676
c2e66d9e 677=item C Traps
4755096e 678
c2e66d9e 679=item Sed Traps
4755096e 680
c2e66d9e 681=item Shell Traps
4755096e 682
c2e66d9e 683=item Perl Traps
68dc0745 684
c2e66d9e 685=item Perl4 to Perl5 Traps
68dc0745 686
c2e66d9e
GS
687Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
688Traps, General data type traps, Context Traps - scalar, list contexts,
689Precedence Traps, General Regular Expression Traps using s///, etc,
690Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
691
692=item Discontinuance, Deprecation, and BugFix traps
693
694Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
695Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
696Discontinuance, Deprecation, Discontinuance, Discontinuance
697
698=item Parsing Traps
699
700Parsing, Parsing, Parsing, Parsing
701
702=item Numerical Traps
703
704Numerical, Numerical, Numerical, Bitwise string ops
705
706=item General data type traps
707
708(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
709(Constants), (Scalars), (Variable Suicide)
710
711=item Context Traps - scalar, list contexts
712
713(list context), (scalar context), (scalar context), (list, builtin)
714
715=item Precedence Traps
716
717Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
718Precedence
719
720=item General Regular Expression Traps using s///, etc.
721
722Regular Expression, Regular Expression, Regular Expression, Regular
723Expression, Regular Expression, Regular Expression, Regular Expression,
724Regular Expression
725
726=item Subroutine, Signal, Sorting Traps
727
728(Signals), (Sort Subroutine), warn() won't let you specify a filehandle
729
730=item OS Traps
731
732(SysV), (SysV)
733
734=item Interpolation Traps
735
736Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
737Interpolation, Interpolation, Interpolation, Interpolation
738
739=item DBM Traps
740
741DBM, DBM
742
743=item Unclassified Traps
744
745C<require>/C<do> trap using returned value, C<split> on empty string with
746LIMIT specified
68dc0745 747
4755096e 748=back
68dc0745 749
c2e66d9e 750=back
14218588 751
c2e66d9e 752=head2 perlrun - how to execute the Perl interpreter
68dc0745 753
d420ca49 754=over 4
c2e66d9e
GS
755
756=item SYNOPSIS
757
758=item DESCRIPTION
68dc0745 759
d420ca49 760=over 4
68dc0745 761
c2e66d9e
GS
762=item #! and quoting on non-Unix systems
763
764OS/2, MS-DOS, Win95/NT, Macintosh, VMS
765
766=item Location of Perl
767
768=item Command Switches
769
91e74348 770B<-0>[I<digits>], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I<foo[=bar,baz]>,
c2e66d9e
GS
771B<-D>I<letters>, B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>,
772B<-h>, B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
773B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
774B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
775B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-W>, B<-X>,
776B<-x> I<directory>
68dc0745 777
4755096e 778=back
68dc0745 779
c2e66d9e
GS
780=item ENVIRONMENT
781
782HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
783(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL,
784PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to the VMS port)
785
786=back
787
788=head2 perldiag - various Perl diagnostics
789
d420ca49 790=over 4
c2e66d9e
GS
791
792=item DESCRIPTION
793
4755096e 794=back
68dc0745 795
4755096e 796=head2 perllexwarn - Perl Lexical Warnings
68dc0745 797
d420ca49 798=over 4
68dc0745 799
4755096e 800=item DESCRIPTION
68dc0745 801
d420ca49 802=over 4
68dc0745 803
4755096e 804=item Default Warnings and Optional Warnings
14218588 805
4755096e 806=item What's wrong with B<-w> and C<$^W>
68dc0745 807
4755096e 808=item Controlling Warnings from the Command Line
68dc0745 809
4755096e 810B<-w>, B<-W>, B<-X>
a45bd81d 811
4755096e 812=item Backward Compatibility
68dc0745 813
4755096e 814=item Category Hierarchy
a45bd81d 815
4755096e 816=item Fatal Warnings
68dc0745 817
4755096e 818=item Reporting Warnings from a Module
68dc0745 819
4755096e 820=back
68dc0745 821
4755096e 822=item TODO
68dc0745 823
4755096e 824=item SEE ALSO
68dc0745 825
4755096e 826=item AUTHOR
68dc0745 827
4755096e 828=back
68dc0745 829
10862624
RF
830=head2 perldebtut - Perl debugging tutorial
831
d420ca49 832=over 4
10862624
RF
833
834=item DESCRIPTION
835
836=item use strict
837
d396a558
JH
838=item Looking at data and -w and w
839
840=item help
10862624
RF
841
842=item Stepping through code
843
844=item Placeholder for a, w, t, T
845
d396a558 846=item REGULAR EXPRESSIONS
10862624 847
d396a558 848=item OUTPUT TIPS
10862624
RF
849
850=item CGI
851
852=item GUIs
853
d396a558 854=item SUMMARY
10862624
RF
855
856=item SEE ALSO
857
858=item AUTHOR
859
860=item CONTRIBUTORS
861
862=back
863
4755096e 864=head2 perldebug - Perl debugging
68dc0745 865
d420ca49 866=over 4
68dc0745 867
4755096e 868=item DESCRIPTION
68dc0745 869
4755096e 870=item The Perl Debugger
68dc0745 871
d420ca49 872=over 4
68dc0745 873
4755096e 874=item Debugger Commands
68dc0745 875
4755096e
GS
876h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
877[expr], r, <CR>, c [line|sub], l, l min+incr, l min-max, l line, l subname,
878-, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], t, t expr,
879b [line] [condition], b subname [condition], b postpone subname
880[condition], b load filename, b compile subname, d [line], D, a [line]
881command, a [line], A, W expr, W, O booloption .., O anyoption? .., O
882option=value .., < ?, < [ command ], << command, > ?, > command, >>
883command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !!
e61ecf27
JH
884cmd, @ file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man
885[manpage]
68dc0745 886
4755096e 887=item Configurable Options
68dc0745 888
4755096e
GS
889C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
890C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
a6fb92f1
JH
891C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<windowSize>,
892C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
893C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>,
894C<undefPrint>, C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>
68dc0745 895
4755096e 896=item Debugger input/output
68dc0745 897
4755096e
GS
898Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
899listing
68dc0745 900
4755096e 901=item Debugging compile-time statements
68dc0745 902
4755096e 903=item Debugger Customization
68dc0745 904
4755096e 905=item Readline Support
68dc0745 906
4755096e 907=item Editor Support for Debugging
68dc0745 908
4755096e 909=item The Perl Profiler
68dc0745 910
4755096e 911=back
68dc0745 912
4755096e 913=item Debugging regular expressions
68dc0745 914
4755096e 915=item Debugging memory usage
14218588 916
4755096e 917=item SEE ALSO
68dc0745 918
4755096e 919=item BUGS
68dc0745 920
a45bd81d
GS
921=back
922
c2e66d9e 923=head2 perlvar - Perl predefined variables
68dc0745 924
d420ca49 925=over 4
a45bd81d 926
68dc0745
PP
927=item DESCRIPTION
928
d420ca49 929=over 4
68dc0745 930
c2e66d9e 931=item Predefined Names
68dc0745 932
640374d0 933$ARG, $_, $a, $b, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
354a27bf 934$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*,
53d7eaa8
JH
935HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $,
936IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/,
937HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|,
2a2bf5f4
JH
938IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
939IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS,
940$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
53d7eaa8
JH
941HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%,
942HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=,
943HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START,
2a2bf5f4
JH
944@-, C<$`> is the same as C<substr($var, 0, $-[0])>, C<$&> is the same as
945C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the same as C<substr($var,
946$+[0])>, C<$1> is the same as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2>
947is the same as C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as
53d7eaa8
JH
948C<substr $var, $-[3], $+[3] - $-[3])>, HANDLE->format_name(EXPR),
949$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^,
2a2bf5f4
JH
950IO::Handle->format_line_break_characters EXPR,
951$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR,
952$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, $OS_ERROR,
953$ERRNO, $!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, $PROCESS_ID, $PID,
954$$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID,
955$GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $],
956$COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, %^H,
957$INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04,
9580x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R,
35bf961c
JH
959$EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, $PERL_VERSION,
960$^V, $WARNING, $^W, ${^WARNING_BITS}, ${^WIDE_SYSTEM_CALLS},
961$EXECUTABLE_NAME, $^X, ARGV, $ARGV, @ARGV, @F, @INC, @_, %INC, %ENV,
962$ENV{expr}, %SIG, $SIG{expr}
68dc0745 963
c2e66d9e 964=item Error Indicators
68dc0745 965
c2e66d9e 966=item Technical Note on the Syntax of Variable Names
4755096e 967
c2e66d9e
GS
968=back
969
970=item BUGS
4755096e
GS
971
972=back
973
c2e66d9e 974=head2 perllol - Manipulating Arrays of Arrays in Perl
4755096e 975
d420ca49 976=over 4
c2e66d9e
GS
977
978=item DESCRIPTION
979
4d4e713d
JH
980=over 4
981
c2e66d9e
GS
982=item Declaration and Access of Arrays of Arrays
983
984=item Growing Your Own
985
986=item Access and Printing
987
988=item Slices
989
4d4e713d
JH
990=back
991
c2e66d9e
GS
992=item SEE ALSO
993
994=item AUTHOR
4755096e
GS
995
996=back
997
c2e66d9e 998=head2 perlopentut - tutorial on opening things in Perl
4755096e 999
d420ca49 1000=over 4
4755096e
GS
1001
1002=item DESCRIPTION
1003
c2e66d9e
GS
1004=item Open E<agrave> la shell
1005
d420ca49 1006=over 4
4755096e 1007
c2e66d9e 1008=item Simple Opens
4755096e 1009
c2e66d9e 1010=item Pipe Opens
4755096e 1011
c2e66d9e 1012=item The Minus File
4755096e 1013
c2e66d9e 1014=item Mixing Reads and Writes
4755096e
GS
1015
1016=item Filters
1017
1018=back
1019
1020=item Open E<agrave> la C
1021
d420ca49 1022=over 4
4755096e
GS
1023
1024=item Permissions E<agrave> la mode
1025
1026=back
1027
1028=item Obscure Open Tricks
1029
d420ca49 1030=over 4
4755096e
GS
1031
1032=item Re-Opening Files (dups)
1033
1034=item Dispelling the Dweomer
1035
1036=item Paths as Opens
1037
1038=item Single Argument Open
1039
1040=item Playing with STDIN and STDOUT
1041
1042=back
1043
1044=item Other I/O Issues
1045
d420ca49 1046=over 4
4755096e
GS
1047
1048=item Opening Non-File Files
1049
1050=item Binary Files
1051
1052=item File Locking
1053
1054=back
1055
1056=item SEE ALSO
1057
1058=item AUTHOR and COPYRIGHT
1059
1060=item HISTORY
1061
1062=back
1063
c2e66d9e 1064=head2 perlretut - Perl regular expressions tutorial
4755096e 1065
d420ca49 1066=over 4
4755096e
GS
1067
1068=item DESCRIPTION
1069
c2e66d9e 1070=item Part 1: The basics
4755096e 1071
d420ca49 1072=over 4
4755096e 1073
c2e66d9e 1074=item Simple word matching
4755096e 1075
c2e66d9e 1076=item Using character classes
4755096e 1077
c2e66d9e 1078=item Matching this or that
4755096e 1079
c2e66d9e 1080=item Grouping things and hierarchical matching
4755096e 1081
c2e66d9e 1082=item Extracting matches
4755096e 1083
c2e66d9e 1084=item Matching repetitions
4755096e 1085
c2e66d9e 1086=item Building a regexp
4755096e 1087
c2e66d9e 1088=item Using regular expressions in Perl
4755096e 1089
c2e66d9e 1090=back
4755096e 1091
c2e66d9e 1092=item Part 2: Power tools
4755096e 1093
d420ca49 1094=over 4
4755096e 1095
c2e66d9e 1096=item More on characters, strings, and character classes
4755096e 1097
c2e66d9e 1098=item Compiling and saving regular expressions
4755096e 1099
c2e66d9e 1100=item Embedding comments and modifiers in a regular expression
4755096e 1101
c2e66d9e 1102=item Non-capturing groupings
4755096e 1103
c2e66d9e 1104=item Looking ahead and looking behind
4755096e 1105
c2e66d9e 1106=item Using independent subexpressions to prevent backtracking
4755096e 1107
c2e66d9e 1108=item Conditional expressions
4755096e 1109
c2e66d9e 1110=item A bit of magic: executing Perl code in a regular expression
4755096e 1111
c2e66d9e 1112=item Pragmas and debugging
4755096e
GS
1113
1114=back
1115
c2e66d9e 1116=item BUGS
4755096e 1117
c2e66d9e 1118=item SEE ALSO
4755096e 1119
c2e66d9e 1120=item AUTHOR AND COPYRIGHT
4755096e 1121
d420ca49 1122=over 4
4755096e 1123
c2e66d9e 1124=item Acknowledgments
4755096e
GS
1125
1126=back
1127
4755096e
GS
1128=back
1129
c2e66d9e 1130=head2 perlre - Perl regular expressions
4755096e 1131
d420ca49 1132=over 4
4755096e
GS
1133
1134=item DESCRIPTION
1135
c2e66d9e 1136i, m, s, x
4755096e 1137
d420ca49 1138=over 4
4755096e 1139
c2e66d9e 1140=item Regular Expressions
4755096e 1141
c2e66d9e 1142cntrl, graph, print, punct, xdigit
4755096e 1143
c2e66d9e 1144=item Extended Patterns
4755096e 1145
c2e66d9e
GS
1146C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1147C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
1148code })>, C<(??{ code })>, C<< (?>pattern) >>,
1149C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
4755096e 1150
c2e66d9e 1151=item Backtracking
4755096e 1152
c2e66d9e 1153=item Version 8 Regular Expressions
4755096e 1154
c2e66d9e 1155=item Warning on \1 vs $1
4755096e 1156
c2e66d9e
GS
1157=item Repeated patterns matching zero-length substring
1158
1159=item Combining pieces together
1160
1161C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
1162C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
1163C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
1164C<(?(condition)yes-pattern|no-pattern)>
1165
1166=item Creating custom RE engines
4755096e
GS
1167
1168=back
1169
c2e66d9e 1170=item BUGS
4755096e 1171
c2e66d9e 1172=item SEE ALSO
4755096e 1173
c2e66d9e
GS
1174=back
1175
d396a558
JH
1176=head2 perlref - Perl references and nested data structures
1177
d420ca49 1178=over 4
d396a558
JH
1179
1180=item NOTE
1181
1182=item DESCRIPTION
1183
d420ca49 1184=over 4
d396a558
JH
1185
1186=item Making References
1187
1188=item Using References
1189
1190=item Symbolic references
1191
1192=item Not-so-symbolic references
1193
1194=item Pseudo-hashes: Using an array as a hash
1195
1196=item Function Templates
1197
1198=back
1199
1200=item WARNING
1201
1202=item SEE ALSO
1203
1204=back
1205
c2e66d9e 1206=head2 perlform - Perl formats
4755096e 1207
d420ca49 1208=over 4
4755096e 1209
c2e66d9e 1210=item DESCRIPTION
4755096e 1211
d420ca49 1212=over 4
4755096e 1213
c2e66d9e 1214=item Format Variables
4755096e 1215
c2e66d9e 1216=back
4755096e 1217
c2e66d9e 1218=item NOTES
4755096e 1219
d420ca49 1220=over 4
c2e66d9e
GS
1221
1222=item Footers
1223
1224=item Accessing Formatting Internals
4755096e
GS
1225
1226=back
1227
c2e66d9e 1228=item WARNINGS
4755096e
GS
1229
1230=back
1231
d396a558 1232=head2 perlboot - Beginner's Object-Oriented Tutorial
4755096e 1233
d420ca49 1234=over 4
4755096e
GS
1235
1236=item DESCRIPTION
1237
d420ca49 1238=over 4
c2e66d9e 1239
d396a558
JH
1240=item If we could talk to the animals...
1241
1242=item Introducing the method invocation arrow
1243
1244=item Invoking a barnyard
1245
1246=item The extra parameter of method invocation
1247
1248=item Calling a second method to simplify things
1249
1250=item Inheriting the windpipes
1251
1252=item A few notes about @ISA
1253
1254=item Overriding the methods
1255
1256=item Starting the search from a different place
1257
1258=item The SUPER way of doing things
1259
1260=item Where we're at so far...
1261
1262=item A horse is a horse, of course of course -- or is it?
1263
1264=item Invoking an instance method
1265
1266=item Accessing the instance data
1267
1268=item How to build a horse
1269
1270=item Inheriting the constructor
1271
1272=item Making a method work with either classes or instances
1273
1274=item Adding parameters to a method
1275
1276=item More interesting instances
1277
1278=item A horse of a different color
1279
1280=item Summary
1281
1282=back
1283
1284=item SEE ALSO
1285
1286=item COPYRIGHT
1287
1288=back
1289
1290=head2 perltoot - Tom's object-oriented tutorial for perl
c2e66d9e 1291
d420ca49 1292=over 4
4755096e 1293
d396a558 1294=item DESCRIPTION
4755096e 1295
d396a558 1296=item Creating a Class
4755096e 1297
d420ca49 1298=over 4
4755096e 1299
d396a558 1300=item Object Representation
4755096e 1301
d396a558 1302=item Class Interface
4755096e 1303
d396a558 1304=item Constructors and Instance Methods
c2e66d9e 1305
d396a558 1306=item Planning for the Future: Better Constructors
c2e66d9e 1307
d396a558 1308=item Destructors
c2e66d9e 1309
d396a558 1310=item Other Object Methods
4755096e
GS
1311
1312=back
1313
d396a558 1314=item Class Data
4755096e 1315
d420ca49 1316=over 4
4755096e 1317
d396a558 1318=item Accessing Class Data
4755096e 1319
d396a558 1320=item Debugging Methods
4755096e 1321
d396a558 1322=item Class Destructors
4755096e 1323
d396a558 1324=item Documenting the Interface
4755096e 1325
d396a558 1326=back
4755096e 1327
d396a558
JH
1328=item Aggregation
1329
1330=item Inheritance
1331
d420ca49 1332=over 4
d396a558
JH
1333
1334=item Overridden Methods
1335
1336=item Multiple Inheritance
1337
1338=item UNIVERSAL: The Root of All Objects
4755096e 1339
c2e66d9e 1340=back
4755096e 1341
d396a558 1342=item Alternate Object Representations
4755096e 1343
d420ca49 1344=over 4
4755096e 1345
d396a558 1346=item Arrays as Objects
4755096e 1347
d396a558
JH
1348=item Closures as Objects
1349
1350=back
1351
1352=item AUTOLOAD: Proxy Methods
1353
d420ca49 1354=over 4
d396a558
JH
1355
1356=item Autoloaded Data Methods
1357
1358=item Inherited Autoloaded Data Methods
1359
1360=back
1361
1362=item Metaclassical Tools
1363
d420ca49 1364=over 4
d396a558
JH
1365
1366=item Class::Struct
1367
1368=item Data Members as Variables
4755096e 1369
d420ca49
AD
1370=back
1371
c2e66d9e 1372=item NOTES
4755096e 1373
d420ca49
AD
1374=over 4
1375
d396a558
JH
1376=item Object Terminology
1377
1378=back
1379
1380=item SEE ALSO
1381
1382=item AUTHOR AND COPYRIGHT
1383
1384=item COPYRIGHT
1385
d420ca49 1386=over 4
c2e66d9e 1387
d396a558 1388=item Acknowledgments
c2e66d9e 1389
d396a558 1390=back
c2e66d9e 1391
d396a558 1392=back
c2e66d9e 1393
890a53b9 1394=head2 perltooc - Tom's OO Tutorial for Class Data in Perl
c2e66d9e 1395
d420ca49 1396=over 4
c2e66d9e 1397
d396a558 1398=item DESCRIPTION
c2e66d9e 1399
dc5c060f
JH
1400=item Class Data in a Can
1401
d396a558
JH
1402=item Class Data as Package Variables
1403
d420ca49 1404=over 4
d396a558
JH
1405
1406=item Putting All Your Eggs in One Basket
1407
1408=item Inheritance Concerns
1409
1410=item The Eponymous Meta-Object
1411
1412=item Indirect References to Class Data
1413
1414=item Monadic Classes
1415
1416=item Translucent Attributes
4755096e
GS
1417
1418=back
1419
d396a558 1420=item Class Data as Lexical Variables
4755096e 1421
d420ca49 1422=over 4
4755096e 1423
d396a558
JH
1424=item Privacy and Responsibility
1425
1426=item File-Scoped Lexicals
1427
1428=item More Inheritance Concerns
1429
1430=item Locking the Door and Throwing Away the Key
1431
1432=item Translucency Revisited
4755096e 1433
c2e66d9e 1434=back
4755096e 1435
d396a558
JH
1436=item NOTES
1437
c2e66d9e 1438=item SEE ALSO
4755096e 1439
d396a558
JH
1440=item AUTHOR AND COPYRIGHT
1441
1442=item ACKNOWLEDGEMENTS
1443
c2e66d9e 1444=item HISTORY
4755096e 1445
c2e66d9e 1446=back
4755096e 1447
d396a558 1448=head2 perlobj - Perl objects
4755096e 1449
d420ca49 1450=over 4
4755096e 1451
c2e66d9e 1452=item DESCRIPTION
4755096e 1453
d420ca49 1454=over 4
4755096e 1455
d396a558 1456=item An Object is Simply a Reference
4755096e 1457
d396a558 1458=item A Class is Simply a Package
4755096e 1459
d396a558 1460=item A Method is Simply a Subroutine
4755096e 1461
d396a558 1462=item Method Invocation
4755096e 1463
bd28ded5 1464=item Indirect Object Syntax
d396a558
JH
1465
1466=item Default UNIVERSAL methods
1467
1468isa(CLASS), can(METHOD), VERSION( [NEED] )
1469
1470=item Destructors
1471
1472=item Summary
1473
1474=item Two-Phased Garbage Collection
4755096e 1475
c2e66d9e 1476=back
4755096e 1477
d396a558
JH
1478=item SEE ALSO
1479
1480=back
1481
1482=head2 perlbot - Bag'o Object Tricks (the BOT)
1483
d420ca49 1484=over 4
d396a558
JH
1485
1486=item DESCRIPTION
1487
1488=item OO SCALING TIPS
1489
1490=item INSTANCE VARIABLES
1491
1492=item SCALAR INSTANCE VARIABLES
1493
1494=item INSTANCE VARIABLE INHERITANCE
1495
1496=item OBJECT RELATIONSHIPS
1497
1498=item OVERRIDING SUPERCLASS METHODS
1499
1500=item USING RELATIONSHIP WITH SDBM
1501
1502=item THINKING OF CODE REUSE
1503
1504=item CLASS CONTEXT AND THE OBJECT
1505
1506=item INHERITING A CONSTRUCTOR
1507
1508=item DELEGATION
1509
1510=back
1511
1512=head2 perltie - how to hide an object class in a simple variable
1513
d420ca49 1514=over 4
d396a558
JH
1515
1516=item SYNOPSIS
1517
1518=item DESCRIPTION
1519
d420ca49 1520=over 4
d396a558
JH
1521
1522=item Tying Scalars
1523
93d73c42
JH
1524TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
1525DESTROY this
d396a558
JH
1526
1527=item Tying Arrays
1528
1529TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
165c0277
JH
1530FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
1531key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this,
1532UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY
1533this
d396a558
JH
1534
1535=item Tying Hashes
1536
1537USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
1538this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
93d73c42 1539this, NEXTKEY this, lastkey, UNTIE this, DESTROY this
d396a558
JH
1540
1541=item Tying FileHandles
1542
1543TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
93d73c42
JH
1544LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this,
1545DESTROY this
d396a558 1546
9fa7f388
JH
1547=item UNTIE this
1548
d396a558
JH
1549=item The C<untie> Gotcha
1550
1551=back
4755096e 1552
c2e66d9e 1553=item SEE ALSO
4755096e 1554
d396a558
JH
1555=item BUGS
1556
1557=item AUTHOR
1558
c2e66d9e 1559=back
4755096e 1560
c2e66d9e
GS
1561=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1562safe subprocesses, sockets, and semaphores)
4755096e 1563
d420ca49 1564=over 4
4755096e 1565
c2e66d9e 1566=item DESCRIPTION
4755096e 1567
c2e66d9e 1568=item Signals
4755096e 1569
c2e66d9e 1570=item Named Pipes
4755096e 1571
d420ca49 1572=over 4
4755096e 1573
c2e66d9e 1574=item WARNING
4755096e 1575
c2e66d9e 1576=back
4755096e 1577
c2e66d9e 1578=item Using open() for IPC
4755096e 1579
d420ca49 1580=over 4
4755096e 1581
c2e66d9e 1582=item Filehandles
4755096e 1583
c2e66d9e 1584=item Background Processes
4755096e 1585
c2e66d9e 1586=item Complete Dissociation of Child from Parent
4755096e 1587
c2e66d9e 1588=item Safe Pipe Opens
4755096e 1589
c2e66d9e 1590=item Bidirectional Communication with Another Process
4755096e 1591
c2e66d9e 1592=item Bidirectional Communication with Yourself
4755096e
GS
1593
1594=back
1595
c2e66d9e 1596=item Sockets: Client/Server Communication
4755096e 1597
d420ca49 1598=over 4
4755096e 1599
c2e66d9e 1600=item Internet Line Terminators
4755096e 1601
c2e66d9e 1602=item Internet TCP Clients and Servers
4755096e 1603
c2e66d9e
GS
1604=item Unix-Domain TCP Clients and Servers
1605
1606=back
1607
1608=item TCP Clients with IO::Socket
4755096e 1609
d420ca49 1610=over 4
4755096e 1611
c2e66d9e 1612=item A Simple Client
4755096e 1613
c2e66d9e 1614C<Proto>, C<PeerAddr>, C<PeerPort>
4755096e 1615
c2e66d9e 1616=item A Webget Client
4755096e 1617
c2e66d9e 1618=item Interactive Client with IO::Socket
4755096e 1619
c2e66d9e 1620=back
4755096e 1621
c2e66d9e 1622=item TCP Servers with IO::Socket
4755096e 1623
c2e66d9e 1624Proto, LocalPort, Listen, Reuse
4755096e 1625
c2e66d9e 1626=item UDP: Message Passing
4755096e 1627
c2e66d9e 1628=item SysV IPC
4755096e 1629
c2e66d9e 1630=item NOTES
4755096e 1631
c2e66d9e 1632=item BUGS
4755096e 1633
c2e66d9e 1634=item AUTHOR
4755096e 1635
c2e66d9e 1636=item SEE ALSO
4755096e
GS
1637
1638=back
1639
bd28ded5 1640=head2 perlfork - Perl's fork() emulation (EXPERIMENTAL, subject to change)
4755096e 1641
d420ca49 1642=over 4
4755096e 1643
c2e66d9e
GS
1644=item SYNOPSIS
1645
1646=item DESCRIPTION
4755096e 1647
d420ca49 1648=over 4
4755096e 1649
c2e66d9e 1650=item Behavior of other Perl features in forked pseudo-processes
4755096e 1651
c2e66d9e
GS
1652$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
1653filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
1654files, directories and network sockets
4755096e 1655
c2e66d9e 1656=item Resource limits
4755096e 1657
c2e66d9e 1658=item Killing the parent process
4755096e 1659
c2e66d9e 1660=item Lifetime of the parent process and pseudo-processes
4755096e 1661
c2e66d9e 1662=item CAVEATS AND LIMITATIONS
4755096e 1663
c2e66d9e
GS
1664BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
1665Global state maintained by XSUBs, Interpreter embedded in larger
1666application, Thread-safety of extensions
4755096e 1667
c2e66d9e 1668=back
4755096e 1669
c2e66d9e
GS
1670=item BUGS
1671
1672=item AUTHOR
1673
1674=item SEE ALSO
4755096e
GS
1675
1676=back
1677
c2e66d9e 1678=head2 perlnumber - semantics of numbers and numeric operations in Perl
4755096e 1679
d420ca49 1680=over 4
4755096e 1681
c2e66d9e 1682=item SYNOPSIS
4755096e 1683
c2e66d9e 1684=item DESCRIPTION
4755096e 1685
c2e66d9e 1686=item Storing numbers
4755096e 1687
c2e66d9e 1688=item Numeric operators and numeric conversions
4755096e 1689
c2e66d9e 1690=item Flavors of Perl numeric operations
4755096e 1691
c2e66d9e
GS
1692Arithmetic operators except, C<no integer>, Arithmetic operators except,
1693C<use integer>, Bitwise operators, C<no integer>, Bitwise operators, C<use
1694integer>, Operators which expect an integer, Operators which expect a
1695string
4755096e 1696
c2e66d9e 1697=item AUTHOR
4755096e 1698
c2e66d9e 1699=item SEE ALSO
4755096e
GS
1700
1701=back
1702
c2e66d9e 1703=head2 perlthrtut - tutorial on threads in Perl
4755096e 1704
d420ca49 1705=over 4
4755096e
GS
1706
1707=item DESCRIPTION
1708
53d7eaa8
JH
1709=back
1710
1711=head2 perlothrtut - old tutorial on threads in Perl
1712
1713=over 4
1714
1715=item DESCRIPTION
1716
c2e66d9e 1717=item What Is A Thread Anyway?
4755096e 1718
c2e66d9e 1719=item Threaded Program Models
4755096e 1720
d420ca49 1721=over 4
4755096e 1722
c2e66d9e 1723=item Boss/Worker
4755096e 1724
c2e66d9e 1725=item Work Crew
4755096e 1726
c2e66d9e 1727=item Pipeline
4755096e
GS
1728
1729=back
1730
c2e66d9e 1731=item Native threads
4755096e 1732
c2e66d9e 1733=item What kind of threads are perl threads?
4755096e 1734
c2e66d9e 1735=item Threadsafe Modules
4755096e 1736
c2e66d9e 1737=item Thread Basics
4755096e 1738
d420ca49 1739=over 4
4755096e 1740
c2e66d9e 1741=item Basic Thread Support
4755096e 1742
c2e66d9e 1743=item Creating Threads
4755096e 1744
c2e66d9e 1745=item Giving up control
4755096e 1746
c2e66d9e 1747=item Waiting For A Thread To Exit
4755096e 1748
c2e66d9e 1749=item Errors In Threads
4755096e 1750
c2e66d9e 1751=item Ignoring A Thread
4755096e
GS
1752
1753=back
1754
c2e66d9e 1755=item Threads And Data
4755096e 1756
d420ca49 1757=over 4
4755096e 1758
c2e66d9e 1759=item Shared And Unshared Data
4755096e 1760
c2e66d9e 1761=item Thread Pitfall: Races
4755096e 1762
c2e66d9e 1763=item Controlling access: lock()
4755096e 1764
c2e66d9e 1765=item Thread Pitfall: Deadlocks
4755096e 1766
c2e66d9e 1767=item Queues: Passing Data Around
4755096e 1768
c2e66d9e 1769=back
4755096e 1770
c2e66d9e 1771=item Threads And Code
4755096e 1772
d420ca49 1773=over 4
4755096e 1774
c2e66d9e 1775=item Semaphores: Synchronizing Data Access
4755096e 1776
c2e66d9e 1777Basic semaphores, Advanced Semaphores
4755096e 1778
c2e66d9e 1779=item Attributes: Restricting Access To Subroutines
4755096e 1780
c2e66d9e 1781=item Subroutine Locks
4755096e 1782
c2e66d9e 1783=item Methods
4755096e 1784
c2e66d9e 1785=item Locking A Subroutine
4755096e
GS
1786
1787=back
1788
c2e66d9e 1789=item General Thread Utility Routines
4755096e 1790
d420ca49 1791=over 4
4755096e 1792
c2e66d9e 1793=item What Thread Am I In?
4755096e 1794
c2e66d9e 1795=item Thread IDs
4755096e 1796
c2e66d9e 1797=item Are These Threads The Same?
4755096e 1798
c2e66d9e 1799=item What Threads Are Running?
4755096e 1800
c2e66d9e 1801=back
4755096e 1802
c2e66d9e 1803=item A Complete Example
4755096e 1804
c2e66d9e 1805=item Conclusion
4755096e 1806
c2e66d9e 1807=item Bibliography
4755096e 1808
d420ca49 1809=over 4
4755096e 1810
c2e66d9e 1811=item Introductory Texts
4755096e 1812
c2e66d9e 1813=item OS-Related References
4755096e 1814
c2e66d9e 1815=item Other References
4755096e
GS
1816
1817=back
1818
c2e66d9e 1819=item Acknowledgements
4755096e 1820
c2e66d9e 1821=item AUTHOR
4755096e 1822
c2e66d9e 1823=item Copyrights
4755096e 1824
c2e66d9e 1825=back
4755096e 1826
c2e66d9e 1827=head2 perlport - Writing portable Perl
4755096e 1828
d420ca49 1829=over 4
4755096e 1830
c2e66d9e 1831=item DESCRIPTION
4755096e 1832
c2e66d9e
GS
1833Not all Perl programs have to be portable, Nearly all of Perl already I<is>
1834portable
4755096e 1835
c2e66d9e 1836=item ISSUES
4755096e 1837
d420ca49 1838=over 4
4755096e 1839
c2e66d9e 1840=item Newlines
4755096e 1841
c2e66d9e 1842=item Numbers endianness and Width
4755096e 1843
c2e66d9e 1844=item Files and Filesystems
4755096e 1845
c2e66d9e 1846=item System Interaction
4755096e 1847
c2e66d9e 1848=item Interprocess Communication (IPC)
4755096e 1849
c2e66d9e 1850=item External Subroutines (XS)
4755096e 1851
c2e66d9e 1852=item Standard Modules
4755096e 1853
c2e66d9e 1854=item Time and Date
4755096e 1855
c2e66d9e 1856=item Character sets and character encoding
4755096e 1857
c2e66d9e 1858=item Internationalisation
4755096e 1859
c2e66d9e 1860=item System Resources
4755096e 1861
c2e66d9e 1862=item Security
4755096e 1863
c2e66d9e 1864=item Style
4755096e
GS
1865
1866=back
1867
c2e66d9e 1868=item CPAN Testers
4755096e 1869
c2e66d9e
GS
1870Mailing list: cpan-testers@perl.org, Testing results:
1871http://testers.cpan.org/
4755096e 1872
c2e66d9e 1873=item PLATFORMS
4755096e 1874
d420ca49 1875=over 4
4755096e 1876
c2e66d9e 1877=item Unix
4755096e 1878
c2e66d9e 1879=item DOS and Derivatives
4755096e 1880
c2e66d9e 1881=item S<Mac OS>
4755096e 1882
c2e66d9e 1883=item VMS
4755096e 1884
c2e66d9e 1885=item VOS
4755096e 1886
c2e66d9e 1887=item EBCDIC Platforms
4755096e 1888
c2e66d9e 1889=item Acorn RISC OS
4755096e 1890
c2e66d9e 1891=item Other perls
4755096e
GS
1892
1893=back
1894
c2e66d9e 1895=item FUNCTION IMPLEMENTATIONS
4755096e 1896
d420ca49 1897=over 4
4755096e 1898
c2e66d9e
GS
1899=item Alphabetical Listing of Perl Functions
1900
1901-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, alarm SECONDS, alarm, binmode
1902FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt
1903PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec
1904LIST, fcntl FILEHANDLE,FUNCTION,SCALAR, flock FILEHANDLE,OPERATION, fork,
1905getlogin, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME,
1906getgrnam NAME, getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr
1907ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent,
1908getgrent, gethostent, getnetent, getprotoent, getservent, setpwent,
1909setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN,
1910setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent,
758a5d79
JH
1911endprotoent, endservent, exit EXPR, exit, getsockopt SOCKET,LEVEL,OPTNAME,
1912glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, kill SIGNAL, LIST, link
1913OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG,
1914msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open
1915FILEHANDLE,EXPR, open FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink
1916EXPR, readlink, select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG,
1917semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP,
c2e66d9e
GS
1918setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt
1919SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS,
80cbd5ad
JH
1920shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET,
1921socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat
1922EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
d396a558
JH
1923FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
1924FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
1925wait, waitpid PID,FLAGS
4755096e 1926
d396a558 1927=back
4755096e 1928
d396a558 1929=item CHANGES
4755096e 1930
603b90a8
JH
1931v1.48, 02 February 2001, v1.47, 22 March 2000, v1.46, 12 February 2000,
1932v1.45, 20 December 1999, v1.44, 19 July 1999, v1.43, 24 May 1999, v1.42, 22
1933May 1999, v1.41, 19 May 1999, v1.40, 11 April 1999, v1.39, 11 February
19341999, v1.38, 31 December 1998, v1.37, 19 December 1998, v1.36, 9 September
19351998, v1.35, 13 August 1998, v1.33, 06 August 1998, v1.32, 05 August 1998,
1936v1.30, 03 August 1998, v1.23, 10 July 1998
4755096e 1937
d396a558 1938=item Supported Platforms
4755096e 1939
d396a558 1940=item SEE ALSO
4755096e 1941
d396a558 1942=item AUTHORS / CONTRIBUTORS
4755096e 1943
d396a558 1944=item VERSION
4755096e
GS
1945
1946=back
1947
d396a558
JH
1948=head2 perllocale - Perl locale handling (internationalization and
1949localization)
4755096e 1950
d420ca49 1951=over 4
4755096e 1952
d396a558 1953=item DESCRIPTION
4755096e 1954
d396a558
JH
1955=item PREPARING TO USE LOCALES
1956
1957=item USING LOCALES
4755096e 1958
d420ca49 1959=over 4
4755096e 1960
d396a558 1961=item The use locale pragma
4755096e 1962
d396a558 1963=item The setlocale function
4755096e 1964
d396a558 1965=item Finding locales
4755096e 1966
d396a558 1967=item LOCALE PROBLEMS
4755096e 1968
d396a558 1969=item Temporarily fixing locale problems
4755096e 1970
d396a558 1971=item Permanently fixing locale problems
4755096e 1972
d396a558 1973=item Permanently fixing your system's locale configuration
4755096e 1974
d396a558 1975=item Fixing system locale configuration
4755096e 1976
d396a558 1977=item The localeconv function
4755096e 1978
d0363f02
JH
1979=item I18N::Langinfo
1980
4755096e
GS
1981=back
1982
d396a558 1983=item LOCALE CATEGORIES
4755096e 1984
d420ca49 1985=over 4
4755096e 1986
d396a558 1987=item Category LC_COLLATE: Collation
4755096e 1988
d396a558 1989=item Category LC_CTYPE: Character Types
4755096e 1990
d396a558 1991=item Category LC_NUMERIC: Numeric Formatting
4755096e 1992
d396a558 1993=item Category LC_MONETARY: Formatting of monetary amounts
4755096e 1994
d396a558 1995=item LC_TIME
4755096e 1996
d396a558 1997=item Other categories
4755096e 1998
d396a558 1999=back
4755096e 2000
d396a558 2001=item SECURITY
4755096e 2002
d396a558 2003=item ENVIRONMENT
4755096e 2004
d396a558
JH
2005PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
2006LC_NUMERIC, LC_TIME, LANG
4755096e 2007
d396a558 2008=item NOTES
4755096e 2009
d420ca49 2010=over 4
4755096e 2011
d396a558 2012=item Backward compatibility
4755096e 2013
d396a558 2014=item I18N:Collate obsolete
4755096e 2015
d396a558 2016=item Sort speed and memory use impacts
4755096e 2017
d396a558 2018=item write() and LC_NUMERIC
4755096e 2019
d396a558 2020=item Freely available locale definitions
4755096e 2021
d396a558 2022=item I18n and l10n
4755096e 2023
d396a558 2024=item An imperfect standard
4755096e
GS
2025
2026=back
2027
d396a558 2028=item BUGS
4755096e 2029
d420ca49 2030=over 4
4755096e 2031
d396a558 2032=item Broken systems
4755096e
GS
2033
2034=back
2035
2036=item SEE ALSO
2037
d396a558 2038=item HISTORY
4755096e
GS
2039
2040=back
2041
d396a558 2042=head2 perlunicode - Unicode support in Perl
4755096e 2043
d420ca49 2044=over 4
4755096e
GS
2045
2046=item DESCRIPTION
2047
d420ca49 2048=over 4
4755096e 2049
e42c74e1 2050=item Important Caveats
4755096e 2051
d396a558 2052Input and Output Disciplines, Regular Expressions, C<use utf8> still needed
ad0029c4 2053to enable UTF-8/UTF-EBCDIC in scripts
4755096e 2054
d396a558 2055=item Byte and Character semantics
4755096e 2056
d396a558 2057=item Effects of character semantics
4755096e 2058
fbe3d936
JH
2059=item Scripts
2060
2061=item Blocks
2062
d396a558 2063=item Character encodings for input and output
4755096e 2064
d396a558
JH
2065=back
2066
2067=item CAVEATS
2068
e61ecf27
JH
2069=item UNICODE REGULAR EXPRESSION SUPPORT LEVEL
2070
d396a558 2071=item SEE ALSO
4755096e
GS
2072
2073=back
2074
d396a558 2075=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
4755096e 2076
d420ca49 2077=over 4
4755096e 2078
d396a558 2079=item DESCRIPTION
4755096e 2080
d396a558 2081=item COMMON CHARACTER CODE SETS
4755096e 2082
d420ca49 2083=over 4
4755096e 2084
d396a558 2085=item ASCII
4755096e 2086
d396a558 2087=item ISO 8859
4755096e 2088
d396a558 2089=item Latin 1 (ISO 8859-1)
4755096e 2090
d396a558 2091=item EBCDIC
4755096e 2092
d396a558 2093=item 13 variant characters
4755096e 2094
d396a558 2095=item 0037
4755096e 2096
d396a558 2097=item 1047
4755096e 2098
d396a558 2099=item POSIX-BC
4755096e 2100
41ca3a40
JH
2101=item Unicode and UTF
2102
4755096e
GS
2103=back
2104
d396a558 2105=item SINGLE OCTET TABLES
4755096e 2106
41ca3a40 2107recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
4755096e 2108
d396a558 2109=item IDENTIFYING CHARACTER CODE SETS
4755096e 2110
d396a558 2111=item CONVERSIONS
4755096e 2112
d420ca49 2113=over 4
37d4d706
JH
2114
2115=item tr///
2116
2117=item iconv
2118
2119=item C RTL
2120
2121=back
2122
d396a558 2123=item OPERATOR DIFFERENCES
4755096e 2124
d396a558 2125=item FUNCTION DIFFERENCES
4755096e 2126
d396a558 2127chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
4755096e 2128
d396a558 2129=item REGULAR EXPRESSION DIFFERENCES
4755096e 2130
d396a558 2131=item SOCKETS
4755096e 2132
d396a558 2133=item SORTING
4755096e 2134
d420ca49 2135=over 4
4755096e 2136
9fa7f388 2137=item Ignore ASCII vs. EBCDIC sort differences.
4755096e 2138
9fa7f388 2139=item MONO CASE then sort data.
4755096e 2140
9fa7f388 2141=item Convert, sort data, then re convert.
4755096e 2142
d396a558 2143=item Perform sorting on one type of machine only.
4755096e
GS
2144
2145=back
2146
41ca3a40 2147=item TRANSFORMATION FORMATS
37d4d706 2148
d420ca49 2149=over 4
37d4d706
JH
2150
2151=item URL decoding and encoding
2152
2153=item uu encoding and decoding
2154
2155=item Quoted-Printable encoding and decoding
2156
41ca3a40 2157=item Caesarian ciphers
37d4d706
JH
2158
2159=back
2160
2161=item Hashing order and checksums
4755096e 2162
d396a558 2163=item I18N AND L10N
4755096e 2164
d396a558 2165=item MULTI OCTET CHARACTER SETS
4755096e 2166
d396a558 2167=item OS ISSUES
4755096e 2168
d420ca49 2169=over 4
4755096e 2170
d396a558 2171=item OS/400
7029d033 2172
d396a558 2173IFS access
4755096e 2174
41ca3a40 2175=item OS/390, z/OS
4755096e 2176
41ca3a40 2177chcp, dataset access, OS/390, z/OS iconv, locales
4755096e 2178
d396a558 2179=item VM/ESA?
4755096e 2180
d396a558 2181=item POSIX-BC?
4755096e 2182
d396a558 2183=back
4755096e 2184
9fa7f388
JH
2185=item BUGS
2186
b3b6085d
PP
2187=item SEE ALSO
2188
d396a558 2189=item REFERENCES
c2e66d9e 2190
41ca3a40
JH
2191=item HISTORY
2192
d396a558 2193=item AUTHOR
4755096e
GS
2194
2195=back
2196
d396a558 2197=head2 perlsec - Perl security
4755096e 2198
d420ca49 2199=over 4
4755096e 2200
4755096e
GS
2201=item DESCRIPTION
2202
d420ca49 2203=over 4
4755096e 2204
d396a558 2205=item Laundering and Detecting Tainted Data
4755096e 2206
d396a558 2207=item Switches On the "#!" Line
4755096e 2208
d396a558 2209=item Cleaning Up Your Path
c2e66d9e 2210
d396a558 2211=item Security Bugs
c2e66d9e 2212
d396a558 2213=item Protecting Your Programs
4755096e
GS
2214
2215=back
2216
c2e66d9e
GS
2217=item SEE ALSO
2218
4755096e
GS
2219=back
2220
c2e66d9e 2221=head2 perlmod - Perl modules (packages and symbol tables)
4755096e 2222
d420ca49 2223=over 4
4755096e
GS
2224
2225=item DESCRIPTION
2226
d420ca49 2227=over 4
4755096e 2228
c2e66d9e 2229=item Packages
4755096e 2230
c2e66d9e 2231=item Symbol Tables
4755096e 2232
c2e66d9e 2233=item Package Constructors and Destructors
4755096e 2234
c2e66d9e 2235=item Perl Classes
4755096e 2236
c2e66d9e 2237=item Perl Modules
4755096e 2238
a6fb92f1
JH
2239=item Making your module threadsafe
2240
4755096e
GS
2241=back
2242
c2e66d9e 2243=item SEE ALSO
4755096e 2244
c2e66d9e 2245=back
4755096e 2246
35bf961c
JH
2247=head2 perlmodinstall - Installing CPAN Modules
2248
2249=over 4
2250
2251=item DESCRIPTION
2252
2253=over 4
2254
2255=item PREAMBLE
2256
2257B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
2258module (sometimes unnecessary), B<INSTALL> the module
2259
2260=back
2261
2262=item PORTABILITY
2263
2264=item HEY
2265
2266=item AUTHOR
2267
2268=item COPYRIGHT
2269
2270=back
2271
c2e66d9e 2272=head2 perlmodlib - constructing new Perl modules and finding existing ones
4755096e 2273
d420ca49 2274=over 4
4755096e 2275
c2e66d9e 2276=item DESCRIPTION
4755096e 2277
c2e66d9e 2278=item THE PERL MODULE LIBRARY
4755096e 2279
d420ca49 2280=over 4
4755096e 2281
c2e66d9e 2282=item Pragmatic Modules
4755096e 2283
c2e66d9e 2284attributes, attrs, autouse, base, blib, bytes, charnames, constant,
d420ca49 2285diagnostics, fields, filetest, integer, less, locale, open, ops, overload,
e61ecf27
JH
2286re, sigtrap, strict, subs, threads, utf8, vars, warnings,
2287warnings::register
4755096e 2288
c2e66d9e 2289=item Standard Modules
4755096e 2290
dc6b6eef
JH
2291AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata,
2292B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug,
2293B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash,
2294B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp,
2295CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util,
2296CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA,
2297Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, Digest, DirHandle,
2298Dumpvalue, Encode, Encode::EncodeFormat, Encode::Tcl, English, Env,
2299Exporter, Exporter::Heavy, ExtUtils::Command, ExtUtils::Constant,
2300ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
a6fb92f1
JH
2301ExtUtils::MM_Cygwin, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_Unix,
2302ExtUtils::MM_VMS, ExtUtils::MM_Win32, ExtUtils::MakeMaker,
2303ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists,
2304ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename,
2305File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find,
2306File::Path, File::Spec, File::Spec::Epoc, File::Spec::Functions,
2307File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS,
2308File::Spec::Win32, File::Temp, File::stat, FileCache, FileHandle,
2309Filter::Simple, FindBin, Getopt::Long, Getopt::Std, I18N::Collate,
2310I18N::LangTags, I18N::LangTags::List, IO, IPC::Open2, IPC::Open3,
e61ecf27
JH
2311Lingua::KO::Hangul::Util, Locale::Constants, Locale::Country,
2312Locale::Currency, Locale::Language, Locale::Maketext,
2313Locale::Maketext::TPJ13, Math::BigFloat, Math::BigInt, Math::BigInt::Calc,
2314Math::Complex, Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire,
2315Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File,
2316Memoize::SDBM_File, Memoize::Saves, Memoize::Storable, NDBM_File, NEXT,
2317Net::Cmd, Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc,
2318Net::POP3, Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ,
2319Net::netent, Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX,
2320PerlIO, Pod::Checker, Pod::Find, Pod::Html, Pod::InputObjects, Pod::LaTeX,
389925df
JH
2321Pod::Man, Pod::ParseUtils, Pod::Parser, Pod::Plainer, Pod::Select,
2322Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap,
2323Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell,
2324Socket, Storable, Switch, Symbol, Term::ANSIColor, Term::Cap,
2325Term::Complete, Term::ReadLine, Test, Test::Harness, Test::More,
e61ecf27
JH
2326Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced,
2327Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Array,
51a35ef1 2328Tie::Handle, Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash,
e61ecf27
JH
2329Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL,
2330Unicode::Collate, Unicode::Normalize, Unicode::UCD, User::grent,
2331User::pwent, Win32
4755096e 2332
c2e66d9e 2333=item Extension Modules
4755096e 2334
c2e66d9e 2335=back
4755096e 2336
c2e66d9e 2337=item CPAN
4755096e 2338
603b90a8
JH
2339=over 4
2340
2341=item Africa
2342
2343=item Asia
2344
2345=item Central America
2346
2347=item Europe
2348
2349=item North America
2350
2351=item Oceania
2352
2353=item South America
2354
2355=back
4755096e 2356
c2e66d9e 2357=item Modules: Creation, Use, and Abuse
4755096e 2358
d420ca49 2359=over 4
4755096e 2360
c2e66d9e 2361=item Guidelines for Module Creation
4755096e 2362
603b90a8 2363Adding a Copyright Notice
4755096e 2364
c2e66d9e 2365=item Guidelines for Converting Perl 4 Library Scripts into Modules
4755096e 2366
c2e66d9e 2367=item Guidelines for Reusing Application Code
4755096e 2368
c2e66d9e 2369=back
4755096e 2370
c2e66d9e 2371=item NOTE
4755096e 2372
c2e66d9e 2373=back
4755096e 2374
35bf961c 2375=head2 perlmodstyle - Perl module style guide
4755096e 2376
d420ca49 2377=over 4
4755096e 2378
35bf961c
JH
2379=item INTRODUCTION
2380
2381=item QUICK CHECKLIST
4755096e 2382
d420ca49 2383=over 4
4755096e 2384
35bf961c 2385=item Before you start
4755096e 2386
35bf961c
JH
2387=item The API
2388
2389=item Stability
2390
2391=item Documentation
2392
2393=item Release considerations
4755096e 2394
c2e66d9e 2395=back
4755096e 2396
35bf961c 2397=item BEFORE YOU START WRITING A MODULE
a9ef4385 2398
35bf961c 2399=over 4
c2e66d9e 2400
35bf961c 2401=item Has it been done before?
c2e66d9e 2402
35bf961c
JH
2403=item Do one thing and do it well
2404
2405=item What's in a name?
2406
2407=back
2408
2409=item DESIGNING AND WRITING YOUR MODULE
2410
2411=over 4
2412
2413=item To OO or not to OO?
2414
2415=item Designing your API
2416
2417Write simple routines to do simple things, Separate functionality from
2418output, Provide sensible shortcuts and defaults, Naming conventions,
2419Parameter passing
2420
2421=item Strictness and warnings
2422
2423=item Backwards compatibility
2424
2425=item Error handling and messages
2426
2427=back
2428
2429=item DOCUMENTING YOUR MODULE
2430
2431=over 4
2432
2433=item POD
2434
2435=item README, INSTALL, release notes, changelogs
2436
2437=back
2438
2439=item RELEASE CONSIDERATIONS
2440
2441=over 4
2442
2443=item Version numbering
2444
2445=item Pre-requisites
2446
2447=item Testing
2448
2449=item Packaging
2450
2451=item Licensing
2452
2453=back
2454
2455=item COMMON PITFALLS
2456
2457=over 4
2458
2459=item Reinventing the wheel
2460
2461=item Trying to do too much
2462
2463=item Inappropriate documentation
2464
2465=back
2466
2467=item SEE ALSO
2468
2469L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Testing tools,
2470http://pause.perl.org/, Any good book on software engineering
2471
2472=item AUTHOR
4755096e
GS
2473
2474=back
2475
c2e66d9e 2476=head2 perlnewmod - preparing a new module for distribution
4755096e 2477
d420ca49 2478=over 4
4755096e 2479
c2e66d9e 2480=item DESCRIPTION
4755096e 2481
d420ca49 2482=over 4
4755096e 2483
c2e66d9e 2484=item Warning
4755096e 2485
c2e66d9e 2486=item What should I make into a module?
4755096e 2487
c2e66d9e 2488=item Step-by-step: Preparing the ground
4755096e 2489
c2e66d9e 2490Look around, Check it's new, Discuss the need, Choose a name, Check again
4755096e 2491
c2e66d9e 2492=item Step-by-step: Making the module
4755096e 2493
c2e66d9e 2494Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
4d4e713d
JH
2495L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
2496documentation|perlpod>, Write tests, Write the README
4755096e 2497
c2e66d9e 2498=item Step-by-step: Distributing your module
4755096e 2499
c2e66d9e
GS
2500Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
2501tarball, Announce to the modules list, Announce to clpa, Fix bugs!
4755096e 2502
c2e66d9e 2503=back
4755096e 2504
c2e66d9e 2505=item AUTHOR
4755096e 2506
c2e66d9e 2507=item SEE ALSO
4755096e
GS
2508
2509=back
2510
e61ecf27
JH
2511=head2 perlfaq1 - General Questions About Perl ($Revision: 1.1 $, $Date:
25122001/09/20 03:03:00 $)
4755096e 2513
d420ca49 2514=over 4
4755096e
GS
2515
2516=item DESCRIPTION
2517
d420ca49 2518=over 4
4755096e
GS
2519
2520=item What is Perl?
2521
2522=item Who supports Perl? Who develops it? Why is it free?
2523
2524=item Which version of Perl should I use?
2525
2526=item What are perl4 and perl5?
2527
2528=item What is perl6?
2529
2530=item How stable is Perl?
2531
2532=item Is Perl difficult to learn?
2533
2534=item How does Perl compare with other languages like Java, Python, REXX,
2535Scheme, or Tcl?
2536
2537=item Can I do [task] in Perl?
2538
2539=item When shouldn't I program in Perl?
2540
2541=item What's the difference between "perl" and "Perl"?
2542
2543=item Is it a Perl program or a Perl script?
2544
2545=item What is a JAPH?
2546
2547=item Where can I get a list of Larry Wall witticisms?
2548
165c0277
JH
2549=item How can I convince my sysadmin/supervisor/employees to use version
25505/5.005/Perl instead of some other language?
4755096e
GS
2551
2552=back
2553
2554=item AUTHOR AND COPYRIGHT
2555
2556=back
2557
10151d09
JH
2558=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.2 $,
2559$Date: 2001/10/16 13:27:22 $)
4755096e 2560
d420ca49 2561=over 4
4755096e
GS
2562
2563=item DESCRIPTION
2564
d420ca49 2565=over 4
4755096e
GS
2566
2567=item What machines support Perl? Where do I get it?
2568
2569=item How can I get a binary version of Perl?
2570
2571=item I don't have a C compiler on my system. How can I compile perl?
2572
2573=item I copied the Perl binary from one machine to another, but scripts
2574don't work.
2575
2576=item I grabbed the sources and tried to compile but gdbm/dynamic
2577loading/malloc/linking/... failed. How do I make it work?
2578
2579=item What modules and extensions are available for Perl? What is CPAN?
2580What does CPAN/src/... mean?
2581
2582=item Is there an ISO or ANSI certified version of Perl?
2583
2584=item Where can I get information on Perl?
2585
2586=item What are the Perl newsgroups on Usenet? Where do I post questions?
2587
2588=item Where should I post source code?
2589
2590=item Perl Books
2591
2592References, Tutorials, Task-Oriented, Special Topics
2593
2594=item Perl in Magazines
2595
2596=item Perl on the Net: FTP and WWW Access
2597
2598=item What mailing lists are there for Perl?
2599
2600=item Archives of comp.lang.perl.misc
2601
2602=item Where can I buy a commercial version of Perl?
2603
2604=item Where do I send bug reports?
2605
2606=item What is perl.com? Perl Mongers? pm.org? perl.org?
2607
2608=back
2609
2610=item AUTHOR AND COPYRIGHT
2611
2612=back
2613
10151d09
JH
2614=head2 perlfaq3 - Programming Tools ($Revision: 1.8 $, $Date: 2001/10/17
261514:14:20 $)
4755096e 2616
d420ca49 2617=over 4
4755096e
GS
2618
2619=item DESCRIPTION
2620
d420ca49 2621=over 4
4755096e
GS
2622
2623=item How do I do (anything)?
2624
2625=item How can I use Perl interactively?
2626
2627=item Is there a Perl shell?
2628
2629=item How do I debug my Perl programs?
2630
2631=item How do I profile my Perl programs?
2632
2633=item How do I cross-reference my Perl programs?
2634
2635=item Is there a pretty-printer (formatter) for Perl?
2636
2637=item Is there a ctags for Perl?
2638
2639=item Is there an IDE or Windows Perl Editor?
2640
245d750e
JH
2641Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+,
2642CodeMagicCD, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright,
603b90a8
JH
2643MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
2644
4755096e
GS
2645=item Where can I get Perl macros for vi?
2646
2647=item Where can I get perl-mode for emacs?
2648
2649=item How can I use curses with Perl?
2650
2651=item How can I use X or Tk with Perl?
2652
2653=item How can I generate simple menus without using CGI or Tk?
2654
2655=item What is undump?
2656
2657=item How can I make my Perl program run faster?
2658
2659=item How can I make my Perl program take less memory?
2660
35bf961c
JH
2661Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
2662stringification, Pass by reference, Tie large variables to disk
2663
4755096e
GS
2664=item Is it unsafe to return a pointer to local data?
2665
2666=item How can I free an array or hash so my program shrinks?
2667
2668=item How can I make my CGI script more efficient?
2669
2670=item How can I hide the source for my Perl program?
2671
2672=item How can I compile my Perl program into byte code or C?
2673
2674=item How can I compile Perl into Java?
2675
2676=item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2677
2678=item Can I write useful Perl programs on the command line?
2679
2680=item Why don't Perl one-liners work on my DOS/Mac/VMS system?
2681
2682=item Where can I learn about CGI or Web programming in Perl?
2683
4755096e
GS
2684=item Where can I learn about linking C with Perl? [h2xs, xsubpp]
2685
2686=item I've read perlembed, perlguts, etc., but I can't embed perl in
d420ca49 2687my C program; what am I doing wrong?
4755096e
GS
2688
2689=item When I tried to run my script, I got this message. What does it
2690mean?
2691
2692=item What's MakeMaker?
2693
2694=back
2695
2696=item AUTHOR AND COPYRIGHT
2697
2698=back
2699
35bf961c
JH
2700=head2 perlfaq4 - Data Manipulation ($Revision: 1.5 $, $Date: 2001/10/12
270115:20:13 $)
4755096e 2702
d420ca49 2703=over 4
4755096e
GS
2704
2705=item DESCRIPTION
2706
2707=item Data: Numbers
2708
d420ca49 2709=over 4
4755096e
GS
2710
2711=item Why am I getting long decimals (eg, 19.9499999999999) instead of the
2712numbers I should be getting (eg, 19.95)?
2713
2714=item Why isn't my octal data interpreted correctly?
2715
2716=item Does Perl have a round() function? What about ceil() and floor()?
2717Trig functions?
2718
2719=item How do I convert bits into ints?
2720
2721=item Why doesn't & work the way I want it to?
2722
2723=item How do I multiply matrices?
2724
2725=item How do I perform an operation on a series of integers?
2726
2727=item How can I output Roman numerals?
2728
2729=item Why aren't my random numbers random?
2730
2731=back
2732
2733=item Data: Dates
2734
d420ca49 2735=over 4
4755096e
GS
2736
2737=item How do I find the week-of-the-year/day-of-the-year?
2738
2739=item How do I find the current century or millennium?
2740
2741=item How can I compare two dates and find the difference?
2742
2743=item How can I take a string and turn it into epoch seconds?
2744
2745=item How can I find the Julian Day?
2746
2747=item How do I find yesterday's date?
2748
2749=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant?
2750
2751=back
2752
2753=item Data: Strings
2754
d420ca49 2755=over 4
4755096e
GS
2756
2757=item How do I validate input?
2758
2759=item How do I unescape a string?
2760
2761=item How do I remove consecutive pairs of characters?
2762
2763=item How do I expand function calls in a string?
2764
2765=item How do I find matching/nesting anything?
2766
2767=item How do I reverse a string?
2768
2769=item How do I expand tabs in a string?
2770
2771=item How do I reformat a paragraph?
2772
2773=item How can I access/change the first N letters of a string?
2774
2775=item How do I change the Nth occurrence of something?
2776
2777=item How can I count the number of occurrences of a substring within a
2778string?
2779
2780=item How do I capitalize all the words on one line?
2781
2782=item How can I split a [character] delimited string except when inside
2783[character]? (Comma-separated files)
2784
2785=item How do I strip blank space from the beginning/end of a string?
2786
2787=item How do I pad a string with blanks or pad a number with zeroes?
2788
2789=item How do I extract selected columns from a string?
2790
2791=item How do I find the soundex value of a string?
2792
2793=item How can I expand variables in text strings?
2794
2795=item What's wrong with always quoting "$vars"?
2796
2797=item Why don't my <<HERE documents work?
2798
27991. There must be no space after the << part, 2. There (probably) should be
2800a semicolon at the end, 3. You can't (easily) have any space in front of
2801the tag
2802
2803=back
2804
2805=item Data: Arrays
2806
d420ca49 2807=over 4
4755096e
GS
2808
2809=item What is the difference between a list and an array?
2810
2811=item What is the difference between $array[1] and @array[1]?
2812
2813=item How can I remove duplicate elements from a list or array?
2814
ab648d5e 2815a), b), c), d), e)
4755096e 2816
389925df
JH
2817=item How can I tell whether a certain element is contained in a list or
2818array?
4755096e
GS
2819
2820=item How do I compute the difference of two arrays? How do I compute the
2821intersection of two arrays?
2822
2823=item How do I test whether two arrays or hashes are equal?
2824
2825=item How do I find the first array element for which a condition is true?
2826
2827=item How do I handle linked lists?
2828
2829=item How do I handle circular lists?
2830
2831=item How do I shuffle an array randomly?
2832
2833=item How do I process/modify each element of an array?
2834
2835=item How do I select a random element from an array?
2836
2837=item How do I permute N elements of a list?
2838
2839=item How do I sort an array by (anything)?
2840
2841=item How do I manipulate arrays of bits?
2842
2843=item Why does defined() return true on empty arrays and hashes?
2844
2845=back
2846
2847=item Data: Hashes (Associative Arrays)
2848
d420ca49 2849=over 4
4755096e
GS
2850
2851=item How do I process an entire hash?
2852
2853=item What happens if I add or remove keys from a hash while iterating over
2854it?
2855
2856=item How do I look up a hash element by value?
2857
2858=item How can I know how many entries are in a hash?
2859
2860=item How do I sort a hash (optionally by value instead of key)?
2861
2862=item How can I always keep my hash sorted?
2863
2864=item What's the difference between "delete" and "undef" with hashes?
2865
2866=item Why don't my tied hashes make the defined/exists distinction?
2867
2868=item How do I reset an each() operation part-way through?
2869
2870=item How can I get the unique keys from two hashes?
2871
2872=item How can I store a multidimensional array in a DBM file?
2873
2874=item How can I make my hash remember the order I put elements into it?
2875
2876=item Why does passing a subroutine an undefined element in a hash create
2877it?
2878
2879=item How can I make the Perl equivalent of a C structure/C++ class/hash or
2880array of hashes or arrays?
2881
2882=item How can I use a reference as a hash key?
2883
2884=back
2885
2886=item Data: Misc
2887
d420ca49 2888=over 4
4755096e
GS
2889
2890=item How do I handle binary data correctly?
2891
2892=item How do I determine whether a scalar is a number/whole/integer/float?
2893
2894=item How do I keep persistent data across program calls?
2895
2896=item How do I print out or copy a recursive data structure?
2897
2898=item How do I define methods for every class/object?
2899
2900=item How do I verify a credit card checksum?
2901
2902=item How do I pack arrays of doubles or floats for XS code?
2903
2904=back
2905
2906=item AUTHOR AND COPYRIGHT
2907
2908=back
2909
10151d09
JH
2910=head2 perlfaq5 - Files and Formats ($Revision: 1.3 $, $Date: 2001/10/16
291113:27:22 $)
4755096e 2912
d420ca49 2913=over 4
4755096e
GS
2914
2915=item DESCRIPTION
2916
d420ca49 2917=over 4
4755096e
GS
2918
2919=item How do I flush/unbuffer an output filehandle? Why must I do this?
2920
2921=item How do I change one line in a file/delete a line in a file/insert a
2922line in the middle of a file/append to the beginning of a file?
2923
2924=item How do I count the number of lines in a file?
2925
2926=item How do I make a temporary file name?
2927
2928=item How can I manipulate fixed-record-length files?
2929
2930=item How can I make a filehandle local to a subroutine? How do I pass
2931filehandles between subroutines? How do I make an array of filehandles?
2932
2933=item How can I use a filehandle indirectly?
2934
2935=item How can I set up a footer format to be used with write()?
2936
2937=item How can I write() into a string?
2938
2939=item How can I output my numbers with commas added?
2940
2941=item How can I translate tildes (~) in a filename?
2942
2943=item How come when I open a file read-write it wipes it out?
2944
2945=item Why do I sometimes get an "Argument list too long" when I use <*>?
2946
2947=item Is there a leak/bug in glob()?
2948
2949=item How can I open a file with a leading ">" or trailing blanks?
2950
2951=item How can I reliably rename a file?
2952
2953=item How can I lock a file?
2954
2955=item Why can't I just open(FH, ">file.lock")?
2956
2957=item I still don't get locking. I just want to increment the number in
2958the file. How can I do this?
2959
1fa7ca25
JH
2960=item All I want to do is append a small amount of text to the end of a
2961file. Do I still have to use locking?
2962
4755096e
GS
2963=item How do I randomly update a binary file?
2964
2965=item How do I get a file's timestamp in perl?
2966
2967=item How do I set a file's timestamp in perl?
2968
2969=item How do I print to more than one file at once?
2970
2971=item How can I read in an entire file all at once?
2972
2973=item How can I read in a file by paragraphs?
2974
2975=item How can I read a single character from a file? From the keyboard?
2976
2977=item How can I tell whether there's a character waiting on a filehandle?
2978
2979=item How do I do a C<tail -f> in perl?
2980
2981=item How do I dup() a filehandle in Perl?
2982
2983=item How do I close a file descriptor by number?
2984
2985=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
2986`C:\temp\foo.exe` work?
2987
2988=item Why doesn't glob("*.*") get all the files?
2989
2990=item Why does Perl let me delete read-only files? Why does C<-i> clobber
2991protected files? Isn't this a bug in Perl?
2992
2993=item How do I select a random line from a file?
2994
2995=item Why do I get weird spaces when I print an array of lines?
2996
2997=back
2998
2999=item AUTHOR AND COPYRIGHT
3000
3001=back
3002
10151d09 3003=head2 perlfaq6 - Regexes ($Revision: 1.3 $, $Date: 2001/10/16 13:27:22 $)
4755096e 3004
d420ca49 3005=over 4
4755096e
GS
3006
3007=item DESCRIPTION
3008
d420ca49 3009=over 4
4755096e
GS
3010
3011=item How can I hope to use regular expressions without creating illegible
3012and unmaintainable code?
3013
3014Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
3015
3016=item I'm having trouble matching over more than one line. What's wrong?
3017
3018=item How can I pull out lines between two patterns that are themselves on
3019different lines?
3020
3021=item I put a regular expression into $/ but it didn't work. What's wrong?
3022
d420ca49 3023=item How do I substitute case insensitively on the LHS while preserving
4755096e
GS
3024case on the RHS?
3025
3026=item How can I make C<\w> match national character sets?
3027
3028=item How can I match a locale-smart version of C</[a-zA-Z]/>?
3029
3030=item How can I quote a variable to use in a regex?
3031
3032=item What is C</o> really for?
3033
3034=item How do I use a regular expression to strip C style comments from a
3035file?
3036
3037=item Can I use Perl regular expressions to match balanced text?
3038
3039=item What does it mean that regexes are greedy? How can I get around it?
3040
165c0277 3041=item How do I process each word on each line?
4755096e
GS
3042
3043=item How can I print out a word-frequency or line-frequency summary?
3044
3045=item How can I do approximate matching?
3046
3047=item How do I efficiently match many regular expressions at once?
3048
3049=item Why don't word-boundary searches with C<\b> work for me?
3050
3051=item Why does using $&, $`, or $' slow my program down?
3052
3053=item What good is C<\G> in a regular expression?
3054
3055=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
3056
3057=item What's wrong with using grep or map in a void context?
3058
3059=item How can I match strings with multibyte characters?
3060
3061=item How do I match a pattern that is supplied by the user?
3062
3063=back
3064
3065=item AUTHOR AND COPYRIGHT
3066
3067=back
3068
10151d09
JH
3069=head2 perlfaq7 - Perl Language Issues ($Revision: 1.2 $, $Date: 2001/10/16
307013:27:22 $)
4755096e 3071
d420ca49 3072=over 4
4755096e
GS
3073
3074=item DESCRIPTION
3075
d420ca49 3076=over 4
4755096e
GS
3077
3078=item Can I get a BNF/yacc/RE for the Perl language?
3079
3080=item What are all these $@%&* punctuation signs, and how do I know when to
3081use them?
3082
3083=item Do I always/never have to quote my strings or use semicolons and
3084commas?
3085
3086=item How do I skip some return values?
68dc0745
PP
3087
3088=item How do I temporarily block warnings?
3089
3090=item What's an extension?
3091
3092=item Why do Perl operators have different precedence than C operators?
3093
3094=item How do I declare/create a structure?
3095
3096=item How do I create a module?
3097
3098=item How do I create a class?
3099
3100=item How can I tell if a variable is tainted?
3101
3102=item What's a closure?
3103
46fc3d4c
PP
3104=item What is variable suicide and how can I prevent it?
3105
68dc0745 3106=item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
14218588 3107Regex}?
68dc0745 3108
14218588 3109Passing Variables and Functions, Passing Filehandles, Passing Regexes,
68dc0745
PP
3110Passing Methods
3111
3112=item How do I create a static variable?
3113
14218588 3114=item What's the difference between dynamic and lexical (static) scoping?
68dc0745
PP
3115Between local() and my()?
3116
3117=item How can I access a dynamic variable while a similarly named lexical
3118is in scope?
3119
3120=item What's the difference between deep and shallow binding?
3121
b38f6a39 3122=item Why doesn't "my($foo) = <FILE>;" work right?
68dc0745 3123
54310121 3124=item How do I redefine a builtin function, operator, or method?
68dc0745
PP
3125
3126=item What's the difference between calling a function as &foo and foo()?
3127
3128=item How do I create a switch or case statement?
3129
3130=item How can I catch accesses to undefined variables/functions/methods?
3131
3132=item Why can't a method included in this same file be found?
3133
3134=item How can I find out my current package?
3135
46fc3d4c
PP
3136=item How can I comment out a large block of perl code?
3137
14218588
GS
3138=item How do I clear a package?
3139
3140=item How can I use a variable as a variable name?
3141
68dc0745
PP
3142=back
3143
3144=item AUTHOR AND COPYRIGHT
3145
a45bd81d
GS
3146=back
3147
10151d09
JH
3148=head2 perlfaq8 - System Interaction ($Revision: 1.2 $, $Date: 2001/10/16
314913:27:22 $)
68dc0745 3150
d420ca49 3151=over 4
a45bd81d 3152
68dc0745
PP
3153=item DESCRIPTION
3154
d420ca49 3155=over 4
68dc0745
PP
3156
3157=item How do I find out which operating system I'm running under?
3158
3159=item How come exec() doesn't return?
3160
3161=item How do I do fancy stuff with the keyboard/screen/mouse?
3162
3163Keyboard, Screen, Mouse
3164
fb9cefb4
GS
3165=item How do I print something out in color?
3166
3167=item How do I read just one key without waiting for a return key?
3168
3169=item How do I check whether input is ready on the keyboard?
3170
3171=item How do I clear the screen?
3172
3173=item How do I get the screen size?
3174
68dc0745
PP
3175=item How do I ask the user for a password?
3176
3177=item How do I read and write the serial port?
3178
3179lockfiles, open mode, end of line, flushing output, non-blocking input
3180
3181=item How do I decode encrypted password files?
3182
3183=item How do I start a process in the background?
3184
fb9cefb4 3185STDIN, STDOUT, and STDERR are shared, Signals, Zombies
68dc0745
PP
3186
3187=item How do I trap control characters/signals?
3188
3189=item How do I modify the shadow password file on a Unix system?
3190
3191=item How do I set the time and date?
3192
3193=item How can I sleep() or alarm() for under a second?
3194
3195=item How can I measure time under a second?
3196
3197=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
3198
d420ca49 3199=item Why doesn't my sockets program work under System V (Solaris)? What
68dc0745
PP
3200does the error message "Protocol not supported" mean?
3201
3202=item How can I call my system's unique C functions from Perl?
3203
3204=item Where do I get the include files to do ioctl() or syscall()?
3205
3206=item Why do setuid perl scripts complain about kernel problems?
3207
3208=item How can I open a pipe both to and from a command?
3209
3fe9a6f1
PP
3210=item Why can't I get the output of a command with system()?
3211
68dc0745
PP
3212=item How can I capture STDERR from an external command?
3213
3214=item Why doesn't open() return an error when a pipe open fails?
3215
3216=item What's wrong with using backticks in a void context?
3217
3218=item How can I call backticks without shell processing?
3219
3220=item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
54310121 3221^Z on MS-DOS)?
68dc0745
PP
3222
3223=item How can I convert my shell script to perl?
3224
3225=item Can I use perl to run a telnet or ftp session?
3226
3227=item How can I write expect in Perl?
3228
3229=item Is there a way to hide perl's command line from programs such as
3230"ps"?
3231
3232=item I {changed directory, modified my environment} in a perl script. How
3233come the change disappeared when I exited the script? How do I get my
3234changes to be visible?
3235
fb9cefb4 3236Unix
68dc0745
PP
3237
3238=item How do I close a process's filehandle without waiting for it to
3239complete?
3240
3241=item How do I fork a daemon process?
3242
68dc0745
PP
3243=item How do I find out if I'm running interactively or not?
3244
3245=item How do I timeout a slow event?
3246
3247=item How do I set CPU limits?
3248
3249=item How do I avoid zombies on a Unix system?
3250
3251=item How do I use an SQL database?
3252
3253=item How do I make a system() exit on control-C?
3254
3255=item How do I open a file without blocking?
3256
14218588 3257=item How do I install a module from CPAN?
68dc0745 3258
fb9cefb4
GS
3259=item What's the difference between require and use?
3260
46fc3d4c
PP
3261=item How do I keep my own module/library directory?
3262
3263=item How do I add the directory my program lives in to the module/library
3264search path?
3265
3266=item How do I add a directory to my include path at runtime?
3267
14218588
GS
3268=item What is socket.ph and where do I get it?
3269
68dc0745
PP
3270=back
3271
fc36a67e
PP
3272=item AUTHOR AND COPYRIGHT
3273
a45bd81d
GS
3274=back
3275
10151d09 3276=head2 perlfaq9 - Networking ($Revision: 1.3 $, $Date: 2001/10/16 13:27:22
3fe9a6f1 3277$)
68dc0745 3278
d420ca49 3279=over 4
a45bd81d 3280
68dc0745
PP
3281=item DESCRIPTION
3282
d420ca49 3283=over 4
68dc0745 3284
35bf961c
JH
3285=item What is the correct form of response from a CGI script?
3286
d420ca49 3287=item My CGI script runs from the command line but not the browser. (500
fb9cefb4
GS
3288Server Error)
3289
3290=item How can I get better error messages from a CGI program?
68dc0745
PP
3291
3292=item How do I remove HTML from a string?
3293
3294=item How do I extract URLs?
3295
3296=item How do I download a file from the user's machine? How do I open a
3297file on another machine?
3298
3299=item How do I make a pop-up menu in HTML?
3300
3301=item How do I fetch an HTML file?
3302
fb9cefb4
GS
3303=item How do I automate an HTML form submission?
3304
3305=item How do I decode or create those %-encodings on the web?
68dc0745
PP
3306
3307=item How do I redirect to another page?
3308
3309=item How do I put a password on my web pages?
3310
3311=item How do I edit my .htpasswd and .htgroup files with Perl?
3312
46fc3d4c
PP
3313=item How do I make sure users can't enter values into a form that cause my
3314CGI script to do bad things?
3315
193fb0af 3316=item How do I parse a mail header?
68dc0745
PP
3317
3318=item How do I decode a CGI form?
3319
193fb0af 3320=item How do I check a valid mail address?
68dc0745
PP
3321
3322=item How do I decode a MIME/BASE64 string?
3323
193fb0af 3324=item How do I return the user's mail address?
68dc0745 3325
fb9cefb4
GS
3326=item How do I send mail?
3327
2d967e39
JH
3328=item How do I use MIME to make an attachment to a mail message?
3329
fb9cefb4 3330=item How do I read mail?
68dc0745
PP
3331
3332=item How do I find out my hostname/domainname/IP address?
3333
3334=item How do I fetch a news article or the active newsgroups?
3335
3336=item How do I fetch/put an FTP file?
3337
3338=item How can I do RPC in Perl?
3339
3340=back
3341
3342=item AUTHOR AND COPYRIGHT
3343
a45bd81d
GS
3344=back
3345
4755096e 3346=head2 perlcompile - Introduction to the Perl Compiler-Translator
a45bd81d 3347
d420ca49 3348=over 4
cb1a09d0 3349
8ebc5c01 3350=item DESCRIPTION
cb1a09d0 3351
d420ca49 3352=over 4
fb9cefb4 3353
4755096e 3354=item Layout
a45bd81d 3355
4755096e 3356B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
637e9122 3357
4755096e 3358=back
c76ac1ee 3359
4755096e 3360=item Using The Back Ends
c76ac1ee 3361
d420ca49 3362=over 4
694468e3 3363
4755096e 3364=item The Cross Referencing Back End
c76ac1ee 3365
4755096e 3366i, &, s, r
637e9122 3367
4755096e 3368=item The Decompiling Back End
37590e52 3369
4755096e 3370=item The Lint Back End
c76ac1ee 3371
4755096e 3372=item The Simple C Back End
37590e52 3373
4755096e 3374=item The Bytecode Back End
a45bd81d 3375
4755096e 3376=item The Optimized C Back End
a45bd81d 3377
4755096e
GS
3378B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC,
3379B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj,
3380B::Stash, B::Terse, B::Xref
c76ac1ee 3381
4755096e 3382=back
b38f6a39 3383
4755096e 3384=item KNOWN PROBLEMS
fb9cefb4 3385
4755096e 3386=item AUTHOR
c76ac1ee 3387
4755096e 3388=back
a45bd81d 3389
4755096e 3390=head2 perlembed - how to embed perl in your C program
c76ac1ee 3391
d420ca49 3392=over 4
a45bd81d 3393
4755096e 3394=item DESCRIPTION
fb9cefb4 3395
d420ca49 3396=over 4
c76ac1ee 3397
4755096e 3398=item PREAMBLE
fb9cefb4 3399
4755096e
GS
3400B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
3401Perl?>, B<Use C from C?>, B<Use Perl from C?>
fb9cefb4 3402
4755096e 3403=item ROADMAP
fb9cefb4 3404
4755096e 3405=item Compiling your C program
c76ac1ee 3406
4755096e 3407=item Adding a Perl interpreter to your C program
c76ac1ee 3408
4755096e 3409=item Calling a Perl subroutine from your C program
fb9cefb4 3410
4755096e 3411=item Evaluating a Perl statement from your C program
c76ac1ee 3412
4755096e 3413=item Performing Perl pattern matches and substitutions from your C program
c76ac1ee 3414
4755096e 3415=item Fiddling with the Perl stack from your C program
37590e52 3416
4755096e 3417=item Maintaining a persistent interpreter
c76ac1ee 3418
53d7eaa8
JH
3419=item Execution of END blocks
3420
4755096e 3421=item Maintaining multiple interpreter instances
694468e3 3422
4755096e
GS
3423=item Using Perl modules, which themselves use C libraries, from your C
3424program
c76ac1ee 3425
14218588 3426=back
fb9cefb4 3427
d420ca49 3428=item Embedding Perl under Win32
fb9cefb4 3429
4755096e 3430=item MORAL
c76ac1ee 3431
4755096e 3432=item AUTHOR
fb9cefb4 3433
4755096e 3434=item COPYRIGHT
c76ac1ee 3435
4755096e 3436=back
c76ac1ee 3437
4755096e 3438=head2 perldebguts - Guts of Perl debugging
a45bd81d 3439
d420ca49 3440=over 4
c76ac1ee 3441
4755096e 3442=item DESCRIPTION
c76ac1ee 3443
4755096e 3444=item Debugger Internals