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