4 perltoc - perl documentation table of contents
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.
12 =head1 BASIC DOCUMENTATION
14 =head2 perl - Practical Extraction and Report Language
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
50 =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
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
276 =item Where to get this document
278 =item How to contribute to this document
280 =item What will happen if you mail your Perl programming problems to the
287 =item Author and Copyright Information
291 =item Bundled Distributions
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
304 =head2 perltoc - perl documentation table of contents
310 =item BASIC DOCUMENTATION
314 =item perl - Practical Extraction and Report Language
316 SYNOPSIS, DESCRIPTION, AVAILABILITY, ENVIRONMENT, AUTHOR, FILES, SEE ALSO,
317 DIAGNOSTICS, BUGS, NOTES
319 =item perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
328 =head2 perlbook - Perl book information
336 =head2 perlsyn - Perl syntax
346 =item Simple statements
348 =item Compound statements
356 =item Basic BLOCKs and Switch Statements
360 =item PODs: Embedded Documentation
362 =item Plain Old Comments (Not!)
368 =head2 perldata - Perl data types
382 =item Scalar value constructors
384 =item List value constructors
388 =item Typeglobs and Filehandles
396 =head2 perlop - Perl operators and precedence
406 =item Terms and List Operators (Leftward)
408 =item The Arrow Operator
410 =item Auto-increment and Auto-decrement
414 =item Symbolic Unary Operators
416 =item Binding Operators
418 =item Multiplicative Operators
420 =item Additive Operators
422 =item Shift Operators
424 =item Named Unary Operators
426 =item Relational Operators
428 =item Equality Operators
432 =item Bitwise Or and Exclusive Or
434 =item C-style Logical And
436 =item C-style Logical Or
438 =item Range Operators
440 =item Conditional Operator
442 =item Assignment Operators
446 =item List Operators (Rightward)
452 =item Logical or and Exclusive Or
454 =item C Operators Missing From Perl
456 unary &, unary *, (TYPE)
458 =item Quote and Quote-like Operators
460 =item Regexp Quote-Like Operators
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
467 =item Gory details of parsing quoted constructs
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
477 =item Constant Folding
479 =item Bitwise String Operators
481 =item Integer Arithmetic
483 =item Floating-point Arithmetic
491 =head2 perlsub - Perl subroutines
501 =item Private Variables via my()
503 =item Persistent Private Variables
505 =item Temporary Values via local()
507 =item Lvalue subroutines
509 =item Passing Symbol Table Entries (typeglobs)
511 =item When to Still Use local()
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
517 =item Pass by Reference
521 =item Constant Functions
523 =item Overriding Built-in Functions
527 =item Subroutine Attributes
535 =head2 perlfunc - Perl builtin functions
543 =item Perl Functions by Category
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
559 =item Alphabetical Listing of Perl Functions
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///
637 =head2 perlreftut - Mark's very short tutorial about references
643 =item Who Needs Complicated Data Structures?
651 =item Making References
653 =item Using References
671 =item Distribution Conditions
677 =head2 perldsc - Perl Data Structures Cookbook
683 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
684 more elaborate constructs
688 =item COMMON MISTAKES
690 =item CAVEAT ON PRECEDENCE
692 =item WHY YOU SHOULD ALWAYS C<use strict>
698 =item ARRAYS OF ARRAYS
702 =item Declaration of a ARRAY OF ARRAYS
704 =item Generation of a ARRAY OF ARRAYS
706 =item Access and Printing of a ARRAY OF ARRAYS
710 =item HASHES OF ARRAYS
714 =item Declaration of a HASH OF ARRAYS
716 =item Generation of a HASH OF ARRAYS
718 =item Access and Printing of a HASH OF ARRAYS
722 =item ARRAYS OF HASHES
726 =item Declaration of a ARRAY OF HASHES
728 =item Generation of a ARRAY OF HASHES
730 =item Access and Printing of a ARRAY OF HASHES
734 =item HASHES OF HASHES
738 =item Declaration of a HASH OF HASHES
740 =item Generation of a HASH OF HASHES
742 =item Access and Printing of a HASH OF HASHES
746 =item MORE ELABORATE RECORDS
750 =item Declaration of MORE ELABORATE RECORDS
752 =item Declaration of a HASH OF COMPLEX RECORDS
754 =item Generation of a HASH OF COMPLEX RECORDS
766 =head2 perlrequick - Perl regular expressions quick start
776 =item Simple word matching
778 =item Using character classes
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"
787 =item Matching this or that
789 =item Grouping things and hierarchical matching
791 =item Extracting matches
793 =item Matching repetitions
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>
803 =item Search and replace
805 =item The split operator
813 =item AUTHOR AND COPYRIGHT
817 =item Acknowledgments
823 =head2 perlpod - plain old documentation
831 =item Verbatim Paragraph
833 =item Command Paragraph
835 =item Ordinary Block of Text
839 =item Embedding Pods in Perl Modules
841 =item Common Pod Pitfalls
851 =head2 perlstyle - Perl style guide
859 =head2 perltrap - Perl traps for the unwary
877 =item Perl4 to Perl5 Traps
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
884 =item Discontinuance, Deprecation, and BugFix traps
886 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
887 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
888 Discontinuance, Deprecation, Discontinuance, Discontinuance
892 Parsing, Parsing, Parsing, Parsing
894 =item Numerical Traps
896 Numerical, Numerical, Numerical, Bitwise string ops
898 =item General data type traps
900 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
901 (Constants), (Scalars), (Variable Suicide)
903 =item Context Traps - scalar, list contexts
905 (list context), (scalar context), (scalar context), (list, builtin)
907 =item Precedence Traps
909 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
912 =item General Regular Expression Traps using s///, etc.
914 Regular Expression, Regular Expression, Regular Expression, Regular
915 Expression, Regular Expression, Regular Expression, Regular Expression,
918 =item Subroutine, Signal, Sorting Traps
920 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
926 =item Interpolation Traps
928 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
929 Interpolation, Interpolation, Interpolation, Interpolation
935 =item Unclassified Traps
937 C<require>/C<do> trap using returned value, C<split> on empty string with
944 =head2 perlrun - how to execute the Perl interpreter
954 =item #! and quoting on non-Unix systems
956 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
958 =item Location of Perl
960 =item Command Switches
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>,
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)
980 =head2 perldiag - various Perl diagnostics
988 =head2 perllexwarn - Perl Lexical Warnings
996 =item Default Warnings and Optional Warnings
998 =item What's wrong with B<-w> and C<$^W>
1000 =item Controlling Warnings from the Command Line
1004 =item Backward Compatibility
1006 =item Category Hierarchy
1008 =item Fatal Warnings
1010 =item Reporting Warnings from a Module
1022 =head2 perldebtut - Perl debugging tutorial
1030 =item Looking at data and -w and w
1034 =item Stepping through code
1036 =item Placeholder for a, w, t, T
1038 =item REGULAR EXPRESSIONS
1056 =head2 perldebug - Perl debugging
1062 =item The Perl Debugger
1066 =item Debugger Commands
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]
1078 =item Configurable Options
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>
1087 =item Debugger input/output
1089 Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
1092 =item Debugging compile-time statements
1094 =item Debugger Customization
1096 =item Readline Support
1098 =item Editor Support for Debugging
1100 =item The Perl Profiler
1104 =item Debugging regular expressions
1106 =item Debugging memory usage
1114 =head2 perlvar - Perl predefined variables
1122 =item Predefined Names
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}
1154 =item Error Indicators
1156 =item Technical Note on the Syntax of Variable Names
1164 =head2 perllol - Manipulating Arrays of Arrays in Perl
1170 =item Declaration and Access of Arrays of Arrays
1172 =item Growing Your Own
1174 =item Access and Printing
1184 =head2 perlopentut - tutorial on opening things in Perl
1190 =item Open E<agrave> la shell
1198 =item The Minus File
1200 =item Mixing Reads and Writes
1206 =item Open E<agrave> la C
1210 =item Permissions E<agrave> la mode
1214 =item Obscure Open Tricks
1218 =item Re-Opening Files (dups)
1220 =item Dispelling the Dweomer
1222 =item Paths as Opens
1224 =item Single Argument Open
1226 =item Playing with STDIN and STDOUT
1230 =item Other I/O Issues
1234 =item Opening Non-File Files
1244 =item AUTHOR and COPYRIGHT
1250 =head2 perlretut - Perl regular expressions tutorial
1256 =item Part 1: The basics
1260 =item Simple word matching
1262 =item Using character classes
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
1283 =item Matching this or that
1285 =item Grouping things and hierarchical matching
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
1300 =item Extracting matches
1302 =item Matching repetitions
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!
1342 =item Building a regexp
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
1348 =item Using regular expressions in Perl
1352 =item Part 2: Power tools
1356 =item More on characters, strings, and character classes
1358 =item Compiling and saving regular expressions
1360 =item Embedding comments and modifiers in a regular expression
1362 =item Non-capturing groupings
1364 =item Looking ahead and looking behind
1366 =item Using independent subexpressions to prevent backtracking
1368 =item Conditional expressions
1370 =item A bit of magic: executing Perl code in a regular expression
1372 =item Pragmas and debugging
1380 =item AUTHOR AND COPYRIGHT
1384 =item Acknowledgments
1390 =head2 perlre - Perl regular expressions
1400 =item Regular Expressions
1402 cntrl, graph, print, punct, xdigit
1404 =item Extended Patterns
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)>
1413 =item Version 8 Regular Expressions
1415 =item Warning on \1 vs $1
1417 =item Repeated patterns matching zero-length substring
1419 =item Combining pieces together
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)>
1426 =item Creating custom RE engines
1436 =head2 perlref - Perl references and nested data structures
1446 =item Making References
1448 =item Using References
1450 =item Symbolic references
1452 =item Not-so-symbolic references
1454 =item Pseudo-hashes: Using an array as a hash
1456 =item Function Templates
1466 =head2 perlform - Perl formats
1474 =item Format Variables
1484 =item Accessing Formatting Internals
1492 =head2 perlboot - Beginner's Object-Oriented Tutorial
1500 =item If we could talk to the animals...
1502 =item Introducing the method invocation arrow
1504 =item Invoking a barnyard
1506 =item The extra parameter of method invocation
1508 =item Calling a second method to simplify things
1510 =item Inheriting the windpipes
1512 =item A few notes about @ISA
1514 =item Overriding the methods
1516 =item Starting the search from a different place
1518 =item The SUPER way of doing things
1520 =item Where we're at so far...
1522 =item A horse is a horse, of course of course -- or is it?
1524 =item Invoking an instance method
1526 =item Accessing the instance data
1528 =item How to build a horse
1530 =item Inheriting the constructor
1532 =item Making a method work with either classes or instances
1534 =item Adding parameters to a method
1536 =item More interesting instances
1538 =item A horse of a different color
1550 =head2 perltoot - Tom's object-oriented tutorial for perl
1556 =item Creating a Class
1560 =item Object Representation
1562 =item Class Interface
1564 =item Constructors and Instance Methods
1566 =item Planning for the Future: Better Constructors
1570 =item Other Object Methods
1578 =item Accessing Class Data
1580 =item Debugging Methods
1582 =item Class Destructors
1584 =item Documenting the Interface
1594 =item Overridden Methods
1596 =item Multiple Inheritance
1598 =item UNIVERSAL: The Root of All Objects
1602 =item Alternate Object Representations
1606 =item Arrays as Objects
1608 =item Closures as Objects
1612 =item AUTOLOAD: Proxy Methods
1616 =item Autoloaded Data Methods
1618 =item Inherited Autoloaded Data Methods
1622 =item Metaclassical Tools
1628 =item Data Members as Variables
1632 =item Object Terminology
1638 =item AUTHOR AND COPYRIGHT
1644 =item Acknowledgments
1650 =head2 perltootc - Tom's OO Tutorial for Class Data in Perl
1656 =item Class Data as Package Variables
1660 =item Putting All Your Eggs in One Basket
1662 =item Inheritance Concerns
1664 =item The Eponymous Meta-Object
1666 =item Indirect References to Class Data
1668 =item Monadic Classes
1670 =item Translucent Attributes
1674 =item Class Data as Lexical Variables
1678 =item Privacy and Responsibility
1680 =item File-Scoped Lexicals
1682 =item More Inheritance Concerns
1684 =item Locking the Door and Throwing Away the Key
1686 =item Translucency Revisited
1694 =item AUTHOR AND COPYRIGHT
1696 =item ACKNOWLEDGEMENTS
1702 =head2 perlobj - Perl objects
1710 =item An Object is Simply a Reference
1712 =item A Class is Simply a Package
1714 =item A Method is Simply a Subroutine
1716 =item Method Invocation
1720 =item Default UNIVERSAL methods
1722 isa(CLASS), can(METHOD), VERSION( [NEED] )
1728 =item Two-Phased Garbage Collection
1736 =head2 perlbot - Bag'o Object Tricks (the BOT)
1742 =item OO SCALING TIPS
1744 =item INSTANCE VARIABLES
1746 =item SCALAR INSTANCE VARIABLES
1748 =item INSTANCE VARIABLE INHERITANCE
1750 =item OBJECT RELATIONSHIPS
1752 =item OVERRIDING SUPERCLASS METHODS
1754 =item USING RELATIONSHIP WITH SDBM
1756 =item THINKING OF CODE REUSE
1758 =item CLASS CONTEXT AND THE OBJECT
1760 =item INHERITING A CONSTRUCTOR
1766 =head2 perltie - how to hide an object class in a simple variable
1778 TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
1783 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
1784 UNTIE this, DESTROY this
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
1792 =item Tying FileHandles
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,
1800 =item The C<untie> Gotcha
1812 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1813 safe subprocesses, sockets, and semaphores)
1829 =item Using open() for IPC
1835 =item Background Processes
1837 =item Complete Dissociation of Child from Parent
1839 =item Safe Pipe Opens
1841 =item Bidirectional Communication with Another Process
1843 =item Bidirectional Communication with Yourself
1847 =item Sockets: Client/Server Communication
1851 =item Internet Line Terminators
1853 =item Internet TCP Clients and Servers
1855 =item Unix-Domain TCP Clients and Servers
1859 =item TCP Clients with IO::Socket
1863 =item A Simple Client
1865 C<Proto>, C<PeerAddr>, C<PeerPort>
1867 =item A Webget Client
1869 =item Interactive Client with IO::Socket
1873 =item TCP Servers with IO::Socket
1875 Proto, LocalPort, Listen, Reuse
1877 =item UDP: Message Passing
1891 =head2 perlfork - Perl's fork() emulation
1901 =item Behavior of other Perl features in forked pseudo-processes
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
1907 =item Resource limits
1909 =item Killing the parent process
1911 =item Lifetime of the parent process and pseudo-processes
1913 =item CAVEATS AND LIMITATIONS
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
1929 =head2 perlnumber - semantics of numbers and numeric operations in Perl
1937 =item Storing numbers
1939 =item Numeric operators and numeric conversions
1941 =item Flavors of Perl numeric operations
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
1954 =head2 perlthrtut - tutorial on threads in Perl
1960 =item What Is A Thread Anyway?
1962 =item Threaded Program Models
1974 =item Native threads
1976 =item What kind of threads are perl threads?
1978 =item Threadsafe Modules
1984 =item Basic Thread Support
1986 =item Creating Threads
1988 =item Giving up control
1990 =item Waiting For A Thread To Exit
1992 =item Errors In Threads
1994 =item Ignoring A Thread
1998 =item Threads And Data
2002 =item Shared And Unshared Data
2004 =item Thread Pitfall: Races
2006 =item Controlling access: lock()
2008 =item Thread Pitfall: Deadlocks
2010 =item Queues: Passing Data Around
2014 =item Threads And Code
2018 =item Semaphores: Synchronizing Data Access
2020 Basic semaphores, Advanced Semaphores
2022 =item Attributes: Restricting Access To Subroutines
2024 =item Subroutine Locks
2028 =item Locking A Subroutine
2032 =item General Thread Utility Routines
2036 =item What Thread Am I In?
2040 =item Are These Threads The Same?
2042 =item What Threads Are Running?
2046 =item A Complete Example
2054 =item Introductory Texts
2056 =item OS-Related References
2058 =item Other References
2062 =item Acknowledgements
2070 =head2 perlport - Writing portable Perl
2076 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
2085 =item Numbers endianness and Width
2087 =item Files and Filesystems
2089 =item System Interaction
2091 =item Interprocess Communication (IPC)
2093 =item External Subroutines (XS)
2095 =item Standard Modules
2099 =item Character sets and character encoding
2101 =item Internationalisation
2103 =item System Resources
2113 Mailing list: cpan-testers@perl.org, Testing results:
2114 http://testers.cpan.org/
2122 =item DOS and Derivatives
2124 Build instructions for OS/2, L<perlos2>
2132 =item EBCDIC Platforms
2140 =item FUNCTION IMPLEMENTATIONS
2144 =item Alphabetical Listing of Perl Functions
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
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,
2183 =item Supported Platforms
2187 =item AUTHORS / CONTRIBUTORS
2193 =head2 perllocale - Perl locale handling (internationalization and
2200 =item PREPARING TO USE LOCALES
2206 =item The use locale pragma
2208 =item The setlocale function
2210 =item Finding locales
2212 =item LOCALE PROBLEMS
2214 =item Temporarily fixing locale problems
2216 =item Permanently fixing locale problems
2218 =item Permanently fixing your system's locale configuration
2220 =item Fixing system locale configuration
2222 =item The localeconv function
2226 =item LOCALE CATEGORIES
2230 =item Category LC_COLLATE: Collation
2232 =item Category LC_CTYPE: Character Types
2234 =item Category LC_NUMERIC: Numeric Formatting
2236 =item Category LC_MONETARY: Formatting of monetary amounts
2240 =item Other categories
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()):
2257 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
2258 LC_NUMERIC, LC_TIME, LANG
2264 =item Backward compatibility
2266 =item I18N:Collate obsolete
2268 =item Sort speed and memory use impacts
2270 =item write() and LC_NUMERIC
2272 =item Freely available locale definitions
2276 =item An imperfect standard
2284 =item Broken systems
2294 =head2 perlunicode - Unicode support in Perl
2302 =item Important Caveat
2304 Input and Output Disciplines, Regular Expressions, C<use utf8> still needed
2305 to enable a few features
2307 =item Byte and Character semantics
2309 =item Effects of character semantics
2311 =item Character encodings for input and output
2321 =head2 perlebcdic - Considerations for running Perl on EBCDIC platforms
2327 =item COMMON CHARACTER CODE SETS
2335 =item Latin 1 (ISO 8859-1)
2339 =item 13 variant characters
2349 =item SINGLE OCTET TABLES
2351 recipe 0, recipe 1, recipe 2, recipe 3, recipe 4
2353 =item IDENTIFYING CHARACTER CODE SETS
2367 =item OPERATOR DIFFERENCES
2369 =item FUNCTION DIFFERENCES
2371 chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
2373 =item REGULAR EXPRESSION DIFFERENCES
2381 =item Ignore ASCII vs. EBCDIC sort differences.
2383 =item MONO CASE then sort data.
2385 =item Convert, sort data, then re convert.
2387 =item Perform sorting on one type of machine only.
2391 =item TRANFORMATION FORMATS
2395 =item URL decoding and encoding
2397 =item uu encoding and decoding
2399 =item Quoted-Printable encoding and decoding
2401 =item Caesarian cyphers
2405 =item Hashing order and checksums
2409 =item MULTI OCTET CHARACTER SETS
2421 chcp, dataset access, OS/390 iconv, locales
2439 =head2 perlsec - Perl security
2447 =item Laundering and Detecting Tainted Data
2449 =item Switches On the "#!" Line
2451 =item Cleaning Up Your Path
2455 =item Protecting Your Programs
2463 =head2 perlmod - Perl modules (packages and symbol tables)
2475 =item Package Constructors and Destructors
2487 =head2 perlmodlib - constructing new Perl modules and finding existing ones
2493 =item THE PERL MODULE LIBRARY
2497 =item Pragmatic Modules
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
2503 =item Standard Modules
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
2533 =item Extension Modules
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
2554 =item Modules: Creation, Use, and Abuse
2558 =item Guidelines for Module Creation
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
2572 =item Guidelines for Converting Perl 4 Library Scripts into Modules
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
2579 =item Guidelines for Reusing Application Code
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
2593 =head2 perlmodinstall - Installing CPAN Modules
2603 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
2604 module (sometimes unnecessary), B<INSTALL> the module
2618 =head2 perlnewmod - preparing a new module for distribution
2628 =item What should I make into a module?
2630 =item Step-by-step: Preparing the ground
2632 Look around, Check it's new, Discuss the need, Choose a name, Check again
2634 =item Step-by-step: Making the module
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
2640 =item Step-by-step: Distributing your module
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!
2653 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date:
2654 1999/05/23 16:08:30 $)
2664 =item Who supports Perl? Who develops it? Why is it free?
2666 =item Which version of Perl should I use?
2668 =item What are perl4 and perl5?
2670 =item What is perl6?
2672 =item How stable is Perl?
2674 =item Is Perl difficult to learn?
2676 =item How does Perl compare with other languages like Java, Python, REXX,
2679 =item Can I do [task] in Perl?
2681 =item When shouldn't I program in Perl?
2683 =item What's the difference between "perl" and "Perl"?
2685 =item Is it a Perl program or a Perl script?
2687 =item What is a JAPH?
2689 =item Where can I get a list of Larry Wall witticisms?
2691 =item How can I convince my sysadmin/supervisor/employees to use version
2692 (5/5.005/Perl instead of some other language)?
2696 =item AUTHOR AND COPYRIGHT
2700 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $,
2701 $Date: 1999/10/14 18:46:09 $)
2709 =item What machines support Perl? Where do I get it?
2711 =item How can I get a binary version of Perl?
2713 =item I don't have a C compiler on my system. How can I compile perl?
2715 =item I copied the Perl binary from one machine to another, but scripts
2718 =item I grabbed the sources and tried to compile but gdbm/dynamic
2719 loading/malloc/linking/... failed. How do I make it work?
2721 =item What modules and extensions are available for Perl? What is CPAN?
2722 What does CPAN/src/... mean?
2724 =item Is there an ISO or ANSI certified version of Perl?
2726 =item Where can I get information on Perl?
2728 =item What are the Perl newsgroups on Usenet? Where do I post questions?
2730 =item Where should I post source code?
2734 References, Tutorials, Task-Oriented, Special Topics
2736 =item Perl in Magazines
2738 =item Perl on the Net: FTP and WWW Access
2740 =item What mailing lists are there for Perl?
2742 =item Archives of comp.lang.perl.misc
2744 =item Where can I buy a commercial version of Perl?
2746 =item Where do I send bug reports?
2748 =item What is perl.com? Perl Mongers? pm.org? perl.org?
2752 =item AUTHOR AND COPYRIGHT
2756 =head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23
2765 =item How do I do (anything)?
2767 =item How can I use Perl interactively?
2769 =item Is there a Perl shell?
2771 =item How do I debug my Perl programs?
2773 =item How do I profile my Perl programs?
2775 =item How do I cross-reference my Perl programs?
2777 =item Is there a pretty-printer (formatter) for Perl?
2779 =item Is there a ctags for Perl?
2781 =item Is there an IDE or Windows Perl Editor?
2783 =item Where can I get Perl macros for vi?
2785 =item Where can I get perl-mode for emacs?
2787 =item How can I use curses with Perl?
2789 =item How can I use X or Tk with Perl?
2791 =item How can I generate simple menus without using CGI or Tk?
2793 =item What is undump?
2795 =item How can I make my Perl program run faster?
2797 =item How can I make my Perl program take less memory?
2799 =item Is it unsafe to return a pointer to local data?
2801 =item How can I free an array or hash so my program shrinks?
2803 =item How can I make my CGI script more efficient?
2805 =item How can I hide the source for my Perl program?
2807 =item How can I compile my Perl program into byte code or C?
2809 =item How can I compile Perl into Java?
2811 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2813 =item Can I write useful Perl programs on the command line?
2815 =item Why don't Perl one-liners work on my DOS/Mac/VMS system?
2817 =item Where can I learn about CGI or Web programming in Perl?
2819 =item Where can I learn about object-oriented Perl programming?
2821 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
2823 =item I've read perlembed, perlguts, etc., but I can't embed perl in
2824 my C program, what am I doing wrong?
2826 =item When I tried to run my script, I got this message. What does it
2829 =item What's MakeMaker?
2833 =item AUTHOR AND COPYRIGHT
2837 =head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23
2848 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
2849 numbers I should be getting (eg, 19.95)?
2851 =item Why isn't my octal data interpreted correctly?
2853 =item Does Perl have a round() function? What about ceil() and floor()?
2856 =item How do I convert bits into ints?
2858 =item Why doesn't & work the way I want it to?
2860 =item How do I multiply matrices?
2862 =item How do I perform an operation on a series of integers?
2864 =item How can I output Roman numerals?
2866 =item Why aren't my random numbers random?
2874 =item How do I find the week-of-the-year/day-of-the-year?
2876 =item How do I find the current century or millennium?
2878 =item How can I compare two dates and find the difference?
2880 =item How can I take a string and turn it into epoch seconds?
2882 =item How can I find the Julian Day?
2884 =item How do I find yesterday's date?
2886 =item Does Perl have a Year 2000 problem? Is Perl Y2K compliant?
2894 =item How do I validate input?
2896 =item How do I unescape a string?
2898 =item How do I remove consecutive pairs of characters?
2900 =item How do I expand function calls in a string?
2902 =item How do I find matching/nesting anything?
2904 =item How do I reverse a string?
2906 =item How do I expand tabs in a string?
2908 =item How do I reformat a paragraph?
2910 =item How can I access/change the first N letters of a string?
2912 =item How do I change the Nth occurrence of something?
2914 =item How can I count the number of occurrences of a substring within a
2917 =item How do I capitalize all the words on one line?
2919 =item How can I split a [character] delimited string except when inside
2920 [character]? (Comma-separated files)
2922 =item How do I strip blank space from the beginning/end of a string?
2924 =item How do I pad a string with blanks or pad a number with zeroes?
2926 =item How do I extract selected columns from a string?
2928 =item How do I find the soundex value of a string?
2930 =item How can I expand variables in text strings?
2932 =item What's wrong with always quoting "$vars"?
2934 =item Why don't my <<HERE documents work?
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
2946 =item What is the difference between a list and an array?
2948 =item What is the difference between $array[1] and @array[1]?
2950 =item How can I remove duplicate elements from a list or array?
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
2958 =item How can I tell whether a list or array contains a certain element?
2960 =item How do I compute the difference of two arrays? How do I compute the
2961 intersection of two arrays?
2963 =item How do I test whether two arrays or hashes are equal?
2965 =item How do I find the first array element for which a condition is true?
2967 =item How do I handle linked lists?
2969 =item How do I handle circular lists?
2971 =item How do I shuffle an array randomly?
2973 =item How do I process/modify each element of an array?
2975 =item How do I select a random element from an array?
2977 =item How do I permute N elements of a list?
2979 =item How do I sort an array by (anything)?
2981 =item How do I manipulate arrays of bits?
2983 =item Why does defined() return true on empty arrays and hashes?
2987 =item Data: Hashes (Associative Arrays)
2991 =item How do I process an entire hash?
2993 =item What happens if I add or remove keys from a hash while iterating over
2996 =item How do I look up a hash element by value?
2998 =item How can I know how many entries are in a hash?
3000 =item How do I sort a hash (optionally by value instead of key)?
3002 =item How can I always keep my hash sorted?
3004 =item What's the difference between "delete" and "undef" with hashes?
3006 =item Why don't my tied hashes make the defined/exists distinction?
3008 =item How do I reset an each() operation part-way through?
3010 =item How can I get the unique keys from two hashes?
3012 =item How can I store a multidimensional array in a DBM file?
3014 =item How can I make my hash remember the order I put elements into it?
3016 =item Why does passing a subroutine an undefined element in a hash create
3019 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
3020 array of hashes or arrays?
3022 =item How can I use a reference as a hash key?
3030 =item How do I handle binary data correctly?
3032 =item How do I determine whether a scalar is a number/whole/integer/float?
3034 =item How do I keep persistent data across program calls?
3036 =item How do I print out or copy a recursive data structure?
3038 =item How do I define methods for every class/object?
3040 =item How do I verify a credit card checksum?
3042 =item How do I pack arrays of doubles or floats for XS code?
3046 =item AUTHOR AND COPYRIGHT
3050 =head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23
3059 =item How do I flush/unbuffer an output filehandle? Why must I do this?
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?
3064 =item How do I count the number of lines in a file?
3066 =item How do I make a temporary file name?
3068 =item How can I manipulate fixed-record-length files?
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?
3073 =item How can I use a filehandle indirectly?
3075 =item How can I set up a footer format to be used with write()?
3077 =item How can I write() into a string?
3079 =item How can I output my numbers with commas added?
3081 =item How can I translate tildes (~) in a filename?
3083 =item How come when I open a file read-write it wipes it out?
3085 =item Why do I sometimes get an "Argument list too long" when I use <*>?
3087 =item Is there a leak/bug in glob()?
3089 =item How can I open a file with a leading ">" or trailing blanks?
3091 =item How can I reliably rename a file?
3093 =item How can I lock a file?
3095 =item Why can't I just open(FH, ">file.lock")?
3097 =item I still don't get locking. I just want to increment the number in
3098 the file. How can I do this?
3100 =item How do I randomly update a binary file?
3102 =item How do I get a file's timestamp in perl?
3104 =item How do I set a file's timestamp in perl?
3106 =item How do I print to more than one file at once?
3108 =item How can I read in an entire file all at once?
3110 =item How can I read in a file by paragraphs?
3112 =item How can I read a single character from a file? From the keyboard?
3114 =item How can I tell whether there's a character waiting on a filehandle?
3116 =item How do I do a C<tail -f> in perl?
3118 =item How do I dup() a filehandle in Perl?
3120 =item How do I close a file descriptor by number?
3122 =item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
3123 `C:\temp\foo.exe` work?
3125 =item Why doesn't glob("*.*") get all the files?
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?
3130 =item How do I select a random line from a file?
3132 =item Why do I get weird spaces when I print an array of lines?
3136 =item AUTHOR AND COPYRIGHT
3140 =head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $)
3148 =item How can I hope to use regular expressions without creating illegible
3149 and unmaintainable code?
3151 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
3153 =item I'm having trouble matching over more than one line. What's wrong?
3155 =item How can I pull out lines between two patterns that are themselves on
3158 =item I put a regular expression into $/ but it didn't work. What's wrong?
3160 =item How do I substitute case insensitively on the LHS, but preserving
3163 =item How can I make C<\w> match national character sets?
3165 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
3167 =item How can I quote a variable to use in a regex?
3169 =item What is C</o> really for?
3171 =item How do I use a regular expression to strip C style comments from a
3174 =item Can I use Perl regular expressions to match balanced text?
3176 =item What does it mean that regexes are greedy? How can I get around it?
3178 =item How do I process each word on each line?
3180 =item How can I print out a word-frequency or line-frequency summary?
3182 =item How can I do approximate matching?
3184 =item How do I efficiently match many regular expressions at once?
3186 =item Why don't word-boundary searches with C<\b> work for me?
3188 =item Why does using $&, $`, or $' slow my program down?
3190 =item What good is C<\G> in a regular expression?
3192 =item Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
3194 =item What's wrong with using grep or map in a void context?
3196 =item How can I match strings with multibyte characters?
3198 =item How do I match a pattern that is supplied by the user?
3202 =item AUTHOR AND COPYRIGHT
3206 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date:
3207 1999/05/23 20:36:18 $)
3215 =item Can I get a BNF/yacc/RE for the Perl language?
3217 =item What are all these $@%&* punctuation signs, and how do I know when to
3220 =item Do I always/never have to quote my strings or use semicolons and
3223 =item How do I skip some return values?
3225 =item How do I temporarily block warnings?
3227 =item What's an extension?
3229 =item Why do Perl operators have different precedence than C operators?
3231 =item How do I declare/create a structure?
3233 =item How do I create a module?
3235 =item How do I create a class?
3237 =item How can I tell if a variable is tainted?
3239 =item What's a closure?
3241 =item What is variable suicide and how can I prevent it?
3243 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
3246 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
3249 =item How do I create a static variable?
3251 =item What's the difference between dynamic and lexical (static) scoping?
3252 Between local() and my()?
3254 =item How can I access a dynamic variable while a similarly named lexical
3257 =item What's the difference between deep and shallow binding?
3259 =item Why doesn't "my($foo) = <FILE>;" work right?
3261 =item How do I redefine a builtin function, operator, or method?
3263 =item What's the difference between calling a function as &foo and foo()?
3265 =item How do I create a switch or case statement?
3267 =item How can I catch accesses to undefined variables/functions/methods?
3269 =item Why can't a method included in this same file be found?
3271 =item How can I find out my current package?
3273 =item How can I comment out a large block of perl code?
3275 =item How do I clear a package?
3277 =item How can I use a variable as a variable name?
3281 =item AUTHOR AND COPYRIGHT
3285 =head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23
3294 =item How do I find out which operating system I'm running under?
3296 =item How come exec() doesn't return?
3298 =item How do I do fancy stuff with the keyboard/screen/mouse?
3300 Keyboard, Screen, Mouse
3302 =item How do I print something out in color?
3304 =item How do I read just one key without waiting for a return key?
3306 =item How do I check whether input is ready on the keyboard?
3308 =item How do I clear the screen?
3310 =item How do I get the screen size?
3312 =item How do I ask the user for a password?
3314 =item How do I read and write the serial port?
3316 lockfiles, open mode, end of line, flushing output, non-blocking input
3318 =item How do I decode encrypted password files?
3320 =item How do I start a process in the background?
3322 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
3324 =item How do I trap control characters/signals?
3326 =item How do I modify the shadow password file on a Unix system?
3328 =item How do I set the time and date?
3330 =item How can I sleep() or alarm() for under a second?
3332 =item How can I measure time under a second?
3334 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
3336 =item Why doesn't my sockets program work under System V (Solaris)? What
3337 does the error message "Protocol not supported" mean?
3339 =item How can I call my system's unique C functions from Perl?
3341 =item Where do I get the include files to do ioctl() or syscall()?
3343 =item Why do setuid perl scripts complain about kernel problems?
3345 =item How can I open a pipe both to and from a command?
3347 =item Why can't I get the output of a command with system()?
3349 =item How can I capture STDERR from an external command?
3351 =item Why doesn't open() return an error when a pipe open fails?
3353 =item What's wrong with using backticks in a void context?
3355 =item How can I call backticks without shell processing?
3357 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
3360 =item How can I convert my shell script to perl?
3362 =item Can I use perl to run a telnet or ftp session?
3364 =item How can I write expect in Perl?
3366 =item Is there a way to hide perl's command line from programs such as
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?
3375 =item How do I close a process's filehandle without waiting for it to
3378 =item How do I fork a daemon process?
3380 =item How do I find out if I'm running interactively or not?
3382 =item How do I timeout a slow event?
3384 =item How do I set CPU limits?
3386 =item How do I avoid zombies on a Unix system?
3388 =item How do I use an SQL database?
3390 =item How do I make a system() exit on control-C?
3392 =item How do I open a file without blocking?
3394 =item How do I install a module from CPAN?
3396 =item What's the difference between require and use?
3398 =item How do I keep my own module/library directory?
3400 =item How do I add the directory my program lives in to the module/library
3403 =item How do I add a directory to my include path at runtime?
3405 =item What is socket.ph and where do I get it?
3409 =item AUTHOR AND COPYRIGHT
3413 =head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30
3422 =item My CGI script runs from the command line but not the browser. (500
3425 =item How can I get better error messages from a CGI program?
3427 =item How do I remove HTML from a string?
3429 =item How do I extract URLs?
3431 =item How do I download a file from the user's machine? How do I open a
3432 file on another machine?
3434 =item How do I make a pop-up menu in HTML?
3436 =item How do I fetch an HTML file?
3438 =item How do I automate an HTML form submission?
3440 =item How do I decode or create those %-encodings on the web?
3442 =item How do I redirect to another page?
3444 =item How do I put a password on my web pages?
3446 =item How do I edit my .htpasswd and .htgroup files with Perl?
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?
3451 =item How do I parse a mail header?
3453 =item How do I decode a CGI form?
3455 =item How do I check a valid mail address?
3457 =item How do I decode a MIME/BASE64 string?
3459 =item How do I return the user's mail address?
3461 =item How do I send mail?
3463 =item How do I read mail?
3465 =item How do I find out my hostname/domainname/IP address?
3467 =item How do I fetch a news article or the active newsgroups?
3469 =item How do I fetch/put an FTP file?
3471 =item How can I do RPC in Perl?
3475 =item AUTHOR AND COPYRIGHT
3479 =head2 perlcompile - Introduction to the Perl Compiler-Translator
3489 B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
3493 =item Using The Back Ends
3497 =item The Cross Referencing Back End
3501 =item The Decompiling Back End
3503 =item The Lint Back End
3505 =item The Simple C Back End
3507 =item The Bytecode Back End
3509 =item The Optimized C Back End
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
3517 =item KNOWN PROBLEMS
3523 =head2 perlembed - how to embed perl in your C program
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?>
3538 =item Compiling your C program
3540 =item Adding a Perl interpreter to your C program
3542 =item Calling a Perl subroutine from your C program
3544 =item Evaluating a Perl statement from your C program
3546 =item Performing Perl pattern matches and substitutions from your C program
3548 =item Fiddling with the Perl stack from your C program
3550 =item Maintaining a persistent interpreter
3552 =item Maintaining multiple interpreter instances
3554 =item Using Perl modules, which themselves use C libraries, from your C
3559 =item Embedding Perl under Windows
3569 =head2 perldebguts - Guts of Perl debugging
3575 =item Debugger Internals
3579 =item Writing Your Own Debugger
3583 =item Frame Listing Output Examples
3585 =item Debugging regular expressions
3589 =item Compile-time output
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>,
3596 =item Types of nodes
3598 =item Run-time output
3602 =item Debugging Perl memory usage
3606 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
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:
3612 =item Example of using B<-DL> switch
3614 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
3616 =item B<-DL> details
3620 =item Limitations of B<-DL> statistics
3628 =head2 perlxstut, perlXStut - Tutorial for writing XSUBs
3640 =item Version caveat
3642 =item Dynamic Loading versus Static Loading
3654 =item What has gone on?
3656 =item Writing good test scripts
3660 =item What's new here?
3662 =item Input and Output Parameters
3664 =item The XSUBPP Program
3666 =item The TYPEMAP file
3668 =item Warning about Output Arguments
3672 =item What has happened here?
3674 =item Anatomy of .xs file
3676 =item Getting the fat out of XSUBs
3678 =item More about XSUB arguments
3680 =item The Argument Stack
3682 =item Extending your Extension
3684 =item Documenting your Extension
3686 =item Installing your Extension
3690 =item New Things in this Example
3694 =item New Things in this Example
3696 =item EXAMPLE 7 (Coming Soon)
3698 =item EXAMPLE 8 (Coming Soon)
3700 =item EXAMPLE 9 (Coming Soon)
3702 =item Troubleshooting these Examples
3718 =head2 perlxs - XS language reference manual
3730 =item The Anatomy of an XSUB
3732 =item The Argument Stack
3734 =item The RETVAL Variable
3736 =item The MODULE Keyword
3738 =item The PACKAGE Keyword
3740 =item The PREFIX Keyword
3742 =item The OUTPUT: Keyword
3744 =item The NO_OUTPUT Keyword
3746 =item The CODE: Keyword
3748 =item The INIT: Keyword
3750 =item The NO_INIT Keyword
3752 =item Initializing Function Parameters
3754 =item Default Parameter Values
3756 =item The PREINIT: Keyword
3758 =item The SCOPE: Keyword
3760 =item The INPUT: Keyword
3762 =item The IN/OUTLIST/IN_OUTLIST Keywords
3764 =item Variable-length Parameter Lists
3766 =item The C_ARGS: Keyword
3768 =item The PPCODE: Keyword
3770 =item Returning Undef And Empty Lists
3772 =item The REQUIRE: Keyword
3774 =item The CLEANUP: Keyword
3776 =item The POST_CALL: Keyword
3778 =item The BOOT: Keyword
3780 =item The VERSIONCHECK: Keyword
3782 =item The PROTOTYPES: Keyword
3784 =item The PROTOTYPE: Keyword
3786 =item The ALIAS: Keyword
3788 =item The INTERFACE: Keyword
3790 =item The INTERFACE_MACRO: Keyword
3792 =item The INCLUDE: Keyword
3794 =item The CASE: Keyword
3796 =item The & Unary Operator
3798 =item Inserting Comments and C Preprocessor Directives
3800 =item Using XS With C++
3802 =item Interface Strategy
3804 =item Perl Objects And C Structures
3818 =head2 perlguts - Introduction to the Perl API
3830 =item What is an "IV"?
3832 =item Working with SVs
3836 =item What's Really Stored in an SV?
3838 =item Working with AVs
3840 =item Working with HVs
3842 =item Hash API Extensions
3846 =item Blessed References and Class Objects
3848 =item Creating New Variables
3850 =item Reference Counts and Mortality
3852 =item Stashes and Globs
3854 =item Double-Typed SVs
3856 =item Magic Variables
3858 =item Assigning Magic
3860 =item Magic Virtual Tables
3864 =item Understanding the Magic of Tied Hashes and Arrays
3866 =item Localizing changes
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)>
3884 =item XSUBs and the Argument Stack
3886 =item Calling Perl Routines from within C Programs
3888 =item Memory Allocation
3892 =item Putting a C value on Perl stack
3896 =item Scratchpads and recursion
3906 =item Examining the tree
3908 =item Compile pass 1: check routines
3910 =item Compile pass 1a: constant folding
3912 =item Compile pass 2: context propagation
3914 =item Compile pass 3: peephole optimization
3918 =item How multiple interpreters and concurrency are supported
3922 =item Background and PERL_IMPLICIT_CONTEXT
3924 =item How do I use all this in extensions?
3926 =item Future Plans and PERL_IMPLICIT_SYS
3930 =item Internal Functions
3932 A, p, d, s, n, r, f, m, o, j, x
3936 =item Formatted Printing of IVs, UVs, and NVs
3938 =item Pointer-To-Integer and Integer-To-Pointer
3940 =item Source Documentation
3944 =item Unicode Support
3948 =item What B<is> Unicode, anyway?
3950 =item How can I recognise a UTF8 string?
3952 =item How does UTF8 represent Unicode characters?
3954 =item How does Perl store UTF8 strings?
3956 =item How do I convert a string to UTF8?
3958 =item Is there anything else I need to know?
3968 =head2 perlcall - Perl calling conventions from C
3974 An Error Handler, An Event Driven Program
3976 =item THE CALL_ FUNCTIONS
3978 call_sv, call_pv, call_method, call_argv
3998 =item Determining the Context
4002 =item KNOWN PROBLEMS
4008 =item No Parameters, Nothing returned
4010 =item Passing Parameters
4012 =item Returning a Scalar
4014 =item Returning a list of values
4016 =item Returning a list in a scalar context
4018 =item Returning Data from Perl via the parameter list
4022 =item Using G_KEEPERR
4026 =item Using call_argv
4028 =item Using call_method
4032 =item Using Perl to dispose of temporaries
4034 =item Strategies for storing Callback Context Information
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
4040 =item Alternate Stack Manipulation
4042 =item Creating and calling an anonymous subroutine in C
4054 =head2 perlutil - utilities packaged with the Perl distribution
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>
4071 L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
4075 L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
4076 L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
4084 =head2 perlfilter - Source Filters
4094 =item WRITING A SOURCE FILTER
4096 =item WRITING A SOURCE FILTER IN C
4098 B<Decryption Filters>
4100 =item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
4102 =item WRITING A SOURCE FILTER IN PERL
4104 =item USING CONTEXT: THE DEBUG FILTER
4116 =head2 perldbmfilter - Perl DBM Filters
4124 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
4125 B<filter_fetch_value>
4131 =item An Example -- the NULL termination problem.
4133 =item Another Example -- Key is a C int.
4143 =head2 perlapi - autogenerated documentation for the perl public API
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
4205 =head2 perlintern - autogenerated documentation of purely B<internal>
4220 =head2 perlapio - perl's IO abstraction interface.
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()>
4241 =item Co-existence with stdio
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)>
4254 =head2 perltodo - Perl TO-DO List
4260 =item Infrastructure
4264 =item Mailing list archives
4266 =item Bug tracking system
4268 =item Regression Tests
4270 Coverage, Regression, __DIE__, suidperl, The 25% slowdown from perl4 to
4293 Named prototypes, Indirect objects, Method calls, Context, Scoped subs
4297 =item Perl Internals
4303 =item Garbage Collection
4305 =item Reliable signals
4307 Alternate runops() for signal despatch, Figure out how to die() in delayed
4308 sighandler, Add tests for Thread::Signal, Automatic tests against CPAN
4310 =item Interpolated regex performance bugs
4312 =item Memory leaks from failed eval/regcomp
4314 =item Make XS easier to use
4316 =item Make embedded Perl easier to use
4318 =item Namespace cleanup
4330 =item A clear division into tutorial and reference
4332 =item Remove the artificial distinction between operators and functions
4334 =item More tutorials
4336 Regular expressions, I/O, pack/unpack, Debugging
4338 =item Include a search tool
4340 =item Include a locate tool
4342 =item Separate function manpages by default
4344 =item Users can't find the manpages
4346 =item Install ALL Documentation
4348 =item Outstanding issues to be documented
4350 =item Adapt www.linuxhq.com for Perl
4352 =item Replace man with a perl program
4354 =item Unicode tutorial
4362 =item Update the POSIX extension to conform with the POSIX 1003.1 Edition 2
4364 =item Module versions
4372 VecArray, SubstrArray, VirtualArray, ShiftSplice
4374 =item Procedural options
4378 =item y2k localtime/gmtime
4380 =item Export File::Find variables
4384 =item Debugger attach/detach
4386 =item Regular Expression debugger
4388 =item Alternative RE Syntax
4390 =item Bundled modules
4396 =item Update semibroken auxiliary tools; h2ph, a2p, etc.
4398 =item POD Converters
4414 =item POSIX on non-POSIX
4416 =item Portable installations
4424 =item Rename new headers to be consistent with the rest
4426 =item Sort out the spawnvp() mess
4428 =item Work out DLL versioning
4434 =item Would be nice to have
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
4442 =item Possible pragmas
4454 =item constant function cache
4456 =item foreach(reverse...)
4458 =item Cache eval tree
4462 =item Shrink opcode tables
4464 =item Cache hash value
4466 =item Optimize away @_ where possible
4468 =item Optimize sort by { $a <=> $b }
4470 =item Rewrite regexp parser for better integrated optimization
4474 =item Vague possibilities
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
4480 =item To Do Or Not To Do
4484 =item Making my() work on "package" variables
4486 =item "or" testing defined not truth
4488 =item "dynamic" lexicals
4490 =item "class"-based, rather than package-based "lexicals"
4506 =item External threads
4512 =item Per-thread GVs
4524 =item Precompiled modules
4528 =item Typed lexicals
4538 =item Cached compilation
4542 =item Recently Finished Tasks
4546 =item Figure a way out of $^(capital letter)
4552 =item Namespace cleanup
4564 =head2 perlhack - How to hack at the Perl internals
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
4581 =item Finding Your Way Around
4583 Core modules, Documentation, Configure, Interpreter
4585 =item Elements of the interpreter
4587 Startup, Parsing, Optimization, Running
4589 =item Internal Variable Types
4595 Argument stack, Mark stack, Save stack
4597 =item Millions of Macros
4599 =item Poking at Perl
4601 =item Using a source-level debugger
4603 run [args], break function_name, break source.c:xxx, step, next, continue,
4606 =item Dumping Perl Data Structures
4612 =item EXTERNAL TOOLS FOR DEBUGGING PERL
4616 =item Rational Software's Purify
4618 =item Purify on Unix
4620 -Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity
4624 DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
4628 I<The Road goes ever on and on, down from the door where it began.>
4636 =head2 perlhist - the Perl history records
4644 =item THE KEEPERS OF THE PUMPKIN
4656 =item SELECTED RELEASE SIZES
4658 =item SELECTED PATCH SIZES
4662 =item THE KEEPERS OF THE RECORDS
4666 =head2 perldelta - what's new for perl v5.7.0
4672 =item Security Vulnerability Closed
4674 =item Incompatible Changes
4676 =item Core Enhancements
4678 =item Modules and Pragmata
4684 =item Updated And Improved Modules and Pragmata
4688 =item Utility Changes
4690 =item New Documentation
4692 =item Performance Enhancements
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)
4703 =item Installation and Configuration Improvements
4707 =item Generic Improvements
4711 =item Selected Bug Fixes
4713 sort() arguments are now compiled in the right wantarray context (they were
4714 accidentally using the context of the sort() itself)
4718 =item Platform Specific Changes and Fixes
4722 =item New or Changed Diagnostics
4724 =item Changed Internals
4726 =item Known Problems
4730 =item Unicode Support Still Far From Perfect
4732 =item EBCDIC Still A Lost Platform
4734 =item Building Extensions Can Fail Because Of Largefiles
4736 =item ftmp-security tests warn 'system possibly insecure'
4738 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX
4740 =item Long Doubles Still Don't Work In Solaris
4742 =item Linux With Sfio Fails op/misc Test 48
4744 =item Storable tests fail in some platforms
4746 =item Threads Are Still Experimental
4748 =item The Compiler Suite Is Still Experimental
4752 =item Reporting Bugs
4760 =head2 perl56delta, perldelta - what's new for perl v5.6.0
4766 =item Core Enhancements
4770 =item Interpreter cloning, threads, and concurrency
4772 =item Lexically scoped warning categories
4774 =item Unicode and UTF-8 support
4776 =item Support for interpolating named characters
4778 =item "our" declarations
4780 =item Support for strings represented as a vector of ordinals
4782 =item Improved Perl version numbering system
4784 =item New syntax for declaring subroutine attributes
4786 =item File and directory handles can be autovivified
4788 =item open() with more than two arguments
4790 =item 64-bit support
4792 =item Large file support
4798 =item Enhanced support for sort() subroutines
4800 =item C<sort $coderef @foo> allowed
4802 =item File globbing implemented internally
4804 =item Support for CHECK blocks
4806 =item POSIX character class syntax [: :] supported
4808 =item Better pseudo-random number generator
4810 =item Improved C<qw//> operator
4812 =item Better worst-case behavior of hashes
4814 =item pack() format 'Z' supported
4816 =item pack() format modifier '!' supported
4818 =item pack() and unpack() support counted strings
4820 =item Comments in pack() templates
4822 =item Weak references
4824 =item Binary numbers supported
4826 =item Lvalue subroutines
4828 =item Some arrows may be omitted in calls through references
4830 =item Boolean assignment operators are legal lvalues
4832 =item exists() is supported on subroutine names
4834 =item exists() and delete() are supported on array elements
4836 =item Pseudo-hashes work better
4838 =item Automatic flushing of output buffers
4840 =item Better diagnostics on meaningless filehandle operations
4842 =item Where possible, buffered data discarded from duped input filehandle
4844 =item eof() has the same old magic as <>
4846 =item binmode() can be used to set :crlf and :raw modes
4848 =item C<-T> filetest recognizes UTF-8 encoded files as "text"
4850 =item system(), backticks and pipe open now reflect exec() failure
4852 =item Improved diagnostics
4854 =item Diagnostics follow STDERR
4856 =item More consistent close-on-exec behavior
4858 =item syswrite() ease-of-use
4860 =item Better syntax checks on parenthesized unary operators
4862 =item Bit operators support full native integer width
4864 =item Improved security features
4866 =item More functional bareword prototype (*)
4868 =item C<require> and C<do> may be overridden
4870 =item $^X variables may now have names longer than one character
4872 =item New variable $^C reflects C<-c> switch
4874 =item New variable $^V contains Perl version as a string
4876 =item Optional Y2K warnings
4878 =item Arrays now always interpolate into double-quoted strings
4882 =item Modules and Pragmata
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
4901 =item Utility Changes
4915 =item The Perl Debugger
4919 =item Improved Documentation
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
4926 =item Performance enhancements
4930 =item Simple sort() using { $a <=> $b } and the like are optimized
4932 =item Optimized assignments to lexical variables
4934 =item Faster subroutine calls
4936 =item delete(), each(), values() and hash iteration are faster
4940 =item Installation and Configuration Improvements
4944 =item -Dusethreads means something different
4946 =item New Configure flags
4948 =item Threadedness and 64-bitness now more daring
4954 =item -Duselargefiles
4956 =item installusrbinperl
4962 =item Enhanced Installation Directories
4966 =item Platform specific changes
4970 =item Supported platforms
4974 =item OS390 (OpenEdition MVS)
4982 =item Significant bug fixes
4986 =item <HANDLE> on empty files
4988 =item C<eval '...'> improvements
4990 =item All compilation errors are true errors
4992 =item Implicitly closed filehandles are safer
4994 =item Behavior of list slices is more consistent
4996 =item C<(\$)> prototype and C<$foo{a}>
4998 =item C<goto &sub> and AUTOLOAD
5000 =item C<-bareword> allowed under C<use integer>
5002 =item Failures in DESTROY()
5004 =item Locale bugs fixed
5008 =item Spurious subroutine stubs after failed subroutine calls
5010 =item Taint failures under C<-U>
5012 =item END blocks and the C<-c> switch
5014 =item Potential to leak DATA filehandles
5018 =item New or Changed Diagnostics
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
5073 =item Incompatible Changes
5077 =item Perl Source Incompatibilities
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
5092 =item C Source Incompatibilities
5094 C<PERL_POLLUTE>, C<PERL_IMPLICIT_CONTEXT>, C<PERL_POLLUTE_MALLOC>
5096 =item Compatible C Source API Changes
5098 C<PATCHLEVEL> is now C<PERL_VERSION>
5100 =item Binary Incompatibilities
5104 =item Known Problems
5108 =item Thread test failures
5110 =item EBCDIC platforms not supported
5112 =item In 64-bit HP-UX the lib/io_multihomed test may hang
5114 =item NEXTSTEP 3.3 POSIX test failure
5116 =item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with
5119 =item UNICOS/mk CC failures during Configure run
5121 =item Arrow operator and arrays
5123 =item Experimental features
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 })>
5132 =item Obsolete Diagnostics
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
5139 =item Reporting Bugs
5147 =head2 perl5005delta, perldelta - what's new for perl5.005
5153 =item About the new versioning system
5155 =item Incompatible Changes
5159 =item WARNING: This version is not binary compatible with Perl 5.004.
5161 =item Default installation structure has changed
5163 =item Perl Source Compatibility
5165 =item C Source Compatibility
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
5171 =item Binary Compatibility
5173 =item Security fixes may affect compatibility
5175 =item Relaxed new mandatory warnings introduced in 5.004
5189 =item Regular Expressions
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
5195 =item Improved malloc()
5197 =item Quicksort is internally implemented
5199 =item Reliable signals
5201 =item Reliable stack pointers
5203 =item More generous treatment of carriage returns
5207 =item Better support for multiple interpreters
5209 =item Behavior of local() on array and hash elements is now well-defined
5211 =item C<%!> is transparently tied to the L<Errno> module
5213 =item Pseudo-hashes are supported
5215 =item C<EXPR foreach EXPR> is supported
5217 =item Keywords can be globally overridden
5219 =item C<$^E> is meaningful on Win32
5221 =item C<foreach (1..1000000)> optimized
5223 =item C<Foo::> can be used as implicitly quoted package name
5225 =item C<exists $Foo::{Bar::}> tests existence of a package
5227 =item Better locale support
5229 =item Experimental support for 64-bit platforms
5231 =item prototype() returns useful results on builtins
5233 =item Extended support for exception handling
5235 =item Re-blessing in DESTROY() supported for chaining DESTROY() methods
5237 =item All C<printf> format conversions are handled internally
5239 =item New C<INIT> keyword
5241 =item New C<lock> keyword
5243 =item New C<qr//> operator
5245 =item C<our> is now a reserved word
5247 =item Tied arrays are now fully supported
5249 =item Tied handles support is better
5251 =item 4th argument to substr
5253 =item Negative LENGTH argument to splice
5255 =item Magic lvalues are now more magical
5257 =item <> now reads in records
5261 =item Supported Platforms
5267 =item Changes in existing support
5271 =item Modules and Pragmata
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
5281 =item Changes in existing modules
5283 Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File,
5284 MakeMaker, CPAN, Cwd, Benchmark
5288 =item Utility Changes
5290 =item Documentation Changes
5292 =item New Diagnostics
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
5312 =item Obsolete Diagnostics
5314 Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open
5315 temporary file, regexp too big
5317 =item Configuration Changes
5327 =head2 perl5004delta, perldelta - what's new for perl5.004
5333 =item Supported Environments
5339 =item List assignment to %ENV works
5341 =item "Can't locate Foo.pm in @INC" error now lists @INC
5343 =item Compilation option: Binary compatibility with 5.003
5345 =item $PERL5OPT environment variable
5347 =item Limitations on B<-M>, B<-m>, and B<-T> options
5349 =item More precise warnings
5351 =item Deprecated: Inherited C<AUTOLOAD> for non-methods
5353 =item Previously deprecated %OVERLOAD is no longer usable
5355 =item Subroutine arguments created only when they're modified
5357 =item Group vector changeable with C<$)>
5359 =item Fixed parsing of $$<digit>, &$<digit>, etc.
5361 =item Fixed localization of $<digit>, $&, etc.
5363 =item No resetting of $. on implicit close
5365 =item C<wantarray> may return undef
5367 =item C<eval EXPR> determines value of EXPR in scalar context
5369 =item Changes to tainting checks
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
5374 =item New Opcode module and revised Safe module
5376 =item Embedding improvements
5378 =item Internal change: FileHandle class based on IO::* classes
5380 =item Internal change: PerlIO abstraction interface
5382 =item New and changed syntax
5386 =item New and changed builtin constants
5390 =item New and changed builtin variables
5394 =item New and changed builtin functions
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
5402 =item New builtin methods
5404 isa(CLASS), can(METHOD), VERSION( [NEED] )
5406 =item TIEHANDLE now supported
5408 TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this
5409 LIST, READLINE this, GETC this, DESTROY this
5411 =item Malloc enhancements
5413 -DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE
5415 =item Miscellaneous efficiency enhancements
5419 =item Support for More Operating Systems
5435 use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use
5436 constant NAME => VALUE, use locale, use ops, use vmsish
5442 =item Required Updates
5444 =item Installation directories
5446 =item Module information summary
5460 =item Object-oriented overrides for builtin operators
5464 =item Utility Changes
5470 Sends converted HTML to standard output
5474 C<void> XSUBs now default to returning nothing
5478 =item C Language API Changes
5480 C<gv_fetchmethod> and C<perl_call_sv>, C<perl_eval_pv>, Extended API for
5483 =item Documentation Changes
5485 L<perldelta>, L<perlfaq>, L<perllocale>, L<perltoot>, L<perlapio>,
5486 L<perlmodlib>, L<perldebug>, L<perlsec>
5488 =item New Diagnostics
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
5524 =head2 perlaix, README.aix - Perl version 5 on IBM Unix (AIX) systems
5532 =item Compiling Perl 5 on AIX
5536 =item Building Dynamic Extensions on AIX
5538 =item The IBM ANSI C Compiler
5540 =item Using GNU's gcc for building perl
5542 =item Using Large Files with Perl
5548 =item GDBM and Threads
5550 =item NFS filesystems and utime(2)
5560 =head2 perlamiga - Perl under Amiga OS (possibly very outdated information)
5576 B<Unix emulation for AmigaOS: ixemul.library>, B<Version of Amiga OS>
5578 =item Starting Perl programs under AmigaOS
5580 =item Shortcomings of Perl under AmigaOS
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
5591 =item Accessing documentation
5599 =item B<GNU> C<info> files
5611 =item Getting the perl source
5617 =item Installing the built perl
5627 =head2 perlcygwin, README.cygwin - Perl for Cygwin
5637 =item Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it)
5639 =item Cygwin Configuration
5641 C<PATH>, I<nroff>, Permissions
5649 =item Strip Binaries
5651 =item Optional Libraries
5653 C<-lcrypt>, C<-lgdbm> (C<use GDBM_File>), C<-ldb> (C<use DB_File>),
5654 C<-lcygipc> (C<use IPC::SysV>)
5656 =item Configure-time Options
5658 C<-Uusedl>, C<-Uusemymalloc>, C<-Dusemultiplicity>, C<-Duseperlio>,
5659 C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles>
5661 =item Suspicious Warnings
5663 I<dlsym()>, Win9x and C<d_eofnblk>, Checking how std your stdio is..,
5664 Compiler/Preprocessor defines
5682 =item File Permissions
5686 =item Filetime Granularity
5688 =item Tainting Checks
5692 =item Script Portability
5694 Pathnames, Text/Binary, F<.exe>, chown(), Miscellaneous
5702 Documentation, Build, Configure, Make, Install, Tests, Compiled Perl
5703 Source, Compiled Module Source, Perl Modules/Scripts
5713 =head2 perldos - Perl under DOS, W31, W95.
5727 =item Shortcomings of Perl under DOS
5743 =head2 perlepoc, README.epoc - Perl for EPOC
5751 =item INSTALLING PERL ON EPOC
5753 =item USING PERL ON EPOC
5757 =item IO Redirection
5767 =item Compiling Perl 5 on the EPOC cross compiling environment
5771 =item SUPPORT STATUS
5779 =head2 perlhpux, README.hpux - Perl version 5 on Hewlett-Packard Unix
5788 =item Compiling Perl 5 on HP-UX
5798 =item Portability Between PA-RISC Versions
5800 =item Building Dynamic Extensions on HP-UX
5802 =item The HP ANSI C Compiler
5804 =item Using Large Files with Perl
5810 =item GDBM and Threads
5812 =item NFS filesystems and utime(2)
5814 =item perl -P and //
5824 =head2 perlmachten, README.machten - Perl version 5 on Power MachTen
5833 =item Compiling Perl 5 on MachTen
5835 =item Failures during C<make test>
5837 op/lexassign.t, pragma/warnings.t
5839 =item Building external modules
5849 =head2 perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT.
5865 EMX, RSX, HPFS, pdksh
5867 =item Starting Perl programs under OS/2 (and DOS and...)
5869 =item Starting OS/2 (and DOS) programs under Perl
5875 =item Frequently asked questions
5879 =item I cannot run external programs
5881 =item I cannot embed perl into my program, or use F<perl.dll> from my
5884 Is your program EMX-compiled with C<-Zmt -Zcrtdll>?, Did you use
5887 =item C<``> and pipe-C<open> do not work under DOS.
5889 =item Cannot start C<find.exe "pattern" file>
5897 =item Automatic binary installation
5899 C<PERL_BADLANG>, C<PERL_BADFREE>, F<Config.pm>
5901 =item Manual binary installation
5903 Perl VIO and PM executables (dynamically linked), Perl_ VIO executable
5904 (statically linked), Executables for Perl utilities, Main Perl library,
5905 Additional Perl modules, Tools to compile Perl modules, Manpages for Perl
5906 and utilities, Manpages for Perl modules, Source for Perl documentation,
5907 Perl manual in F<.INF> format, Pdksh
5913 =item Accessing documentation
5917 =item OS/2 F<.INF> file
5925 =item GNU C<info> files
5939 =item Getting perl source
5941 =item Application of the patches
5949 A lot of C<bad free>, Process terminated by SIGTERM/SIGINT, F<op/fs.t>,
5950 F<lib/io_pipe.t>, F<lib/io_sock.t>, F<op/stat.t>, F<lib/io_udp.t>
5952 =item Installing the built perl
5954 =item C<a.out>-style build
5962 =item Some C</> became C<\> in pdksh.
5964 =item C<'errno'> - unresolved external
5966 =item Problems with tr or sed
5968 =item Some problem (forget which ;-)
5970 =item Library ... not found
5972 =item Segfault in make
5974 =item op/sprintf test failure
5978 =item Specific (mis)features of OS/2 port
5982 =item C<setpriority>, C<getpriority>
5986 =item C<extproc> on the first line
5988 =item Additional modules:
5990 =item Prebuilt methods:
5992 C<File::Copy::syscopy>, C<DynaLoader::mod2fname>, C<Cwd::current_drive()>,
5993 C<Cwd::sys_chdir(name)>, C<Cwd::change_drive(name)>,
5994 C<Cwd::sys_is_absolute(name)>, C<Cwd::sys_is_rooted(name)>,
5995 C<Cwd::sys_is_relative(name)>, C<Cwd::sys_cwd(name)>,
5996 C<Cwd::sys_abspath(name, dir)>, C<Cwd::extLibpath([type])>,
5997 C<Cwd::extLibpath_set( path [, type ] )>
6003 C<popen>, C<tmpnam>, C<tmpfile>, C<ctermid>, C<stat>, C<flock>
6017 =item F<perl___.exe>
6019 =item Why strange names?
6021 =item Why dynamic linking?
6023 =item Why chimera build?
6025 explicit fork(), open FH, "|-", open FH, "-|"
6033 =item C<PERLLIB_PREFIX>
6035 =item C<PERL_BADLANG>
6037 =item C<PERL_BADFREE>
6039 =item C<PERL_SH_DIR>
6041 =item C<USE_PERL_FLOCK>
6043 =item C<TMP> or C<TEMP>
6053 =item DLL name mangling
6057 =item Calls to external programs
6059 =item Memory allocation
6063 C<COND_WAIT>, F<os2.c>
6077 =head2 perlos390, README.os390 - building and installing Perl for OS/390.
6089 =item Setup and utilities
6093 =item Build, test, install
6115 =head2 perlposix-bc, README.posix-bc - building and installing Perl for
6156 =head2 perlvms - VMS-specific documentation for Perl
6164 =item Organization of Perl Images
6170 =item Perl Extensions
6172 =item Installing static extensions
6174 =item Installing dynamic extensions
6178 =item File specifications
6184 =item Wildcard expansion
6190 =item PERL5LIB and PERLLIB
6196 =item I/O redirection and backgrounding
6198 =item Command line switches
6204 =item Perl functions
6206 File tests, backticks, binmode FILEHANDLE, crypt PLAINTEXT, USER, dump,
6207 exec LIST, fork, getpwent, getpwnam, getpwuid, gmtime, kill, qx//, select
6208 (system call), stat EXPR, system LIST, time, times, unlink LIST, utime
6209 LIST, waitpid PID,FLAGS
6211 =item Perl variables
6213 %ENV, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $^S, $|
6215 =item Standard modules with VMS-specific differences
6229 =head2 perlvos, README.vos - Perl for Stratus VOS
6237 =item Stratus POSIX Support
6241 =item INSTALLING PERL IN VOS
6245 =item Compiling Perl 5 on VOS
6247 =item Installing Perl 5 on VOS
6251 =item USING PERL IN VOS
6255 =item Unimplemented Features
6261 =item SUPPORT STATUS
6269 =head2 perlwin32 - Perl under Win32
6281 Make, Command Shell, Borland C++, Microsoft Visual C++, Mingw32 with GCC
6291 Environment Variables, File Globbing, Using perl from the command line,
6292 Building Extensions, Command-line Wildcard Expansion, Win32 Specific
6293 Extensions, Running Perl Scripts, Miscellaneous Things
6297 =item BUGS AND CAVEATS
6307 =head1 PRAGMA DOCUMENTATION
6309 =head2 attrs - set/get attributes of a subroutine (deprecated)
6321 =head2 re - Perl pragma to alter regular expression behaviour
6331 =head2 attributes - get/set subroutine or variable attributes
6341 =item Built-in Attributes
6343 locked, method, lvalue
6345 =item Available Subroutines
6349 =item Package-specific Attribute Handling
6351 FETCH_I<type>_ATTRIBUTES, MODIFY_I<type>_ATTRIBUTES
6353 =item Syntax of Attribute Lists
6361 =item Default exports
6363 =item Available exports
6365 =item Export tags defined
6375 =head2 attrs - set/get attributes of a subroutine (deprecated)
6387 =head2 autouse - postpone load of modules until a function is used
6403 =head2 base - Establish IS-A relationship with base class at compile time
6417 =head2 blib - Use MakeMaker's uninstalled version of a package
6431 =head2 bytes - Perl pragma to force byte semantics rather than character
6444 =head2 charnames - define character names for C<\N{named}> string literal
6453 =item CUSTOM TRANSLATORS
6459 =head2 constant - Perl pragma to declare constants
6469 =item TECHNICAL NOTE
6479 =head2 diagnostics - Perl compiler pragma to force verbose warning
6490 =item The C<diagnostics> Pragma
6492 =item The I<splain> Program
6506 =head2 fields - compile-time class fields
6520 =head2 filetest - Perl pragma to control the filetest permission operators
6530 =item subpragma access
6536 =head2 integer - Perl pragma to compute arithmetic in integer instead of
6547 =head2 less - perl pragma to request less of something from the compiler
6557 =head2 lib - manipulate @INC at compile time
6567 =item Adding directories to @INC
6569 =item Deleting directories from @INC
6571 =item Restoring original @INC
6581 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
6592 =head2 open - perl pragma to set default disciplines for input and output
6600 =item UNIMPLEMENTED FUNCTIONALITY
6606 =head2 ops - Perl pragma to restrict unsafe operations when compiling
6618 =head2 overload - Package for overloading perl operations
6628 =item Declaration of overloaded functions
6630 =item Calling Conventions for Binary Operations
6632 FALSE, TRUE, C<undef>
6634 =item Calling Conventions for Unary Operations
6636 =item Calling Conventions for Mutators
6638 C<++> and C<-->, C<x=> and other assignment versions
6640 =item Overloadable Operations
6642 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
6643 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
6644 and numeric conversion>, I<Iteration>, I<Dereferencing>, I<Special>
6646 =item Inheritance and overloading
6648 Strings as values of C<use overload> directive, Overloading of an operation
6649 is inherited by derived classes
6653 =item SPECIAL SYMBOLS FOR C<use overload>
6661 C<undef>, TRUE, defined, but FALSE
6663 =item Copy Constructor
6669 =item MAGIC AUTOGENERATION
6671 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
6672 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
6673 I<Concatenation>, I<Comparison operations>, I<Iterator>, I<Dereferencing>,
6676 =item Losing overloading
6678 =item Run-time Overloading
6680 =item Public functions
6682 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
6684 =item Overloading constants
6686 integer, float, binary, q, qr
6688 =item IMPLEMENTATION
6690 =item Metaphor clash
6696 =item Two-face scalars
6698 =item Two-face references
6700 =item Symbolic calculator
6702 =item I<Really> symbolic calculator
6710 Odd number of arguments for overload::constant, `%s' is not an overloadable
6711 type, `%s' is not a code reference
6717 =head2 re - Perl pragma to alter regular expression behaviour
6727 =head2 sigtrap - Perl pragma to enable simple signal handling
6739 =item SIGNAL HANDLERS
6741 B<stack-trace>, B<die>, B<handler> I<your-handler>
6745 B<normal-signals>, B<error-signals>, B<old-interface-signals>
6749 B<untrapped>, B<any>, I<signal>, I<number>
6757 =head2 strict - Perl pragma to restrict unsafe constructs
6765 C<strict refs>, C<strict vars>, C<strict subs>
6769 =head2 subs - Perl pragma to predeclare sub names
6779 =head2 utf8 - Perl pragma to enable/disable UTF-8 in source code
6791 =head2 vars - Perl pragma to predeclare global variable names (obsolete)
6801 =head2 warnings - Perl pragma to control optional warnings
6809 use warnings::register, warnings::enabled(), warnings::enabled($category),
6810 warnings::enabled($object), warnings::warn($message),
6811 warnings::warn($category, $message), warnings::warn($object, $message),
6812 warnings::warnif($message), warnings::warnif($category, $message),
6813 warnings::warnif($object, $message)
6817 =head2 warnings::register - warnings import function
6819 =head1 MODULE DOCUMENTATION
6821 =head2 AnyDBM_File - provide framework for multiple DBMs
6831 =item DBM Comparisons
6841 =head2 AutoLoader - load subroutines only on demand
6851 =item Subroutine Stubs
6853 =item Using B<AutoLoader>'s AUTOLOAD Subroutine
6855 =item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
6857 =item Package Lexicals
6859 =item Not Using AutoLoader
6861 =item B<AutoLoader> vs. B<SelfLoader>
6871 =head2 AutoSplit - split a package for autoloading
6879 $keep, $check, $modtime
6883 =item Multiple packages
6891 =head2 B - The Perl Compiler
6899 =item OVERVIEW OF CLASSES
6903 =item SV-RELATED CLASSES
6911 IV, IVX, needs64bits, packiv
6925 =item B::PVMG METHODS
6929 =item B::MAGIC METHODS
6931 MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
6933 =item B::PVLV METHODS
6935 TARGOFF, TARGLEN, TYPE, TARG
6939 USEFUL, PREVIOUS, RARE, TABLE
6943 is_empty, NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILE,
6944 FILEGV, GvREFCNT, FLAGS
6948 LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
6949 BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
6953 FILL, MAX, OFF, ARRAY, AvFLAGS
6957 STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY,
6962 FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
6964 =item OP-RELATED CLASSES
6968 next, sibling, name, ppaddr, desc, targ, type, seq, flags, private
6970 =item B::UNOP METHOD
6974 =item B::BINOP METHOD
6978 =item B::LOGOP METHOD
6982 =item B::LISTOP METHOD
6986 =item B::PMOP METHODS
6988 pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
6990 =item B::SVOP METHOD
6994 =item B::PADOP METHOD
6998 =item B::PVOP METHOD
7002 =item B::LOOP METHODS
7004 redoop, nextop, lastop
7006 =item B::COP METHODS
7008 label, stash, file, cop_seq, arybase, line
7012 =item FUNCTIONS EXPORTED BY C<B>
7014 main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes,
7015 sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG),
7016 walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM),
7017 hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names
7023 =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
7036 =head2 B::Assembler - Assemble Perl bytecode
7048 =head2 B::Bblock - Walk basic blocks
7060 =head2 B::Bytecode - Perl compiler's bytecode backend
7070 B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>,
7071 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>,
7072 B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> Stores package in the
7083 =head2 B::C - Perl compiler's C backend
7093 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
7094 B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>, B<-llimit>
7104 =head2 B::CC - Perl compiler's optimized C translation backend
7114 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
7115 B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
7116 B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
7128 =item Context of ".."
7132 =item Deprecated features
7140 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
7152 =head2 B::Deparse - Perl compiler backend to produce perl code
7162 B<-l>, B<-p>, B<-q>, B<-u>I<PACKAGE>, B<-s>I<LETTERS>, B<C>, B<i>I<NUMBER>,
7163 B<T>, B<v>I<STRING>B<.>
7165 =item USING B::Deparse AS A MODULE
7185 =head2 B::Disassembler - Disassemble Perl bytecode
7197 =head2 B::Lint - Perl lint
7205 =item OPTIONS AND LINT CHECKS
7207 B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
7208 B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
7210 =item NON LINT-CHECK OPTIONS
7220 =head2 B::O, O - Generic interface to Perl Compiler backends
7230 =item IMPLEMENTATION
7236 =head2 B::Showlex - Show lexical variables used in functions or files
7248 =head2 B::Stackobj - Helper module for CC backend
7260 =head2 B::Stash - show what stashes are loaded
7262 =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
7274 =head2 B::Xref - Generates cross reference reports for Perl programs
7284 C<-oFILENAME>, C<-r>, C<-D[tO]>
7292 =head2 Bblock, B::Bblock - Walk basic blocks
7304 =head2 Benchmark - benchmark running times of Perl code
7318 =item Standard Exports
7320 timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
7321 timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr (
7322 TIMEDIFF, [ STYLE, [ FORMAT ] ] )
7324 =item Optional Exports
7326 clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUT, CODEHASHREF, [
7327 STYLE ] ), cmpthese ( RESULTSHASHREF ), countit(TIME, CODE), disablecache (
7328 ), enablecache ( ), timesum ( T1, T2 )
7344 =item MODIFICATION HISTORY
7348 =head2 ByteLoader - load byte compiled perl code
7362 =head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend
7372 B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>,
7373 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>,
7374 B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> Stores package in the
7385 =head2 CGI - Simple Common Gateway Interface Class
7397 =item PROGRAMMING STYLE
7399 =item CALLING CGI.PM ROUTINES
7401 1. Use another name for the argument, if one is available. For example,
7402 -value is an alias for -values, 2. Change the capitalization, e.g. -Values,
7403 3. Put quotes around the argument name, e.g. '-values'
7405 =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
7407 =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
7409 =item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
7411 =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
7413 =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
7415 =item SETTING THE VALUE(S) OF A NAMED PARAMETER:
7417 =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
7419 =item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
7421 =item DELETING A PARAMETER COMPLETELY:
7423 =item DELETING ALL PARAMETERS:
7425 =item DIRECT ACCESS TO THE PARAMETER LIST:
7427 =item FETCHING THE PARAMETER LIST AS A HASH:
7429 =item SAVING THE STATE OF THE SCRIPT TO A FILE:
7431 =item RETRIEVING CGI ERRORS
7433 =item USING THE FUNCTION-ORIENTED INTERFACE
7435 B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
7436 B<:standard>, B<:all>
7440 -any, -compile, -nosticky, -no_xhtml, -nph, -newstyle_urls, -oldstyle_urls,
7441 -autoload, -no_debug, -debug, -private_tempfiles
7443 =item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS
7445 1. start_table() (generates a <TABLE> tag), 2. end_table() (generates a
7446 </TABLE> tag), 3. start_ul() (generates a <UL> tag), 4. end_ul() (generates
7451 =item GENERATING DYNAMIC DOCUMENTS
7455 =item CREATING A STANDARD HTTP HEADER:
7457 =item GENERATING A REDIRECTION HEADER
7459 =item CREATING THE HTML DOCUMENT HEADER
7461 B<Parameters:>, 4, 5, 6..
7463 =item ENDING THE HTML DOCUMENT:
7465 =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
7467 =item OBTAINING THE SCRIPT'S URL
7469 B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
7470 (B<-query_string>), B<-base>
7472 =item MIXING POST AND URL PARAMETERS
7476 =item CREATING STANDARD HTML ELEMENTS:
7480 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS
7482 =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
7484 =item HTML SHORTCUTS AND LIST INTERPOLATION
7486 =item NON-STANDARD HTML SHORTCUTS
7488 =item AUTOESCAPING HTML
7490 $escaped_string = escapeHTML("unescaped string");, $charset =
7491 charset([$charset]);, $flag = autoEscape([$flag]);
7493 =item PRETTY-PRINTING HTML
7497 =item CREATING FILL-OUT FORMS:
7501 =item CREATING AN ISINDEX TAG
7503 =item STARTING AND ENDING A FORM
7505 B<application/x-www-form-urlencoded>, B<multipart/form-data>
7507 =item CREATING A TEXT FIELD
7511 =item CREATING A BIG TEXT FIELD
7513 =item CREATING A PASSWORD FIELD
7515 =item CREATING A FILE UPLOAD FIELD
7519 =item CREATING A POPUP MENU
7521 =item CREATING A SCROLLING LIST
7525 =item CREATING A GROUP OF RELATED CHECKBOXES
7529 =item CREATING A STANDALONE CHECKBOX
7533 =item CREATING A RADIO BUTTON GROUP
7537 =item CREATING A SUBMIT BUTTON
7541 =item CREATING A RESET BUTTON
7543 =item CREATING A DEFAULT BUTTON
7545 =item CREATING A HIDDEN FIELD
7549 =item CREATING A CLICKABLE IMAGE BUTTON
7551 B<Parameters:>, 3. The third option (-align, optional) is an alignment
7552 type, and may be TOP, BOTTOM or MIDDLE
7554 =item CREATING A JAVASCRIPT ACTION BUTTON
7560 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag,
7561 B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure>
7563 =item WORKING WITH FRAMES
7565 1. Create a <Frameset> document, 2. Specify the destination for the
7566 document in the HTTP header, 3. Specify the destination for the document in
7569 =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS
7575 =item DUMPING OUT ALL THE NAME/VALUE PAIRS
7579 =item FETCHING ENVIRONMENT VARIABLES
7581 B<Accept()>, B<raw_cookie()>, B<user_agent()>, B<path_info()>,
7582 B<path_translated()>, B<remote_host()>, B<script_name()> Return the script
7583 name as a partial URL, for self-refering scripts, B<referer()>, B<auth_type
7584 ()>, B<server_name ()>, B<virtual_host ()>, B<server_port ()>,
7585 B<server_software ()>, B<remote_user ()>, B<user_name ()>,
7586 B<request_method()>, B<content_type()>, B<http()>, B<https()>
7588 =item USING NPH SCRIPTS
7590 In the B<use> statement, By calling the B<nph()> method:, By using B<-nph>
7591 parameters in the B<header()> and B<redirect()> statements:
7595 multipart_init(), multipart_start(), multipart_end()
7597 =item Avoiding Denial of Service Attacks
7599 B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script
7600 basis>, B<2. Globally for all scripts>
7602 =item COMPATIBILITY WITH CGI-LIB.PL
7604 =item AUTHOR INFORMATION
7608 Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor
7609 (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell
7610 (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg
7611 (jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick
7612 (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis
7613 (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen
7614 (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim
7615 MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks
7616 (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed
7617 Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug
7618 MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org),
7619 ...and many many more..
7621 =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
7629 =head2 CGI::Apache - Backward compatibility module for CGI.pm
7639 =item AUTHOR INFORMATION
7647 =head2 CGI::Carp, B<CGI::Carp> - CGI routines for writing to the HTTPD (or
7656 =item REDIRECTING ERROR MESSAGES
7658 =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW
7662 =item Changing the default message
7666 =item MAKING WARNINGS APPEAR AS HTML COMMENTS
7676 =head2 CGI::Cookie - Interface to Netscape Cookies
7684 =item USING CGI::Cookie
7686 B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag>
7690 =item Creating New Cookies
7692 =item Sending the Cookie to the Browser
7694 =item Recovering Previous Cookies
7696 =item Manipulating Cookies
7698 B<name()>, B<value()>, B<domain()>, B<path()>, B<expires()>
7702 =item AUTHOR INFORMATION
7710 =head2 CGI::Fast - CGI Interface for Fast CGI
7718 =item OTHER PIECES OF THE PUZZLE
7720 =item WRITING FASTCGI PERL SCRIPTS
7722 =item INSTALLING FASTCGI SCRIPTS
7724 =item USING FASTCGI SCRIPTS AS CGI SCRIPTS
7728 =item AUTHOR INFORMATION
7736 =head2 CGI::Pretty - module to produce nicely formatted HTML code
7746 =item Tags that won't be formatted
7748 =item Customizing the Indenting
7760 =head2 CGI::Push - Simple Interface to Server Push
7768 =item USING CGI::Push
7770 -next_page, -last_page, -type, -delay, -cookie, -target, -expires
7774 =item Heterogeneous Pages
7776 =item Changing the Page Delay on the Fly
7780 =item INSTALLING CGI::Push SCRIPTS
7782 =item AUTHOR INFORMATION
7790 =head2 CGI::Switch - Backward compatibility module for defunct CGI::Switch
7800 =item AUTHOR INFORMATION
7808 =head2 CPAN - query, download and build perl modules from CPAN sites
7818 =item Interactive Mode
7820 Searching for authors, bundles, distribution files and modules, make, test,
7821 install, clean modules or distributions, get, readme, look module or
7822 distribution, Signals
7830 =item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
7832 =item Programmer's interface
7834 expand($type,@things), Programming Examples
7836 =item Methods in the four Classes
7844 =item Finding packages and VERSION
7848 =item Floppy, Zip, Offline Mode
7854 C<o conf E<lt>scalar optionE<gt>>, C<o conf E<lt>scalar optionE<gt>
7855 E<lt>valueE<gt>>, C<o conf E<lt>list optionE<gt>>, C<o conf E<lt>list
7856 optionE<gt> [shift|pop]>, C<o conf E<lt>list optionE<gt>
7857 [unshift|push|splice] E<lt>listE<gt>>
7861 =item Note on urllist parameter's format
7863 =item urllist parameter has CD-ROM support
7871 =item POPULATE AN INSTALLATION WITH LOTS OF MODULES
7873 =item WORKING WITH CPAN.pm BEHIND FIREWALLS
7877 =item Three basic types of firewalls
7879 http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
7881 =item Configuring lynx or ncftp for going through a firewall
7887 1) I installed a new version of module X but CPAN keeps saying, I
7888 have the old version installed, 2) So why is UNINST=1 not the default?, 3)
7889 When I install bundles or multiple modules with one command there is
7890 too much output to keep track of, 4) I am not root, how can I install a
7891 module in a personal directory?, 5) How to get a package, unwrap it,
7892 and make a change before building it?, 6) I installed a Bundle and
7893 had a couple of fails. When I retried, everything resolved nicely.
7894 Can this be fixed to work on first try?, 7) In our intranet we have
7895 many modules for internal use. How can I integrate these modules with
7896 CPAN.pm but without uploading the modules to CPAN?
7906 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
7916 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
7929 =head2 Carp, carp - warn of errors (from perspective of caller)
7939 =item Forcing a Stack Trace
7947 =head2 Carp::Heavy - Carp guts
7957 =head2 Class::Struct - declare struct-like datatypes as Perl classes
7967 =item The C<struct()> function
7969 =item Element Types and Accessor Methods
7971 Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or
7972 C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>)
7974 =item Initializing with C<new>
7980 Example 1, Example 2, Example 3
7982 =item Author and Modification History
7986 =head2 Config - access Perl configuration information
7994 myconfig(), config_sh(), config_vars(@names)
8006 C<_a>, C<_exe>, C<_o>
8010 C<afs>, C<alignbytes>, C<ansi2knr>, C<aphostname>, C<api_revision>,
8011 C<api_subversion>, C<api_version>, C<api_versionstring>, C<ar>, C<archlib>,
8012 C<archlibexp>, C<archname64>, C<archname>, C<archobjs>, C<awk>
8016 C<baserev>, C<bash>, C<bin>, C<bincompat5005>, C<binexp>, C<bison>,
8017 C<byacc>, C<byteorder>
8021 C<c>, C<castflags>, C<cat>, C<cc>, C<cccdlflags>, C<ccdlflags>, C<ccflags>,
8022 C<ccflags_uselargefiles>, C<ccname>, C<ccsymbols>, C<ccversion>, C<cf_by>,
8023 C<cf_email>, C<cf_time>, C<charsize>, C<chgrp>, C<chmod>, C<chown>,
8024 C<clocktype>, C<comm>, C<compress>
8028 C<CONFIGDOTSH>, C<contains>, C<cp>, C<cpio>, C<cpp>, C<cpp_stuff>,
8029 C<cppccsymbols>, C<cppflags>, C<cpplast>, C<cppminus>, C<cpprun>,
8030 C<cppstdin>, C<cppsymbols>, C<crosscompile>, C<cryptlib>, C<csh>
8034 C<d_access>, C<d_accessx>, C<d_alarm>, C<d_archlib>, C<d_atolf>,
8035 C<d_atoll>, C<d_attribut>, C<d_bcmp>, C<d_bcopy>, C<d_bincompat5005>,
8036 C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>, C<d_bzero>, C<d_casti32>,
8037 C<d_castneg>, C<d_charvspr>, C<d_chown>, C<d_chroot>, C<d_chsize>,
8038 C<d_closedir>, C<d_const>, C<d_crypt>, C<d_csh>, C<d_cuserid>,
8039 C<d_dbl_dig>, C<d_difftime>, C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>,
8040 C<d_dlsymun>, C<d_dosuid>, C<d_drand48proto>, C<d_dup2>, C<d_eaccess>,
8041 C<d_endgrent>, C<d_endhent>, C<d_endnent>, C<d_endpent>, C<d_endpwent>,
8042 C<d_endsent>, C<d_eofnblk>, C<d_eunice>, C<d_fchmod>, C<d_fchown>,
8043 C<d_fcntl>, C<d_fd_macros>, C<d_fd_set>, C<d_fds_bits>, C<d_fgetpos>,
8044 C<d_flexfnam>, C<d_flock>, C<d_fork>, C<d_fpathconf>, C<d_fpos64_t>,
8045 C<d_frexpl>, C<d_fs_data_s>, C<d_fseeko>, C<d_fsetpos>, C<d_fstatfs>,
8046 C<d_fstatvfs>, C<d_ftello>, C<d_ftime>, C<d_Gconvert>, C<d_getcwd>,
8047 C<d_getespwnam>, C<d_getfsstat>, C<d_getgrent>, C<d_getgrps>,
8048 C<d_gethbyaddr>, C<d_gethbyname>, C<d_gethent>, C<d_gethname>,
8049 C<d_gethostprotos>, C<d_getlogin>, C<d_getmnt>, C<d_getmntent>,
8050 C<d_getnbyaddr>, C<d_getnbyname>, C<d_getnent>, C<d_getnetprotos>,
8051 C<d_getpbyname>, C<d_getpbynumber>, C<d_getpent>, C<d_getpgid>,
8052 C<d_getpgrp2>, C<d_getpgrp>, C<d_getppid>, C<d_getprior>,
8053 C<d_getprotoprotos>, C<d_getprpwnam>, C<d_getpwent>, C<d_getsbyname>,
8054 C<d_getsbyport>, C<d_getsent>, C<d_getservprotos>, C<d_getspnam>,
8055 C<d_gettimeod>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>, C<d_htonl>,
8056 C<d_iconv>, C<d_index>, C<d_inetaton>, C<d_int64_t>, C<d_isascii>,
8057 C<d_isnan>, C<d_isnanl>, C<d_killpg>, C<d_lchown>, C<d_ldbl_dig>,
8058 C<d_link>, C<d_locconv>, C<d_lockf>, C<d_longdbl>, C<d_longlong>,
8059 C<d_lseekproto>, C<d_lstat>, C<d_madvise>, C<d_mblen>, C<d_mbstowcs>,
8060 C<d_mbtowc>, C<d_memchr>, C<d_memcmp>, C<d_memcpy>, C<d_memmove>,
8061 C<d_memset>, C<d_mkdir>, C<d_mkdtemp>, C<d_mkfifo>, C<d_mkstemp>,
8062 C<d_mkstemps>, C<d_mktime>, C<d_mmap>, C<d_modfl>, C<d_mprotect>, C<d_msg>,
8063 C<d_msg_ctrunc>, C<d_msg_dontroute>, C<d_msg_oob>, C<d_msg_peek>,
8064 C<d_msg_proxy>, C<d_msgctl>, C<d_msgget>, C<d_msgrcv>, C<d_msgsnd>,
8065 C<d_msync>, C<d_munmap>, C<d_mymalloc>, C<d_nice>, C<d_nv_preserves_uv>,
8066 C<d_nv_preserves_uv_bits>, C<d_off64_t>, C<d_old_pthread_create_joinable>,
8067 C<d_oldpthreads>, C<d_oldsock>, C<d_open3>, C<d_pathconf>, C<d_pause>,
8068 C<d_perl_otherlibdirs>, C<d_phostname>, C<d_pipe>, C<d_poll>,
8069 C<d_portable>, C<d_PRId64>, C<d_PRIeldbl>, C<d_PRIEUldbl>, C<d_PRIfldbl>,
8070 C<d_PRIFUldbl>, C<d_PRIgldbl>, C<d_PRIGUldbl>, C<d_PRIi64>, C<d_PRIo64>,
8071 C<d_PRIu64>, C<d_PRIx64>, C<d_PRIXU64>, C<d_pthread_yield>, C<d_pwage>,
8072 C<d_pwchange>, C<d_pwclass>, C<d_pwcomment>, C<d_pwexpire>, C<d_pwgecos>,
8073 C<d_pwpasswd>, C<d_pwquota>, C<d_qgcvt>, C<d_quad>, C<d_readdir>,
8074 C<d_readlink>, C<d_rename>, C<d_rewinddir>, C<d_rmdir>, C<d_safebcpy>,
8075 C<d_safemcpy>, C<d_sanemcmp>, C<d_sched_yield>, C<d_scm_rights>,
8076 C<d_SCNfldbl>, C<d_seekdir>, C<d_select>, C<d_sem>, C<d_semctl>,
8077 C<d_semctl_semid_ds>, C<d_semctl_semun>, C<d_semget>, C<d_semop>,
8078 C<d_setegid>, C<d_seteuid>, C<d_setgrent>, C<d_setgrps>, C<d_sethent>,
8079 C<d_setlinebuf>, C<d_setlocale>, C<d_setnent>, C<d_setpent>, C<d_setpgid>,
8080 C<d_setpgrp2>, C<d_setpgrp>, C<d_setprior>, C<d_setproctitle>,
8081 C<d_setpwent>, C<d_setregid>, C<d_setresgid>, C<d_setresuid>,
8082 C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>, C<d_setsid>,
8083 C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>, C<d_shmatprototype>,
8084 C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>, C<d_sigsetjmp>,
8085 C<d_socket>, C<d_socklen_t>, C<d_sockpair>, C<d_socks5_init>, C<d_sqrtl>,
8086 C<d_statblks>, C<d_statfs_f_flags>, C<d_statfs_s>, C<d_statvfs>,
8087 C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>, C<d_stdio_ptr_lval_nochange_cnt>,
8088 C<d_stdio_ptr_lval_sets_cnt>, C<d_stdio_stream_array>, C<d_stdiobase>,
8089 C<d_stdstdio>, C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>,
8090 C<d_strerror>, C<d_strtod>, C<d_strtol>, C<d_strtold>, C<d_strtoll>,
8091 C<d_strtoul>, C<d_strtoull>, C<d_strtouq>, C<d_strxfrm>, C<d_suidsafe>,
8092 C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>,
8093 C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir>,
8094 C<d_telldirproto>, C<d_time>, C<d_times>, C<d_truncate>, C<d_tzname>,
8095 C<d_umask>, C<d_uname>, C<d_union_semun>, C<d_ustat>, C<d_vendorarch>,
8096 C<d_vendorbin>, C<d_vendorlib>, C<d_vfork>, C<d_void_closedir>,
8097 C<d_voidsig>, C<d_voidtty>, C<d_volatile>, C<d_vprintf>, C<d_wait4>,
8098 C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>, C<d_xenix>, C<date>,
8099 C<db_hashtype>, C<db_prefixtype>, C<defvoidused>, C<direntrytype>,
8100 C<dlext>, C<dlsrc>, C<doublesize>, C<drand01>, C<dynamic_ext>
8104 C<eagain>, C<ebcdic>, C<echo>, C<egrep>, C<emacs>, C<eunicefix>,
8105 C<exe_ext>, C<expr>, C<extensions>
8109 C<fflushall>, C<fflushNULL>, C<find>, C<firstmakefile>, C<flex>,
8110 C<fpossize>, C<fpostype>, C<freetype>, C<full_ar>, C<full_csh>, C<full_sed>
8114 C<gccosandvers>, C<gccversion>, C<gidformat>, C<gidsign>, C<gidsize>,
8115 C<gidtype>, C<glibpth>, C<grep>, C<groupcat>, C<groupstype>, C<gzip>
8119 C<h_fcntl>, C<h_sysfile>, C<hint>, C<hostcat>
8123 C<i16size>, C<i16type>, C<i32size>, C<i32type>, C<i64size>, C<i64type>,
8124 C<i8size>, C<i8type>, C<i_arpainet>, C<i_bsdioctl>, C<i_db>, C<i_dbm>,
8125 C<i_dirent>, C<i_dld>, C<i_dlfcn>, C<i_fcntl>, C<i_float>, C<i_gdbm>,
8126 C<i_grp>, C<i_iconv>, C<i_ieeefp>, C<i_inttypes>, C<i_libutil>,
8127 C<i_limits>, C<i_locale>, C<i_machcthr>, C<i_malloc>, C<i_math>,
8128 C<i_memory>, C<i_mntent>, C<i_ndbm>, C<i_netdb>, C<i_neterrno>,
8129 C<i_netinettcp>, C<i_niin>, C<i_poll>, C<i_prot>, C<i_pthread>, C<i_pwd>,
8130 C<i_rpcsvcdbm>, C<i_sfio>, C<i_sgtty>, C<i_shadow>, C<i_socks>,
8131 C<i_stdarg>, C<i_stddef>, C<i_stdlib>, C<i_string>, C<i_sunmath>,
8132 C<i_sysaccess>, C<i_sysdir>, C<i_sysfile>, C<i_sysfilio>, C<i_sysin>,
8133 C<i_sysioctl>, C<i_syslog>, C<i_sysmman>, C<i_sysmode>, C<i_sysmount>,
8134 C<i_sysndir>, C<i_sysparam>, C<i_sysresrc>, C<i_syssecrt>, C<i_sysselct>,
8135 C<i_syssockio>, C<i_sysstat>, C<i_sysstatfs>, C<i_sysstatvfs>,
8136 C<i_systime>, C<i_systimek>, C<i_systimes>, C<i_systypes>, C<i_sysuio>,
8137 C<i_sysun>, C<i_sysutsname>, C<i_sysvfs>, C<i_syswait>, C<i_termio>,
8138 C<i_termios>, C<i_time>, C<i_unistd>, C<i_ustat>, C<i_utime>, C<i_values>,
8139 C<i_varargs>, C<i_varhdr>, C<i_vfork>, C<ignore_versioned_solibs>,
8140 C<inc_version_list>, C<inc_version_list_init>, C<incpath>, C<inews>,
8141 C<installarchlib>, C<installbin>, C<installman1dir>, C<installman3dir>,
8142 C<installprefix>, C<installprefixexp>, C<installprivlib>, C<installscript>,
8143 C<installsitearch>, C<installsitebin>, C<installsitelib>, C<installstyle>,
8144 C<installusrbinperl>, C<installvendorarch>, C<installvendorbin>,
8145 C<installvendorlib>, C<intsize>, C<ivdformat>, C<ivsize>, C<ivtype>
8149 C<known_extensions>, C<ksh>
8153 C<ld>, C<lddlflags>, C<ldflags>, C<ldflags_uselargefiles>, C<ldlibpthname>,
8154 C<less>, C<lib_ext>, C<libc>, C<libperl>, C<libpth>, C<libs>, C<libsdirs>,
8155 C<libsfiles>, C<libsfound>, C<libspath>, C<libswanted>,
8156 C<libswanted_uselargefiles>, C<line>, C<lint>, C<lkflags>, C<ln>, C<lns>,
8157 C<locincpth>, C<loclibpth>, C<longdblsize>, C<longlongsize>, C<longsize>,
8158 C<lp>, C<lpr>, C<ls>, C<lseeksize>, C<lseektype>
8162 C<mail>, C<mailx>, C<make>, C<make_set_make>, C<mallocobj>, C<mallocsrc>,
8163 C<malloctype>, C<man1dir>, C<man1direxp>, C<man1ext>, C<man3dir>,
8164 C<man3direxp>, C<man3ext>
8168 C<Mcc>, C<mips_type>, C<mkdir>, C<mmaptype>, C<modetype>, C<more>,
8169 C<multiarch>, C<mv>, C<myarchname>, C<mydomain>, C<myhostname>, C<myuname>
8173 C<n>, C<netdb_hlen_type>, C<netdb_host_type>, C<netdb_name_type>,
8174 C<netdb_net_type>, C<nm>, C<nm_opt>, C<nm_so_opt>, C<nonxs_ext>, C<nroff>,
8175 C<nveformat>, C<nvEUformat>, C<nvfformat>, C<nvFUformat>, C<nvgformat>,
8176 C<nvGUformat>, C<nvsize>, C<nvtype>
8180 C<o_nonblock>, C<obj_ext>, C<old_pthread_create_joinable>, C<optimize>,
8181 C<orderlib>, C<osname>, C<osvers>, C<otherlibdirs>
8185 C<package>, C<pager>, C<passcat>, C<patchlevel>, C<path_sep>, C<perl5>,
8190 C<PERL_REVISION>, C<PERL_SUBVERSION>, C<PERL_VERSION>, C<perladmin>,
8191 C<perllibs>, C<perlpath>, C<pg>, C<phostname>, C<pidtype>, C<plibpth>,
8192 C<pm_apiversion>, C<pmake>, C<pr>, C<prefix>, C<prefixexp>, C<privlib>,
8193 C<privlibexp>, C<prototype>, C<ptrsize>
8197 C<quadkind>, C<quadtype>
8201 C<randbits>, C<randfunc>, C<randseedtype>, C<ranlib>, C<rd_nodata>,
8202 C<revision>, C<rm>, C<rmail>, C<runnm>
8206 C<sched_yield>, C<scriptdir>, C<scriptdirexp>, C<sed>, C<seedfunc>,
8207 C<selectminbits>, C<selecttype>, C<sendmail>, C<sh>, C<shar>, C<sharpbang>,
8208 C<shmattype>, C<shortsize>, C<shrpenv>, C<shsharp>, C<sig_count>,
8209 C<sig_name>, C<sig_name_init>, C<sig_num>, C<sig_num_init>, C<signal_t>,
8210 C<sitearch>, C<sitearchexp>, C<sitebin>, C<sitebinexp>, C<sitelib>,
8211 C<sitelib_stem>, C<sitelibexp>, C<siteprefix>, C<siteprefixexp>,
8212 C<sizesize>, C<sizetype>, C<sleep>, C<smail>, C<so>, C<sockethdr>,
8213 C<socketlib>, C<socksizetype>, C<sort>, C<spackage>, C<spitshell>,
8214 C<sPRId64>, C<sPRIeldbl>, C<sPRIEUldbl>, C<sPRIfldbl>, C<sPRIFUldbl>,
8215 C<sPRIgldbl>, C<sPRIGUldbl>, C<sPRIi64>, C<sPRIo64>, C<sPRIu64>,
8216 C<sPRIx64>, C<sPRIXU64>, C<src>, C<sSCNfldbl>, C<ssizetype>, C<startperl>,
8217 C<startsh>, C<static_ext>, C<stdchar>, C<stdio_base>, C<stdio_bufsiz>,
8218 C<stdio_cnt>, C<stdio_filbuf>, C<stdio_ptr>, C<stdio_stream_array>,
8219 C<strings>, C<submit>, C<subversion>, C<sysman>
8223 C<tail>, C<tar>, C<tbl>, C<tee>, C<test>, C<timeincl>, C<timetype>,
8224 C<touch>, C<tr>, C<trnl>, C<troff>
8228 C<u16size>, C<u16type>, C<u32size>, C<u32type>, C<u64size>, C<u64type>,
8229 C<u8size>, C<u8type>, C<uidformat>, C<uidsign>, C<uidsize>, C<uidtype>,
8230 C<uname>, C<uniq>, C<uquadtype>, C<use5005threads>, C<use64bitall>,
8231 C<use64bitint>, C<usedl>, C<useithreads>, C<uselargefiles>,
8232 C<uselongdouble>, C<usemorebits>, C<usemultiplicity>, C<usemymalloc>,
8233 C<usenm>, C<useopcode>, C<useperlio>, C<useposix>, C<usesfio>,
8234 C<useshrplib>, C<usesocks>, C<usethreads>, C<usevendorprefix>, C<usevfork>,
8235 C<usrinc>, C<uuname>, C<uvoformat>, C<uvsize>, C<uvtype>, C<uvuformat>,
8236 C<uvxformat>, C<uvXUformat>
8240 C<vendorarch>, C<vendorarchexp>, C<vendorbin>, C<vendorbinexp>,
8241 C<vendorlib>, C<vendorlib_stem>, C<vendorlibexp>, C<vendorprefix>,
8242 C<vendorprefixexp>, C<version>, C<versiononly>, C<vi>, C<voidflags>
8246 C<xlibpth>, C<xs_apiversion>
8258 =head2 Cwd, getcwd - get pathname of current working directory
8268 =head2 DB - programmatic interface to the Perl debugging API (draft,
8280 =item Global Variables
8282 $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args,
8283 @DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname,
8288 CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'),
8289 CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done()
8291 =item Client Callback Methods
8293 CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(),
8294 CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(),
8295 CLIENT->output(LIST)
8305 =head2 DB_File - Perl5 access to Berkeley DB version 1.x
8313 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
8317 =item Using DB_File with Berkeley DB version 2 or 3
8319 =item Interface to Berkeley DB
8321 =item Opening a Berkeley DB Database File
8323 =item Default Parameters
8325 =item In Memory Databases
8333 =item A Simple Example
8341 =item Changing the BTREE sort order
8343 =item Handling Duplicate Keys
8345 =item The get_dup() Method
8347 =item The find_dup() Method
8349 =item The del_dup() Method
8351 =item Matching Partial Keys
8359 =item The 'bval' Option
8361 =item A Simple Example
8363 =item Extra RECNO Methods
8365 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
8366 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
8368 =item Another Example
8372 =item THE API INTERFACE
8374 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
8375 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
8376 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
8377 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
8381 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
8382 B<filter_fetch_value>
8388 =item An Example -- the NULL termination problem.
8390 =item Another Example -- Key is a C int.
8394 =item HINTS AND TIPS
8398 =item Locking: The Trouble with fd
8400 =item Safe ways to lock a database
8402 B<Tie::DB_Lock>, B<Tie::DB_LockFile>, B<DB_File::Lock>
8404 =item Sharing Databases With C Applications
8406 =item The untie() Gotcha
8410 =item COMMON QUESTIONS
8414 =item Why is there Perl source in my database?
8416 =item How do I store complex data structures with DB_File?
8418 =item What does "Invalid Argument" mean?
8420 =item What does "Bareword 'DB_File' not allowed" mean?
8440 =head2 Data::Dumper - stringified perl data structures, suitable for both
8441 printing and C<eval>
8453 I<PACKAGE>->new(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dump I<or>
8454 I<PACKAGE>->Dump(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Seen(I<[HASHREF]>),
8455 I<$OBJ>->Values(I<[ARRAYREF]>), I<$OBJ>->Names(I<[ARRAYREF]>),
8462 =item Configuration Variables or Methods
8464 $Data::Dumper::Indent I<or> I<$OBJ>->Indent(I<[NEWVAL]>),
8465 $Data::Dumper::Purity I<or> I<$OBJ>->Purity(I<[NEWVAL]>),
8466 $Data::Dumper::Pad I<or> I<$OBJ>->Pad(I<[NEWVAL]>),
8467 $Data::Dumper::Varname I<or> I<$OBJ>->Varname(I<[NEWVAL]>),
8468 $Data::Dumper::Useqq I<or> I<$OBJ>->Useqq(I<[NEWVAL]>),
8469 $Data::Dumper::Terse I<or> I<$OBJ>->Terse(I<[NEWVAL]>),
8470 $Data::Dumper::Freezer I<or> $I<OBJ>->Freezer(I<[NEWVAL]>),
8471 $Data::Dumper::Toaster I<or> $I<OBJ>->Toaster(I<[NEWVAL]>),
8472 $Data::Dumper::Deepcopy I<or> $I<OBJ>->Deepcopy(I<[NEWVAL]>),
8473 $Data::Dumper::Quotekeys I<or> $I<OBJ>->Quotekeys(I<[NEWVAL]>),
8474 $Data::Dumper::Bless I<or> $I<OBJ>->Bless(I<[NEWVAL]>),
8475 $Data::Dumper::Maxdepth I<or> $I<OBJ>->Maxdepth(I<[NEWVAL]>)
8495 =head2 Devel::DProf - a Perl code profiler
8503 =item PROFILE FORMAT
8515 =head2 Devel::Peek - A data debugging tool for the XS programmer
8525 =item Memory footprint debugging
8533 =item A simple scalar string
8535 =item A simple scalar number
8537 =item A simple scalar with an extra reference
8539 =item A reference to a simple scalar
8541 =item A reference to an array
8543 =item A reference to a hash
8545 =item Dumping a large array or hash
8547 =item A reference to an SV which holds a C pointer
8549 =item A reference to a subroutine
8563 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
8573 =head2 DirHandle - supply object methods for directory handles
8583 =head2 Dumpvalue - provides screen dump of Perl data.
8595 C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
8596 C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<tick>, C<HighBit>,
8597 C<printUndef>, C<UsageOnly>, unctrl, subdump, bareStringify, quoteHighBit,
8602 dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump,
8603 veryCompact, set, get
8609 =head2 DynaLoader - Dynamically load C libraries into Perl code
8617 @dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs,
8618 @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(),
8619 dl_load_file(), dl_unload_file(), dl_loadflags(), dl_find_symbol(),
8620 dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(),
8627 =head2 DynaLoader::XSLoader, XSLoader - Dynamically load C libraries into
8640 =head2 Encode - character encodings
8650 =item chars With Encoding
8652 =item Testing For UTF-8
8654 =item Toggling UTF-8-ness
8656 =item UTF-16 and UTF-32 Encodings
8658 =item Handling Malformed Data
8662 =head2 English - use nice English (or awk) names for ugly punctuation
8675 =head2 Env - perl module that imports environment variables as scalars or
8690 =head2 Errno - System errno constants
8706 =head2 Exporter - Implements default import method for modules
8718 =item Selecting What To Export
8720 =item Specialised Import Lists
8722 =item Exporting without using Export's import method
8724 =item Module Version Checking
8726 =item Managing Unknown Symbols
8728 =item Tag Handling Utility Functions
8734 =head2 Exporter::Heavy - Exporter guts
8744 =head2 ExtUtils::Command - utilities to replace common UNIX commands in
8765 mv source... destination
8767 cp source... destination
8785 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
8797 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
8798 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
8808 =head2 ExtUtils::Install - install files from here to there
8818 =head2 ExtUtils::Installed - Inventory management of installed modules
8830 new(), modules(), files(), directories(), directory_tree(), validate(),
8831 packlist(), version()
8839 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
8847 For static extensions, For dynamic extensions, For dynamic extensions
8853 =item LDLOADLIBS and LD_RUN_PATH
8863 =item VMS implementation
8865 =item Win32 implementation
8873 =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in
8882 canonpath, cflags, manifypods, perl_archive
8886 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
8897 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
8909 =item Preloaded methods
8929 =item SelfLoaded methods
8975 file_name_is_absolute
8981 =item Methods to actually produce chunks of text for the Makefile
9021 maybe_command_in_dirs
9059 replace_manpage_separator
9073 test_via_harness (o)
9103 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
9114 =item Methods always loaded
9126 =item SelfLoaded methods
9128 guess_name (override)
9132 find_perl (override)
9136 maybe_command (override)
9138 maybe_command_in_dirs (override)
9140 perl_script (override)
9142 file_name_is_absolute (override)
9144 replace_manpage_separator
9146 init_others (override)
9148 constants (override)
9152 const_cccmd (override)
9154 pm_to_blib (override)
9156 tool_autosplit (override)
9158 tool_sxubpp (override)
9160 xsubpp_version (override)
9162 tools_other (override)
9172 top_targets (override)
9176 dynamic_lib (override)
9178 dynamic_bs (override)
9180 static_lib (override)
9182 manifypods (override)
9184 processPL (override)
9186 installbin (override)
9192 realclean (override)
9194 dist_basics (override)
9196 dist_core (override)
9200 dist_test (override)
9204 perldepend (override)
9210 test_via_harness (override)
9212 test_via_script (override)
9214 makeaperl (override)
9218 =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in
9245 test_via_harness (o)
9247 tool_autosplit (override)
9265 =head2 ExtUtils::MakeMaker - create an extension Makefile
9275 =item How To Write A Makefile.PL
9277 =item Default Makefile Behaviour
9285 =item PREFIX and LIB attribute
9289 =item Static Linking of a new Perl Binary
9291 =item Determination of Perl Library and Installation Locations
9293 =item Which architecture dependent directory?
9295 =item Using Attributes and Parameters
9297 ABSTRACT, ABSTRACT_FROM, AUTHOR, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG,
9298 CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT,
9299 EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, HTMLLIBPODS,
9300 HTMLSCRIPTPODS, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN,
9301 INSTALLDIRS, INSTALLHTMLPRIVLIBDIR, INSTALLHTMLSCRIPTDIR,
9302 INSTALLHTMLSITELIBDIR, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB,
9303 INSTALLSCRIPT, INSTALLSITEARCH, INSTALLSITELIB, INST_ARCHLIB, INST_BIN,
9304 INST_EXE, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_LIB, INST_MAN1DIR,
9305 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE,
9306 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
9307 NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
9308 PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, PERL_SRC, PERM_RW, PERM_RWX,
9309 PL_FILES, PM, PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT,
9310 PREFIX, PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT,
9311 XSPROTOARG, XS_VERSION
9313 =item Additional lowercase attributes
9315 clean, depend, dist, dynamic_lib, linkext, macro, realclean, test,
9318 =item Overriding MakeMaker Methods
9320 =item Hintsfile support
9322 =item Distribution Support
9324 make distcheck, make skipcheck, make distclean, make manifest,
9325 make distdir, make tardist, make dist, make uutardist, make
9326 shdist, make zipdist, make ci
9328 =item Disabling an extension
9342 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
9354 =item GLOBAL VARIABLES
9358 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
9359 C<Added to MANIFEST:> I<file>
9367 =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
9379 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
9389 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
9398 DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME
9406 =head2 ExtUtils::Packlist - manage .packlist files
9418 new(), read(), write(), validate(), packlist_file()
9426 =head2 ExtUtils::testlib - add blib/* directories to @INC
9436 =head2 Fatal - replace functions with equivalents which succeed or die
9448 =head2 Fcntl - load the C Fcntl.h defines
9458 =item EXPORTED SYMBOLS
9462 =head2 File::Basename, fileparse - split a pathname into pieces
9470 fileparse_set_fstype, fileparse
9474 C<basename>, C<dirname>
9478 =head2 File::CheckTree, validate - run many filetest checks on a tree
9488 =head2 File::Compare - Compare files or filehandles
9502 =head2 File::Copy - Copy files or filehandles
9512 =item Special behaviour if C<syscopy> is defined (OS/2, VMS and Win32)
9514 rmscopy($from,$to[,$date_flag])
9524 =head2 File::DosGlob - DOS like globbing and then some
9532 =item EXPORTS (by request only)
9544 =head2 File::Find, find - traverse a file tree
9552 C<wanted>, C<bydepth>, C<preprocess>, C<postprocess>, C<follow>,
9553 C<follow_fast>, C<follow_skip>, C<no_chdir>, C<untaint>,
9554 C<untaint_pattern>, C<untaint_skip>
9560 =head2 File::Glob - Perl extension for BSD glob routine
9568 C<GLOB_ERR>, C<GLOB_MARK>, C<GLOB_NOCASE>, C<GLOB_NOCHECK>, C<GLOB_NOSORT>,
9569 C<GLOB_BRACE>, C<GLOB_NOMAGIC>, C<GLOB_QUOTE>, C<GLOB_TILDE>, C<GLOB_CSH>
9573 C<GLOB_NOSPACE>, C<GLOB_ABEND>
9581 =head2 File::Path - create or remove directory trees
9593 =head2 File::Spec - portably perform operations on file names
9607 =head2 File::Spec::Functions - portably perform operations on file names
9625 =head2 File::Spec::Mac - File::Spec for MacOS
9653 file_name_is_absolute
9673 =head2 File::Spec::OS2 - methods for OS/2 file specs
9683 =head2 File::Spec::Unix - methods used by File::Spec
9715 file_name_is_absolute
9737 =head2 File::Spec::VMS - methods for VMS file specs
9753 =item Methods always loaded
9755 canonpath (override)
9773 case_tolerant (override)
9777 file_name_is_absolute (override)
9779 splitpath (override)
9795 =head2 File::Spec::Win32 - methods for Win32 file specs
9825 =head2 File::Temp - return name and handle of a temporary file safely
9849 =item MKTEMP FUNCTIONS
9863 =item POSIX FUNCTIONS
9873 =item ADDITIONAL FUNCTIONS
9881 =item UTILITY FUNCTIONS
9889 =item PACKAGE VARIABLES
9891 B<safe_level>, STANDARD, MEDIUM, HIGH
9909 =head2 File::stat - by-name interface to Perl's built-in stat() functions
9923 =head2 FileCache - keep more files open than the system permits
9935 =head2 FileHandle - supply object methods for filehandles
9943 $fh->print, $fh->printf, $fh->getline, $fh->getlines
9949 =head2 FindBin - Locate directory of original perl script
9957 =item EXPORTABLE VARIABLES
9967 =head2 GDBM_File - Perl5 access to the gdbm library.
9983 =head2 Getopt::Long - Extended processing of command line options
9991 =item Command Line Options, an Introduction
9993 =item Getting Started with Getopt::Long
9997 =item Simple options
9999 =item A little bit less simple options
10001 =item Mixing command line option with other arguments
10003 =item Options with values
10005 =item Options with multiple values
10007 =item Options with hash values
10009 =item User-defined subroutines to handle options
10011 =item Options with multiple names
10013 =item Case and abbreviations
10015 =item Summary of Option Specifications
10017 !, +, s, i, f, : I<type> [ I<desttype> ]
10021 =item Advanced Possibilities
10025 =item Object oriented interface
10027 =item Documentation and help texts
10029 =item Storing options in a hash
10033 =item The lonesome dash
10035 =item Argument call-back
10039 =item Configuring Getopt::Long
10041 default, posix_default, auto_abbrev, getopt_compat, gnu_compat, gnu_getopt,
10042 require_order, permute, bundling (default: disabled), bundling_override
10043 (default: disabled), ignore_case (default: enabled), ignore_case_always
10044 (default: disabled), pass_through (default: disabled), prefix,
10045 prefix_pattern, debug (default: disabled)
10047 =item Return values and Errors
10053 =item Default destinations
10055 =item Alternative option starters
10057 =item Configuration variables
10061 =item Trouble Shooting
10065 =item Warning: Ignoring '!' modifier for short option
10067 =item GetOptions does not return a false result when an option is not
10074 =item COPYRIGHT AND DISCLAIMER
10078 =head2 Getopt::Std, getopt - Process single-character switches with switch
10089 =head2 I18N::Collate - compare 8-bit scalar data according to the current
10100 =head2 IO - load various IO modules
10110 =head2 IO::Dir - supply object methods for directory handles
10118 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
10119 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
10129 =head2 IO::File - supply object methods for filehandles
10139 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
10143 open( FILENAME [,MODE [,PERMS]] )
10151 =head2 IO::Handle - supply object methods for I/O handles
10161 new (), new_from_fd ( FD, MODE )
10165 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
10166 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
10167 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
10168 $io->blocking ( [ BOOL ] ), $io->untaint
10180 =head2 IO::Pipe - supply object methods for pipes
10190 new ( [READER, WRITER] )
10194 reader ([ARGS]), writer ([ARGS]), handles ()
10204 =head2 IO::Poll - Object interface to system poll call
10214 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
10215 IO ), handles( [ EVENT_MASK ] )
10225 =head2 IO::Seekable - supply seek based methods for I/O objects
10239 =head2 IO::Select - OO interface to the select system call
10249 new ( [ HANDLES ] )
10253 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
10254 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
10255 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
10265 =head2 IO::Socket - Object interface to socket communications
10279 accept([PKG]), socketpair(DOMAIN, TYPE, PROTOCOL), timeout([VAL]),
10280 sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected
10290 =head2 IO::Socket::INET - Object interface for AF_INET domain sockets
10306 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
10319 =head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets
10333 hostpath(), peerpath()
10343 =head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory
10352 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
10353 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
10363 =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
10373 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
10377 open( FILENAME [,MODE [,PERMS]] )
10385 =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
10396 new (), new_from_fd ( FD, MODE )
10400 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
10401 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
10402 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
10403 $io->blocking ( [ BOOL ] ), $io->untaint
10415 =head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes
10425 new ( [READER, WRITER] )
10429 reader ([ARGS]), writer ([ARGS]), handles ()
10439 =head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call
10449 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
10450 IO ), handles( [ EVENT_MASK ] )
10460 =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
10475 =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
10486 new ( [ HANDLES ] )
10490 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
10491 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
10492 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
10502 =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
10517 accept([PKG]), socketpair(DOMAIN, TYPE, PROTOCOL), timeout([VAL]),
10518 sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected
10528 =head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for
10529 AF_INET domain sockets
10545 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
10558 =head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for
10559 AF_UNIX domain sockets
10573 hostpath(), peerpath()
10583 =head2 IPC::Msg - SysV Msg IPC object class
10593 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
10594 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
10605 =head2 IPC::Open2, open2 - open a process for both reading and writing
10619 =head2 IPC::Open3, open3 - open a process for reading, writing, and error
10632 =head2 IPC::Semaphore - SysV Semaphore IPC object class
10642 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
10643 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
10644 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
10655 =head2 IPC::SysV - SysV IPC constants
10673 =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class
10683 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
10684 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
10695 =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object
10706 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
10707 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
10708 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
10719 =head2 Math::BigFloat - Arbitrary length float math package
10727 number format, Error returns 'NaN', Division is computed to, Rounding is
10736 =head2 Math::BigInt - Arbitrary size integer math package
10744 Canonical notation, Input, Output
10748 =item Autocreating constants
10756 =head2 Math::Complex - complex numbers and associated mathematical
10769 =item STRINGIFICATION
10773 =item CHANGED IN PERL 5.6
10779 =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
10781 =item ERRORS DUE TO INDIGESTIBLE ARGUMENTS
10789 =head2 Math::Trig - trigonometric functions
10797 =item TRIGONOMETRIC FUNCTIONS
10803 =item ERRORS DUE TO DIVISION BY ZERO
10805 =item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS
10809 =item PLANE ANGLE CONVERSIONS
10811 =item RADIAL COORDINATE CONVERSIONS
10815 =item COORDINATE SYSTEMS
10817 =item 3-D ANGLE CONVERSIONS
10819 cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian,
10820 cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
10824 =item GREAT CIRCLE DISTANCES
10834 =head2 NDBM_File - Tied access to ndbm files
10840 C<O_RDONLY>, C<O_WRONLY>, C<O_RDWR>
10846 =item C<ndbm store returned -1, errno 22, key "..." at ...>
10850 =item BUGS AND WARNINGS
10854 =head2 Net::Ping - check a remote host for reachability
10866 Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
10867 $timeout]);, $p->close();, pingecho($host [, $timeout]);
10877 =head2 Net::hostent - by-name interface to Perl's built-in gethost*()
10894 =head2 Net::netent - by-name interface to Perl's built-in getnet*()
10911 =head2 Net::protoent - by-name interface to Perl's built-in getproto*()
10926 =head2 Net::servent - by-name interface to Perl's built-in getserv*()
10943 =head2 O - Generic interface to Perl Compiler backends
10953 =item IMPLEMENTATION
10959 =head2 ODBM_File - Tied access to odbm files
10965 C<O_RDONLY>, C<O_WRONLY>, C<O_RDWR>
10971 =item C<odbm store returned -1, errno 22, key "..." at ...>
10975 =item BUGS AND WARNINGS
10979 =head2 Opcode - Disable named opcodes when compiling perl code
10991 =item Operator Names and Operator Lists
10993 an operator name (opname), an operator tag name (optag), a negated opname
10994 or optag, an operator set (opset)
10996 =item Opcode Functions
10998 opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
10999 full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
11000 define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
11003 =item Manipulating Opsets
11005 =item TO DO (maybe)
11011 =item Predefined Opcode Tags
11013 :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
11014 :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open,
11015 :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided,
11024 =head2 Opcode::Safe, Safe - Compile and execute code in restricted
11033 a new namespace, an operator mask
11039 =item RECENT CHANGES
11041 =item Methods in class Safe
11043 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
11044 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
11045 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
11046 root (NAMESPACE), mask (MASK)
11048 =item Some Safety Issues
11050 Memory, CPU, Snooping, Signals, State Changes
11058 =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
11071 =head2 POSIX - Perl interface to IEEE Std 1003.1
11085 _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
11086 atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
11087 clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
11088 cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
11089 execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
11090 fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
11091 fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
11092 fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
11093 getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
11094 getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
11095 iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
11096 isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
11097 longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
11098 memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
11099 opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
11100 qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
11101 rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
11102 setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
11103 sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
11104 strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
11105 strncat, strncmp, strncpy, strpbrk, strrchr, strspn, strstr, strtod,
11106 strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, tcdrain,
11107 tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, tmpfile,
11108 tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, ungetc,
11109 unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, wcstombs,
11116 =item POSIX::SigAction
11120 =item POSIX::SigSet
11122 new, addset, delset, emptyset, fillset, ismember
11124 =item POSIX::Termios
11126 new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
11127 getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
11128 setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
11129 field values, c_cflag field values, c_iflag field values, c_lflag field
11130 values, c_oflag field values
11134 =item PATHNAME CONSTANTS
11138 =item POSIX CONSTANTS
11142 =item SYSTEM CONFIGURATION
11200 =head2 Pod::Checker, podchecker() - check pod documents for syntax errors
11206 =item OPTIONS/ARGUMENTS
11212 B<-warnings> =E<gt> I<val>
11224 empty =headn, =over on line I<N> without closing =back, =item without
11225 previous =over, =back without previous =over, No argument for =begin, =end
11226 without =begin, Nested =begin's, =for without formatter specification,
11227 unresolved internal link I<NAME>, Unknown command "I<CMD>", Unknown
11228 interior-sequence "I<SEQ>", nested commands
11229 I<CMD>E<lt>...I<CMD>E<lt>...E<gt>...E<gt>, garbled entity I<STRING>, Entity
11230 number out of range, malformed link LE<lt>E<gt>, nonempty ZE<lt>E<gt>,
11231 empty XE<lt>E<gt>, Spurious text after =pod / =cut, Spurious character(s)
11236 multiple occurence of link target I<name>, line containing nothing but
11237 whitespace in paragraph, file does not start with =head, No numeric
11238 argument for =over, previous =item has no contents, preceding non-item
11239 paragraph(s), =item type mismatch (I<one> vs. I<two>), I<N> unescaped
11240 C<E<lt>E<gt>> in paragraph, Unknown entity, No items in =over, No argument
11241 for =item, empty section in previous paragraph, Verbatim paragraph in NAME
11246 collapsing newlines to blanks, ignoring leading/trailing whitespace in
11247 link, (section) in '$page' deprecated, alternative text/node '%s' contains
11260 C<Pod::Checker-E<gt>new( %options )>
11262 C<$checker-E<gt>poderror( @args )>, C<$checker-E<gt>poderror( {%opts},
11265 C<$checker-E<gt>num_errors()>
11267 C<$checker-E<gt>name()>
11269 C<$checker-E<gt>node()>
11271 C<$checker-E<gt>idx()>
11273 C<$checker-E<gt>hyperlink()>
11281 =head2 Pod::Find - find POD documents in directory trees
11293 =item C<pod_find( { %opts } , @directories )>
11295 C<-verbose =E<gt> 1>, C<-perl =E<gt> 1>, C<-script =E<gt> 1>, C<-inc =E<gt>
11302 =item C<simplify_name( $str )>
11308 =item C<pod_where( { %opts }, $pod )>
11310 C<-inc =E<gt> 1>, C<-dirs =E<gt> [ $dir1, $dir2, ... ]>, C<-verbose =E<gt>
11317 =item C<contains_pod( $file , $verbose )>
11329 =head2 Pod::Html - module to convert pod files to HTML
11339 backlink, css, flush, header, help, htmldir, htmlroot, index, infile,
11340 libpods, netscape, outfile, podpath, podroot, quiet, recurse, title,
11355 =head2 Pod::InputObjects - objects representing POD input paragraphs,
11368 package B<Pod::InputSource>, package B<Pod::Paragraph>, package
11369 B<Pod::InteriorSequence>, package B<Pod::ParseTree>
11375 =item B<Pod::InputSource>
11399 =item B<was_cutting()>
11405 =item B<Pod::Paragraph>
11411 =item Pod::Paragraph-E<gt>B<new()>
11417 =item $pod_para-E<gt>B<cmd_name()>
11423 =item $pod_para-E<gt>B<text()>
11429 =item $pod_para-E<gt>B<raw_text()>
11435 =item $pod_para-E<gt>B<cmd_prefix()>
11441 =item $pod_para-E<gt>B<cmd_separator()>
11447 =item $pod_para-E<gt>B<parse_tree()>
11453 =item $pod_para-E<gt>B<file_line()>
11459 =item B<Pod::InteriorSequence>
11465 =item Pod::InteriorSequence-E<gt>B<new()>
11471 =item $pod_seq-E<gt>B<cmd_name()>
11477 =item $pod_seq-E<gt>B<prepend()>
11483 =item $pod_seq-E<gt>B<append()>
11489 =item $pod_seq-E<gt>B<nested()>
11495 =item $pod_seq-E<gt>B<raw_text()>
11501 =item $pod_seq-E<gt>B<left_delimiter()>
11507 =item $pod_seq-E<gt>B<right_delimiter()>
11513 =item $pod_seq-E<gt>B<parse_tree()>
11519 =item $pod_seq-E<gt>B<file_line()>
11525 =item Pod::InteriorSequence::B<DESTROY()>
11531 =item B<Pod::ParseTree>
11537 =item Pod::ParseTree-E<gt>B<new()>
11543 =item $ptree-E<gt>B<top()>
11549 =item $ptree-E<gt>B<children()>
11555 =item $ptree-E<gt>B<prepend()>
11561 =item $ptree-E<gt>B<append()>
11567 =item $ptree-E<gt>B<raw_text()>
11573 =item Pod::ParseTree::B<DESTROY()>
11585 =head2 Pod::LaTeX - Convert Pod data to formatted Latex
11597 =item OBJECT METHODS
11605 =item Data Accessors
11621 B<ReplaceNAMEwithSection>
11623 B<StartWithNewPage>
11637 =item Subclassed methods
11651 B<interior_sequence>
11667 =item Methods for headings
11675 =item Internal methods
11681 B<_replace_special_chars>
11687 B<_clean_latex_commands>
11703 =head2 Pod::Man - Convert POD data to formatted *roff input
11711 center, date, fixed, fixedbold, fixeditalic, fixedbolditalic, quotes,
11716 roff font should be 1 or 2 chars, not "%s", Invalid link %s, Invalid quote
11717 specification "%s", %s:%d: Unknown command paragraph "%s", Unknown escape
11718 EE<lt>%sE<gt>, Unknown sequence %s, %s: Unknown command paragraph "%s" on
11719 line %d, Unmatched =back
11729 =head2 Pod::ParseUtils - helpers for POD parsing and conversion
11743 Pod::List-E<gt>new()
11751 $list-E<gt>indent()
11759 $list-E<gt>parent()
11765 =item Pod::Hyperlink
11767 Pod::Hyperlink-E<gt>new()
11771 $link-E<gt>parse($string)
11773 $link-E<gt>markup($string)
11777 $link-E<gt>warning()
11779 $link-E<gt>file(), $link-E<gt>line()
11785 $link-E<gt>alttext()
11795 Pod::Cache-E<gt>new()
11801 $cache-E<gt>find_page($name)
11805 =item Pod::Cache::Item
11807 Pod::Cache::Item-E<gt>new()
11811 $cacheitem-E<gt>page()
11813 $cacheitem-E<gt>description()
11815 $cacheitem-E<gt>path()
11817 $cacheitem-E<gt>file()
11819 $cacheitem-E<gt>nodes()
11821 $cacheitem-E<gt>find_node($name)
11823 $cacheitem-E<gt>idx()
11833 =head2 Pod::Parser - base class for creating POD filters and translators
11845 =item QUICK OVERVIEW
11847 =item PARSING OPTIONS
11849 B<-want_nonPODs> (default: unset), B<-process_cut_cmd> (default: unset),
11850 B<-warnings> (default: unset)
11856 =item RECOMMENDED SUBROUTINE/METHOD OVERRIDES
11864 C<$cmd>, C<$text>, C<$line_num>, C<$pod_para>
11870 =item B<verbatim()>
11872 C<$text>, C<$line_num>, C<$pod_para>
11878 =item B<textblock()>
11880 C<$text>, C<$line_num>, C<$pod_para>
11886 =item B<interior_sequence()>
11892 =item OPTIONAL SUBROUTINE/METHOD OVERRIDES
11904 =item B<initialize()>
11910 =item B<begin_pod()>
11916 =item B<begin_input()>
11922 =item B<end_input()>
11934 =item B<preprocess_line()>
11940 =item B<preprocess_paragraph()>
11946 =item METHODS FOR PARSING AND PROCESSING
11952 =item B<parse_text()>
11954 B<-expand_seq> =E<gt> I<code-ref>|I<method-name>, B<-expand_text> =E<gt>
11955 I<code-ref>|I<method-name>, B<-expand_ptree> =E<gt>
11956 I<code-ref>|I<method-name>
11962 =item B<interpolate()>
11968 =item B<parse_paragraph()>
11974 =item B<parse_from_filehandle()>
11980 =item B<parse_from_file()>
11986 =item ACCESSOR METHODS
11992 =item B<errorsub()>
12004 =item B<parseopts()>
12010 =item B<output_file()>
12016 =item B<output_handle()>
12022 =item B<input_file()>
12028 =item B<input_handle()>
12034 =item B<input_streams()>
12040 =item B<top_stream()>
12046 =item PRIVATE METHODS AND DATA
12052 =item B<_push_input_stream()>
12058 =item B<_pop_input_stream()>
12064 =item TREE-BASED PARSING
12072 =head2 Pod::Plainer - Perl extension for converting Pod to old style Pod.
12092 =head2 Pod::Select, podselect() - extract selected sections of POD from
12105 =item SECTION SPECIFICATIONS
12107 =item RANGE SPECIFICATIONS
12113 =item OBJECT METHODS
12119 =item B<curr_headings()>
12131 =item B<add_selection()>
12137 =item B<clear_selections()>
12143 =item B<match_section()>
12149 =item B<is_selected()>
12155 =item EXPORTED FUNCTIONS
12161 =item B<podselect()>
12163 B<-output>, B<-sections>, B<-ranges>
12169 =item PRIVATE METHODS AND DATA
12175 =item B<_compile_section_spec()>
12181 =item $self->{_SECTION_HEADINGS}
12187 =item $self->{_SELECTED_SECTIONS}
12199 =head2 Pod::Text - Convert POD data to formatted ASCII text
12207 alt, indent, loose, quotes, sentence, width
12211 Bizarre space in item, Can't open %s for reading: %s, Invalid quote
12212 specification "%s", %s:%d: Unknown command paragraph "%s", Unknown escape:
12213 %s, Unknown sequence: %s, Unmatched =back
12225 =head2 Pod::Text::Color - Convert POD data to formatted color ASCII text
12241 =head2 Pod::Text::Termcap, Pod::Text::Color - Convert POD data to ASCII
12242 text with format escapes
12256 =head2 Pod::Usage, pod2usage() - print a usage message from embedded pod
12265 C<-message>, C<-msg>, C<-exitval>, C<-verbose>, C<-output>, C<-input>,
12274 =item Recommended Use
12282 =item ACKNOWLEDGEMENTS
12286 =head2 SDBM_File - Tied access to sdbm files
12294 C<O_RDONLY>, C<O_WRONLY>, C<O_RDWR>
12300 =item C<sdbm store returned -1, errno 22, key "..." at ...>
12304 =item BUGS AND WARNINGS
12308 =head2 Safe - Compile and execute code in restricted compartments
12316 a new namespace, an operator mask
12322 =item RECENT CHANGES
12324 =item Methods in class Safe
12326 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
12327 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
12328 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
12329 root (NAMESPACE), mask (MASK)
12331 =item Some Safety Issues
12333 Memory, CPU, Snooping, Signals, State Changes
12341 =head2 Search::Dict, look - search for key in dictionary file
12351 =head2 SelectSaver - save and restore selected file handle
12361 =head2 SelfLoader - load functions only on demand
12371 =item The __DATA__ token
12373 =item SelfLoader autoloading
12375 =item Autoloading and package lexicals
12377 =item SelfLoader and AutoLoader
12379 =item __DATA__, __END__, and the FOOBAR::DATA filehandle.
12381 =item Classes and inherited methods.
12385 =item Multiple packages and fully qualified subroutine names
12389 =head2 Shell - run shell commands transparently within perl
12399 =item OBJECT ORIENTED SYNTAX
12407 =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
12408 socket.h defines and structure manipulators
12416 inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
12417 INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
12418 SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
12419 SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
12420 pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
12424 =head2 Storable - persistency for perl data structures
12434 =item ADVISORY LOCKING
12438 =item CANONICAL REPRESENTATION
12440 =item ERROR REPORTING
12448 C<STORABLE_freeze> I<obj>, I<cloning>, C<STORABLE_thaw> I<obj>, I<cloning>,
12453 C<Storable::last_op_in_netorder>, C<Storable::is_storing>,
12454 C<Storable::is_retrieving>
12478 =head2 Symbol - manipulate Perl symbols and their names
12488 =head2 Sys::Hostname - Try every conceivable way to get hostname
12500 =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
12501 interface to the UNIX syslog(3) calls
12509 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
12510 setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02),
12521 =head2 Syslog::Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog -
12522 Perl interface to the UNIX syslog(3) calls
12530 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
12531 setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02),
12542 =head2 Term::ANSIColor - Color screen output using ANSI escape sequences
12552 Invalid attribute name %s, Name "%s" used only once: possible typo, No
12553 comma allowed after filehandle, Bareword "%s" not allowed while "strict
12564 =head2 Term::Cap - Perl termcap interface
12576 =head2 Term::Complete - Perl word completion module
12584 E<lt>tabE<gt>, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
12594 =head2 Term::ReadLine - Perl interface to various C<readline> packages. If
12595 no real package is found, substitutes stubs instead of basic functions.
12603 =item Minimal set of supported functions
12605 C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
12606 C<MinLine>, C<findConsole>, Attribs, C<Features>
12608 =item Additional supported functions
12610 C<tkRunning>, C<ornaments>, C<newTTY>
12618 =head2 Test - provides a simple framework for writing test scripts
12628 NORMAL TESTS, SKIPPED TESTS, TODO TESTS
12640 =head2 Test::Harness - run perl standard test scripts with statistics
12650 =item The test script output
12658 C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
12659 %s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
12660 %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
12673 =head2 Text::Abbrev, abbrev - create an abbreviation table from a list
12685 =head2 Text::ParseWords - parse text into an array of tokens or array of
12696 0 a simple word, 1 multiple spaces are skipped because of our $delim, 2 use
12697 of quotes to include a space in a word, 3 use of a backslash to include a
12698 space in a word, 4 use of a backslash to remove the special meaning of a
12699 double-quote, 5 another simple word (note the lack of effect of the
12700 backslashed double-quote)
12706 =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
12723 =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
12738 =head2 Text::Wrap - line wrapping to form simple paragraphs
12752 =head2 Thread - manipulate threads in Perl (EXPERIMENTAL, subject to
12763 new \&start_sub, new \&start_sub, LIST, lock VARIABLE, async BLOCK;,
12764 Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE,
12765 cond_broadcast VARIABLE, yield
12769 join, eval, detach, equal, tid
12777 =head2 Thread::Queue - thread-safe queues
12785 =item FUNCTIONS AND METHODS
12787 new, enqueue LIST, dequeue, dequeue_nb, pending
12793 =head2 Thread::Semaphore - thread-safe semaphores
12801 =item FUNCTIONS AND METHODS
12803 new, new NUMBER, down, down NUMBER, up, up NUMBER
12807 =head2 Thread::Signal - Start a thread which runs signal handlers reliably
12819 =head2 Thread::Specific - thread-specific keys
12829 =head2 Tie::Array - base class for tied arrays
12837 TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index,
12838 FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
12839 key, DELETE this, key, CLEAR this, DESTROY this, PUSH this, LIST, POP this,
12840 SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST
12848 =head2 Tie::Handle, Tie::StdHandle - base class definitions for tied
12857 TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this,
12858 LIST, PRINTF this, format, LIST, READ this, scalar, length, offset,
12859 READLINE this, GETC this, CLOSE this, OPEN this, filename, BINMODE this,
12860 EOF this, TELL this, SEEK this, offset, whence, DESTROY this
12862 =item MORE INFORMATION
12864 =item COMPATIBILITY
12868 =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
12876 TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
12877 this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
12881 =item MORE INFORMATION
12885 =head2 Tie::RefHash - use references as hash keys
12903 =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
12912 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
12914 =item MORE INFORMATION
12918 =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
12930 =head2 Time::Local - efficiently compute time from local and GMT time
12938 =item IMPLEMENTATION
12944 =head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
12959 =head2 Time::localtime - by-name interface to Perl's built-in localtime()
12974 =head2 Time::tm - internal object used by Time::gmtime and Time::localtime
12986 =head2 UNIVERSAL - base class for ALL classes (blessed references)
12994 isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa (
12995 VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD )
12999 =head2 User::grent - by-name interface to Perl's built-in getgr*()
13014 =head2 User::pwent - by-name interface to Perl's built-in getpw*()
13025 =item System Specifics
13039 =head2 Win32 - Interfaces to some Win32 API Functions
13047 =item Alphabetical Listing of Win32 Functions
13049 Win32::AbortSystemShutdown(MACHINE), Win32::BuildNumber(),
13050 Win32::CopyFile(FROM, TO, OVERWRITE), Win32::DomainName(),
13051 Win32::ExpandEnvironmentStrings(STRING), Win32::FormatMessage(ERRORCODE),
13052 Win32::FsType(), Win32::FreeLibrary(HANDLE), Win32::GetArchName(),
13053 Win32::GetChipName(), Win32::GetCwd(), Win32::GetFullPathName(FILENAME),
13054 Win32::GetLastError(), Win32::GetLongPathName(PATHNAME),
13055 Win32::GetNextAvailDrive(), Win32::GetOSVersion(),
13056 Win32::GetShortPathName(PATHNAME), Win32::GetProcAddress(INSTANCE,
13057 PROCNAME), Win32::GetTickCount(), Win32::InitiateSystemShutdown(MACHINE,
13058 MESSAGE, TIMEOUT, FORCECLOSE, REBOOT), Win32::IsWinNT(), Win32::IsWin95(),
13059 Win32::LoadLibrary(LIBNAME), Win32::LoginName(),
13060 Win32::LookupAccountName(SYSTEM, ACCOUNT, DOMAIN, SID, SIDTYPE),
13061 Win32::LookupAccountSID(SYSTEM, SID, ACCOUNT, DOMAIN, SIDTYPE),
13062 Win32::MsgBox(MESSAGE [, FLAGS [, TITLE]]), Win32::NodeName(),
13063 Win32::RegisterServer(LIBRARYNAME), Win32::SetCwd(NEWDIRECTORY),
13064 Win32::SetLastError(ERROR), Win32::Sleep(TIME), Win32::Spawn(COMMAND, ARGS,
13065 PID), Win32::UnregisterServer(LIBRARYNAME)
13071 =head2 XSLoader - Dynamically load C libraries into Perl code
13083 =head1 AUXILIARY DOCUMENTATION
13085 Here should be listed all the extra programs' documentation, but they
13086 don't all have manual pages yet:
13112 Larry Wall <F<larry@wall.org>>, with the help of oodles