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