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
20 modularity and reusability using innumerable modules, embeddable and
21 extensible, roll-your-own magic variables (including multiple simultaneous
22 DBM implementations), subroutines can now be overridden, autoloaded, and
23 prototyped, arbitrarily nested data structures and anonymous functions,
24 object-oriented programming, compilability into C code or Perl bytecode,
25 support for light-weight processes (threads), support for
26 internationalization, localization, and Unicode, lexical scoping, regular
27 expression enhancements, enhanced debugger and interactive Perl
28 environment, with integrated editor support, POSIX 1003.1 compliant library
46 =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
51 perlfaq: Structural overview of the FAQ, L<perlfaq1>: General Questions
52 About Perl, What is Perl?, Who supports Perl? Who develops it? Why is it
53 free?, Which version of Perl should I use?, What are perl4 and perl5?, What
54 is perl6?, How stable is Perl?, Is Perl difficult to learn?, How does Perl
55 compare with other languages like Java, Python, REXX, Scheme, or Tcl?, Can
56 I do [task] in Perl?, When shouldn't I program in Perl?, What's the
57 difference between "perl" and "Perl"?, Is it a Perl program or a Perl
58 script?, What is a JAPH?, Where can I get a list of Larry Wall witticisms?,
59 How can I convince my sysadmin/supervisor/employees to use version
60 (5/5.005/Perl instead of some other language)?, L<perlfaq2>: Obtaining and
61 Learning about Perl, What machines support Perl? Where do I get it?, How
62 can I get a binary version of Perl?, I don't have a C compiler on my
63 system. How can I compile perl?, I copied the Perl binary from one machine
64 to another, but scripts don't work, I grabbed the sources and tried to
65 compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make
66 it work?, What modules and extensions are available for Perl? What is
67 CPAN? What does CPAN/src/... mean?, Is there an ISO or ANSI certified
68 version of Perl?, Where can I get information on Perl?, What are the Perl
69 newsgroups on USENET? Where do I post questions?, Where should I post
70 source code?, Perl Books, Perl in Magazines, Perl on the Net: FTP and WWW
71 Access, What mailing lists are there for perl?, Archives of
72 comp.lang.perl.misc, Where can I buy a commercial version of Perl?, Where
73 do I send bug reports?, What is perl.com?, L<perlfaq3>: Programming Tools,
74 How do I do (anything)?, How can I use Perl interactively?, Is there a Perl
75 shell?, How do I debug my Perl programs?, How do I profile my Perl
76 programs?, How do I cross-reference my Perl programs?, Is there a
77 pretty-printer (formatter) for Perl?, Is there a ctags for Perl?, Is there
78 an IDE or Windows Perl Editor?, Where can I get Perl macros for vi?, Where
79 can I get perl-mode for emacs?, How can I use curses with Perl?, How can I
80 use X or Tk with Perl?, How can I generate simple menus without using CGI
81 or Tk?, What is undump?, How can I make my Perl program run faster?, How
82 can I make my Perl program take less memory?, Is it unsafe to return a
83 pointer to local data?, How can I free an array or hash so my program
84 shrinks?, How can I make my CGI script more efficient?, How can I hide the
85 source for my Perl program?, How can I compile my Perl program into byte
86 code or C?, How can I compile Perl into Java?, How can I get C<#!perl> to
87 work on [MS-DOS,NT,...]?, Can I write useful perl programs on the command
88 line?, Why don't perl one-liners work on my DOS/Mac/VMS system?, Where can
89 I learn about CGI or Web programming in Perl?, Where can I learn about
90 object-oriented Perl programming?, Where can I learn about linking C with
91 Perl? [h2xs, xsubpp], I've read perlembed, perlguts, etc., but I can't
92 embed perl inmy C program, what am I doing wrong?, When I tried to run my
93 script, I got this message. What does itmean?, What's MakeMaker?,
94 L<perlfaq4>: Data Manipulation, Why am I getting long decimals (eg,
95 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?,
96 Why isn't my octal data interpreted correctly?, Does Perl have a round()
97 function? What about ceil() and floor()? Trig functions?, How do I
98 convert bits into ints?, Why doesn't & work the way I want it to?, How do I
99 multiply matrices?, How do I perform an operation on a series of integers?,
100 How can I output Roman numerals?, Why aren't my random numbers random?, How
101 do I find the week-of-the-year/day-of-the-year?, How do I find the current
102 century or millennium?, How can I compare two dates and find the
103 difference?, How can I take a string and turn it into epoch seconds?, How
104 can I find the Julian Day?, How do I find yesterday's date?, Does Perl have
105 a year 2000 problem? Is Perl Y2K compliant?, How do I validate input?, How
106 do I unescape a string?, How do I remove consecutive pairs of characters?,
107 How do I expand function calls in a string?, How do I find matching/nesting
108 anything?, How do I reverse a string?, How do I expand tabs in a string?,
109 How do I reformat a paragraph?, How can I access/change the first N letters
110 of a string?, How do I change the Nth occurrence of something?, How can I
111 count the number of occurrences of a substring within a string?, How do I
112 capitalize all the words on one line?, How can I split a [character]
113 delimited string except when inside[character]? (Comma-separated files),
114 How do I strip blank space from the beginning/end of a string?, How do I
115 pad a string with blanks or pad a number with zeroes?, How do I extract
116 selected columns from a string?, How do I find the soundex value of a
117 string?, How can I expand variables in text strings?, What's wrong with
118 always quoting "$vars"?, Why don't my E<lt>E<lt>HERE documents work?, What
119 is the difference between a list and an array?, What is the difference
120 between $array[1] and @array[1]?, How can I remove duplicate elements from
121 a list or array?, How can I tell whether a list or array contains a certain
122 element?, How do I compute the difference of two arrays? How do I compute
123 the intersection of two arrays?, How do I test whether two arrays or hashes
124 are equal?, How do I find the first array element for which a condition is
125 true?, How do I handle linked lists?, How do I handle circular lists?, How
126 do I shuffle an array randomly?, How do I process/modify each element of an
127 array?, How do I select a random element from an array?, How do I permute N
128 elements of a list?, How do I sort an array by (anything)?, How do I
129 manipulate arrays of bits?, Why does defined() return true on empty arrays
130 and hashes?, How do I process an entire hash?, What happens if I add or
131 remove keys from a hash while iterating over it?, How do I look up a hash
132 element by value?, How can I know how many entries are in a hash?, How do I
133 sort a hash (optionally by value instead of key)?, How can I always keep my
134 hash sorted?, What's the difference between "delete" and "undef" with
135 hashes?, Why don't my tied hashes make the defined/exists distinction?, How
136 do I reset an each() operation part-way through?, How can I get the unique
137 keys from two hashes?, How can I store a multidimensional array in a DBM
138 file?, How can I make my hash remember the order I put elements into it?,
139 Why does passing a subroutine an undefined element in a hash create it?,
140 How can I make the Perl equivalent of a C structure/C++ class/hash or array
141 of hashes or arrays?, How can I use a reference as a hash key?, How do I
142 handle binary data correctly?, How do I determine whether a scalar is a
143 number/whole/integer/float?, How do I keep persistent data across program
144 calls?, How do I print out or copy a recursive data structure?, How do I
145 define methods for every class/object?, How do I verify a credit card
146 checksum?, How do I pack arrays of doubles or floats for XS code?,
147 L<perlfaq5>: Files and Formats, How do I flush/unbuffer an output
148 filehandle? Why must I do this?, How do I change one line in a file/delete
149 a line in a file/insert a line in the middle of a file/append to the
150 beginning of a file?, How do I count the number of lines in a file?, How do
151 I make a temporary file name?, How can I manipulate fixed-record-length
152 files?, How can I make a filehandle local to a subroutine? How do I pass
153 filehandles between subroutines? How do I make an array of filehandles?,
154 How can I use a filehandle indirectly?, How can I set up a footer format to
155 be used with write()?, How can I write() into a string?, How can I output
156 my numbers with commas added?, How can I translate tildes (~) in a
157 filename?, How come when I open a file read-write it wipes it out?, Why do
158 I sometimes get an "Argument list too long" when I use E<lt>*E<gt>?, Is
159 there a leak/bug in glob()?, How can I open a file with a leading "E<gt>"
160 or trailing blanks?, How can I reliably rename a file?, How can I lock a
161 file?, Why can't I just open(FH, ">file.lock")?, I still don't get locking.
162 I just want to increment the number in the file. How can I do this?, How
163 do I randomly update a binary file?, How do I get a file's timestamp in
164 perl?, How do I set a file's timestamp in perl?, How do I print to more
165 than one file at once?, How can I read in an entire file all at once?, How
166 can I read in a file by paragraphs?, How can I read a single character from
167 a file? From the keyboard?, How can I tell whether there's a character
168 waiting on a filehandle?, How do I do a C<tail -f> in perl?, How do I dup()
169 a filehandle in Perl?, How do I close a file descriptor by number?, Why
170 can't I use "C:\temp\foo" in DOS paths? What doesn't `C:\temp\foo.exe`
171 work?, Why doesn't glob("*.*") get all the files?, Why does Perl let me
172 delete read-only files? Why does C<-i> clobber protected files? Isn't
173 this a bug in Perl?, How do I select a random line from a file?, Why do I
174 get weird spaces when I print an array of lines?, L<perlfaq6>: Regexps, How
175 can I hope to use regular expressions without creating illegible and
176 unmaintainable code?, I'm having trouble matching over more than one line.
177 What's wrong?, How can I pull out lines between two patterns that are
178 themselves on different lines?, I put a regular expression into $/ but it
179 didn't work. What's wrong?, How do I substitute case insensitively on the
180 LHS, but preserving case on the RHS?, How can I make C<\w> match national
181 character sets?, How can I match a locale-smart version of C</[a-zA-Z]/>?,
182 How can I quote a variable to use in a regex?, What is C</o> really for?,
183 How do I use a regular expression to strip C style comments from a file?,
184 Can I use Perl regular expressions to match balanced text?, What does it
185 mean that regexes are greedy? How can I get around it?, How do I process
186 each word on each line?, How can I print out a word-frequency or
187 line-frequency summary?, How can I do approximate matching?, How do I
188 efficiently match many regular expressions at once?, Why don't
189 word-boundary searches with C<\b> work for me?, Why does using $&, $`, or
190 $' slow my program down?, What good is C<\G> in a regular expression?, Are
191 Perl regexes DFAs or NFAs? Are they POSIX compliant?, What's wrong with
192 using grep or map in a void context?, How can I match strings with
193 multibyte characters?, How do I match a pattern that is supplied by the
194 user?, L<perlfaq7>: General Perl Language Issues, Can I get a BNF/yacc/RE
195 for the Perl language?, What are all these $@%&* punctuation signs, and how
196 do I know when to use them?, Do I always/never have to quote my strings or
197 use semicolons and commas?, How do I skip some return values?, How do I
198 temporarily block warnings?, What's an extension?, Why do Perl operators
199 have different precedence than C operators?, How do I declare/create a
200 structure?, How do I create a module?, How do I create a class?, How can I
201 tell if a variable is tainted?, What's a closure?, What is variable suicide
202 and how can I prevent it?, How can I pass/return a {Function, FileHandle,
203 Array, Hash, Method, Regex}?, How do I create a static variable?, What's
204 the difference between dynamic and lexical (static) scoping? Between
205 local() and my()?, How can I access a dynamic variable while a similarly
206 named lexical is in scope?, What's the difference between deep and shallow
207 binding?, Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?, How do I
208 redefine a builtin function, operator, or method?, What's the difference
209 between calling a function as &foo and foo()?, How do I create a switch or
210 case statement?, How can I catch accesses to undefined
211 variables/functions/methods?, Why can't a method included in this same file
212 be found?, How can I find out my current package?, How can I comment out a
213 large block of perl code?, How do I clear a package?, How can I use a
214 variable as a variable name?, L<perlfaq8>: System Interaction, How do I
215 find out which operating system I'm running under?, How come exec() doesn't
216 return?, How do I do fancy stuff with the keyboard/screen/mouse?, How do I
217 print something out in color?, How do I read just one key without waiting
218 for a return key?, How do I check whether input is ready on the keyboard?,
219 How do I clear the screen?, How do I get the screen size?, How do I ask the
220 user for a password?, How do I read and write the serial port?, How do I
221 decode encrypted password files?, How do I start a process in the
222 background?, How do I trap control characters/signals?, How do I modify the
223 shadow password file on a Unix system?, How do I set the time and date?,
224 How can I sleep() or alarm() for under a second?, How can I measure time
225 under a second?, How can I do an atexit() or setjmp()/longjmp()? (Exception
226 handling), Why doesn't my sockets program work under System V (Solaris)?
227 What does the error message "Protocol not supported" mean?, How can I call
228 my system's unique C functions from Perl?, Where do I get the include files
229 to do ioctl() or syscall()?, Why do setuid perl scripts complain about
230 kernel problems?, How can I open a pipe both to and from a command?, Why
231 can't I get the output of a command with system()?, How can I capture
232 STDERR from an external command?, Why doesn't open() return an error when a
233 pipe open fails?, What's wrong with using backticks in a void context?, How
234 can I call backticks without shell processing?, Why can't my script read
235 from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?, How can I
236 convert my shell script to perl?, Can I use perl to run a telnet or ftp
237 session?, How can I write expect in Perl?, Is there a way to hide perl's
238 command line from programs such as "ps"?, I {changed directory, modified my
239 environment} in a perl script. How come the change disappeared when I
240 exited the script? How do I get my changes to be visible?, How do I close
241 a process's filehandle without waiting for it to complete?, How do I fork a
242 daemon process?, How do I make my program run with sh and csh?, How do I
243 find out if I'm running interactively or not?, How do I timeout a slow
244 event?, How do I set CPU limits?, How do I avoid zombies on a Unix system?,
245 How do I use an SQL database?, How do I make a system() exit on control-C?,
246 How do I open a file without blocking?, How do I install a module from
247 CPAN?, What's the difference between require and use?, How do I keep my own
248 module/library directory?, How do I add the directory my program lives in
249 to the module/library search path?, How do I add a directory to my include
250 path at runtime?, What is socket.ph and where do I get it?, L<perlfaq9>:
251 Networking, My CGI script runs from the command line but not the browser.
252 (500 Server Error), How can I get better error messages from a CGI
253 program?, How do I remove HTML from a string?, How do I extract URLs?, How
254 do I download a file from the user's machine? How do I open a file on
255 another machine?, How do I make a pop-up menu in HTML?, How do I fetch an
256 HTML file?, How do I automate an HTML form submission?, How do I decode or
257 create those %-encodings on the web?, How do I redirect to another page?,
258 How do I put a password on my web pages?, How do I edit my .htpasswd and
259 .htgroup files with Perl?, How do I make sure users can't enter values into
260 a form that cause my CGI script to do bad things?, How do I parse a mail
261 header?, How do I decode a CGI form?, How do I check a valid mail address?,
262 How do I decode a MIME/BASE64 string?, How do I return the user's mail
263 address?, How do I send mail?, How do I read mail?, How do I find out my
264 hostname/domainname/IP address?, How do I fetch a news article or the
265 active newsgroups?, How do I fetch/put an FTP file?, How can I do RPC in
270 =item Where to get this document
272 =item How to contribute to this document
274 =item What will happen if you mail your Perl programming problems to the
281 =item Author and Copyright Information
285 =item Bundled Distributions
293 23/May/99, 13/April/99, 7/January/99, 22/June/98, 24/April/97, 23/April/97,
294 25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97
296 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date:
297 1999/05/23 16:08:30 $)
305 =item Who supports Perl? Who develops it? Why is it free?
307 =item Which version of Perl should I use?
309 =item What are perl4 and perl5?
313 =item How stable is Perl?
315 =item Is Perl difficult to learn?
317 =item How does Perl compare with other languages like Java, Python, REXX,
320 =item Can I do [task] in Perl?
322 =item When shouldn't I program in Perl?
324 =item What's the difference between "perl" and "Perl"?
326 =item Is it a Perl program or a Perl script?
328 =item What is a JAPH?
330 =item Where can I get a list of Larry Wall witticisms?
332 =item How can I convince my sysadmin/supervisor/employees to use version
333 (5/5.005/Perl instead of some other language)?
337 =item AUTHOR AND COPYRIGHT
339 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.31 $,
340 $Date: 1999/04/14 03:46:19 $)
346 =item What machines support Perl? Where do I get it?
348 =item How can I get a binary version of Perl?
350 =item I don't have a C compiler on my system. How can I compile perl?
352 =item I copied the Perl binary from one machine to another, but scripts
355 =item I grabbed the sources and tried to compile but gdbm/dynamic
356 loading/malloc/linking/... failed. How do I make it work?
358 =item What modules and extensions are available for Perl? What is CPAN?
359 What does CPAN/src/... mean?
361 =item Is there an ISO or ANSI certified version of Perl?
363 =item Where can I get information on Perl?
365 =item What are the Perl newsgroups on USENET? Where do I post questions?
367 =item Where should I post source code?
371 References, Tutorials
372 *Learning Perl [2nd edition]
373 by Randal L. Schwartz and Tom Christiansen
374 with foreword by Larry Wall, Task-Oriented, Special Topics
376 =item Perl in Magazines
378 =item Perl on the Net: FTP and WWW Access
380 =item What mailing lists are there for perl?
382 =item Archives of comp.lang.perl.misc
384 =item Where can I buy a commercial version of Perl?
386 =item Where do I send bug reports?
388 =item What is perl.com?
392 =item AUTHOR AND COPYRIGHT
394 =head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23
401 =item How do I do (anything)?
403 =item How can I use Perl interactively?
405 =item Is there a Perl shell?
407 =item How do I debug my Perl programs?
409 =item How do I profile my Perl programs?
411 =item How do I cross-reference my Perl programs?
413 =item Is there a pretty-printer (formatter) for Perl?
415 =item Is there a ctags for Perl?
417 =item Is there an IDE or Windows Perl Editor?
419 =item Where can I get Perl macros for vi?
421 =item Where can I get perl-mode for emacs?
423 =item How can I use curses with Perl?
425 =item How can I use X or Tk with Perl?
427 =item How can I generate simple menus without using CGI or Tk?
429 =item What is undump?
431 =item How can I make my Perl program run faster?
433 =item How can I make my Perl program take less memory?
435 =item Is it unsafe to return a pointer to local data?
437 =item How can I free an array or hash so my program shrinks?
439 =item How can I make my CGI script more efficient?
441 =item How can I hide the source for my Perl program?
443 =item How can I compile my Perl program into byte code or C?
445 =item How can I compile Perl into Java?
447 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
449 =item Can I write useful perl programs on the command line?
451 =item Why don't perl one-liners work on my DOS/Mac/VMS system?
453 =item Where can I learn about CGI or Web programming in Perl?
455 =item Where can I learn about object-oriented Perl programming?
457 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
459 =item I've read perlembed, perlguts, etc., but I can't embed perl in
460 my C program, what am I doing wrong?
462 =item When I tried to run my script, I got this message. What does it
465 =item What's MakeMaker?
469 =item AUTHOR AND COPYRIGHT
471 =head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23
480 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
481 numbers I should be getting (eg, 19.95)?
483 =item Why isn't my octal data interpreted correctly?
485 =item Does Perl have a round() function? What about ceil() and floor()?
488 =item How do I convert bits into ints?
490 =item Why doesn't & work the way I want it to?
492 =item How do I multiply matrices?
494 =item How do I perform an operation on a series of integers?
496 =item How can I output Roman numerals?
498 =item Why aren't my random numbers random?
506 =item How do I find the week-of-the-year/day-of-the-year?
508 =item How do I find the current century or millennium?
510 =item How can I compare two dates and find the difference?
512 =item How can I take a string and turn it into epoch seconds?
514 =item How can I find the Julian Day?
516 =item How do I find yesterday's date?
518 =item Does Perl have a year 2000 problem? Is Perl Y2K compliant?
526 =item How do I validate input?
528 =item How do I unescape a string?
530 =item How do I remove consecutive pairs of characters?
532 =item How do I expand function calls in a string?
534 =item How do I find matching/nesting anything?
536 =item How do I reverse a string?
538 =item How do I expand tabs in a string?
540 =item How do I reformat a paragraph?
542 =item How can I access/change the first N letters of a string?
544 =item How do I change the Nth occurrence of something?
546 =item How can I count the number of occurrences of a substring within a
549 =item How do I capitalize all the words on one line?
551 =item How can I split a [character] delimited string except when inside
552 [character]? (Comma-separated files)
554 =item How do I strip blank space from the beginning/end of a string?
556 =item How do I pad a string with blanks or pad a number with zeroes?
558 =item How do I extract selected columns from a string?
560 =item How do I find the soundex value of a string?
562 =item How can I expand variables in text strings?
564 =item What's wrong with always quoting "$vars"?
566 =item Why don't my E<lt>E<lt>HERE documents work?
568 1. There must be no space after the << part, 2. There (probably) should be
569 a semicolon at the end, 3. You can't (easily) have any space in front of
578 =item What is the difference between a list and an array?
580 =item What is the difference between $array[1] and @array[1]?
582 =item How can I remove duplicate elements from a list or array?
584 a) If @in is sorted, and you want @out to be sorted:(this assumes all true
585 values in the array), b) If you don't know whether @in is sorted:, c) Like
586 (b), but @in contains only small integers:, d) A way to do (b) without any
587 loops or greps:, e) Like (d), but @in contains only small positive
590 =item How can I tell whether a list or array contains a certain element?
592 =item How do I compute the difference of two arrays? How do I compute the
593 intersection of two arrays?
595 =item How do I test whether two arrays or hashes are equal?
597 =item How do I find the first array element for which a condition is true?
599 =item How do I handle linked lists?
601 =item How do I handle circular lists?
603 =item How do I shuffle an array randomly?
605 =item How do I process/modify each element of an array?
607 =item How do I select a random element from an array?
609 =item How do I permute N elements of a list?
611 =item How do I sort an array by (anything)?
613 =item How do I manipulate arrays of bits?
615 =item Why does defined() return true on empty arrays and hashes?
619 =item Data: Hashes (Associative Arrays)
623 =item How do I process an entire hash?
625 =item What happens if I add or remove keys from a hash while iterating over
628 =item How do I look up a hash element by value?
630 =item How can I know how many entries are in a hash?
632 =item How do I sort a hash (optionally by value instead of key)?
634 =item How can I always keep my hash sorted?
636 =item What's the difference between "delete" and "undef" with hashes?
638 =item Why don't my tied hashes make the defined/exists distinction?
640 =item How do I reset an each() operation part-way through?
642 =item How can I get the unique keys from two hashes?
644 =item How can I store a multidimensional array in a DBM file?
646 =item How can I make my hash remember the order I put elements into it?
648 =item Why does passing a subroutine an undefined element in a hash create
651 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
652 array of hashes or arrays?
654 =item How can I use a reference as a hash key?
662 =item How do I handle binary data correctly?
664 =item How do I determine whether a scalar is a number/whole/integer/float?
666 =item How do I keep persistent data across program calls?
668 =item How do I print out or copy a recursive data structure?
670 =item How do I define methods for every class/object?
672 =item How do I verify a credit card checksum?
674 =item How do I pack arrays of doubles or floats for XS code?
678 =item AUTHOR AND COPYRIGHT
680 =head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23
687 =item How do I flush/unbuffer an output filehandle? Why must I do this?
689 =item How do I change one line in a file/delete a line in a file/insert a
690 line in the middle of a file/append to the beginning of a file?
692 =item How do I count the number of lines in a file?
694 =item How do I make a temporary file name?
696 =item How can I manipulate fixed-record-length files?
698 =item How can I make a filehandle local to a subroutine? How do I pass
699 filehandles between subroutines? How do I make an array of filehandles?
701 =item How can I use a filehandle indirectly?
703 =item How can I set up a footer format to be used with write()?
705 =item How can I write() into a string?
707 =item How can I output my numbers with commas added?
709 =item How can I translate tildes (~) in a filename?
711 =item How come when I open a file read-write it wipes it out?
713 =item Why do I sometimes get an "Argument list too long" when I use
716 =item Is there a leak/bug in glob()?
718 =item How can I open a file with a leading "E<gt>" or trailing blanks?
720 =item How can I reliably rename a file?
722 =item How can I lock a file?
724 =item Why can't I just open(FH, ">file.lock")?
726 =item I still don't get locking. I just want to increment the number in
727 the file. How can I do this?
729 =item How do I randomly update a binary file?
731 =item How do I get a file's timestamp in perl?
733 =item How do I set a file's timestamp in perl?
735 =item How do I print to more than one file at once?
737 =item How can I read in an entire file all at once?
739 =item How can I read in a file by paragraphs?
741 =item How can I read a single character from a file? From the keyboard?
743 =item How can I tell whether there's a character waiting on a filehandle?
745 =item How do I do a C<tail -f> in perl?
747 =item How do I dup() a filehandle in Perl?
749 =item How do I close a file descriptor by number?
751 =item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
752 `C:\temp\foo.exe` work?
754 =item Why doesn't glob("*.*") get all the files?
756 =item Why does Perl let me delete read-only files? Why does C<-i> clobber
757 protected files? Isn't this a bug in Perl?
759 =item How do I select a random line from a file?
761 =item Why do I get weird spaces when I print an array of lines?
765 =item AUTHOR AND COPYRIGHT
767 =head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $)
773 =item How can I hope to use regular expressions without creating illegible
774 and unmaintainable code?
776 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
778 =item I'm having trouble matching over more than one line. What's wrong?
780 =item How can I pull out lines between two patterns that are themselves on
783 =item I put a regular expression into $/ but it didn't work. What's wrong?
785 =item How do I substitute case insensitively on the LHS, but preserving
788 =item How can I make C<\w> match national character sets?
790 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
792 =item How can I quote a variable to use in a regex?
794 =item What is C</o> really for?
796 =item How do I use a regular expression to strip C style comments from a
799 =item Can I use Perl regular expressions to match balanced text?
801 =item What does it mean that regexes are greedy? How can I get around it?
803 =item How do I process each word on each line?
805 =item How can I print out a word-frequency or line-frequency summary?
807 =item How can I do approximate matching?
809 =item How do I efficiently match many regular expressions at once?
811 =item Why don't word-boundary searches with C<\b> work for me?
813 =item Why does using $&, $`, or $' slow my program down?
815 =item What good is C<\G> in a regular expression?
817 =item Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
819 =item What's wrong with using grep or map in a void context?
821 =item How can I match strings with multibyte characters?
823 =item How do I match a pattern that is supplied by the user?
827 =item AUTHOR AND COPYRIGHT
829 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date:
830 1999/05/23 20:36:18 $)
836 =item Can I get a BNF/yacc/RE for the Perl language?
838 =item What are all these $@%&* punctuation signs, and how do I know when to
841 =item Do I always/never have to quote my strings or use semicolons and
844 =item How do I skip some return values?
846 =item How do I temporarily block warnings?
848 =item What's an extension?
850 =item Why do Perl operators have different precedence than C operators?
852 =item How do I declare/create a structure?
854 =item How do I create a module?
856 =item How do I create a class?
858 =item How can I tell if a variable is tainted?
860 =item What's a closure?
862 =item What is variable suicide and how can I prevent it?
864 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
867 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
870 =item How do I create a static variable?
872 =item What's the difference between dynamic and lexical (static) scoping?
873 Between local() and my()?
875 =item How can I access a dynamic variable while a similarly named lexical
878 =item What's the difference between deep and shallow binding?
880 =item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?
882 =item How do I redefine a builtin function, operator, or method?
884 =item What's the difference between calling a function as &foo and foo()?
886 =item How do I create a switch or case statement?
888 =item How can I catch accesses to undefined variables/functions/methods?
890 =item Why can't a method included in this same file be found?
892 =item How can I find out my current package?
894 =item How can I comment out a large block of perl code?
896 =item How do I clear a package?
898 =item How can I use a variable as a variable name?
902 =item AUTHOR AND COPYRIGHT
904 =head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23
911 =item How do I find out which operating system I'm running under?
913 =item How come exec() doesn't return?
915 =item How do I do fancy stuff with the keyboard/screen/mouse?
917 Keyboard, Screen, Mouse
919 =item How do I print something out in color?
921 =item How do I read just one key without waiting for a return key?
923 =item How do I check whether input is ready on the keyboard?
925 =item How do I clear the screen?
927 =item How do I get the screen size?
929 =item How do I ask the user for a password?
931 =item How do I read and write the serial port?
933 lockfiles, open mode, end of line, flushing output, non-blocking input
935 =item How do I decode encrypted password files?
937 =item How do I start a process in the background?
939 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
941 =item How do I trap control characters/signals?
943 =item How do I modify the shadow password file on a Unix system?
945 =item How do I set the time and date?
947 =item How can I sleep() or alarm() for under a second?
949 =item How can I measure time under a second?
951 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
953 =item Why doesn't my sockets program work under System V (Solaris)? What
954 does the error message "Protocol not supported" mean?
956 =item How can I call my system's unique C functions from Perl?
958 =item Where do I get the include files to do ioctl() or syscall()?
960 =item Why do setuid perl scripts complain about kernel problems?
962 =item How can I open a pipe both to and from a command?
964 =item Why can't I get the output of a command with system()?
966 =item How can I capture STDERR from an external command?
968 =item Why doesn't open() return an error when a pipe open fails?
970 =item What's wrong with using backticks in a void context?
972 =item How can I call backticks without shell processing?
974 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
977 =item How can I convert my shell script to perl?
979 =item Can I use perl to run a telnet or ftp session?
981 =item How can I write expect in Perl?
983 =item Is there a way to hide perl's command line from programs such as
986 =item I {changed directory, modified my environment} in a perl script. How
987 come the change disappeared when I exited the script? How do I get my
988 changes to be visible?
992 =item How do I close a process's filehandle without waiting for it to
995 =item How do I fork a daemon process?
997 =item How do I make my program run with sh and csh?
999 =item How do I find out if I'm running interactively or not?
1001 =item How do I timeout a slow event?
1003 =item How do I set CPU limits?
1005 =item How do I avoid zombies on a Unix system?
1007 =item How do I use an SQL database?
1009 =item How do I make a system() exit on control-C?
1011 =item How do I open a file without blocking?
1013 =item How do I install a module from CPAN?
1015 =item What's the difference between require and use?
1017 =item How do I keep my own module/library directory?
1019 =item How do I add the directory my program lives in to the module/library
1022 =item How do I add a directory to my include path at runtime?
1024 =item What is socket.ph and where do I get it?
1028 =item AUTHOR AND COPYRIGHT
1030 =head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30
1037 =item My CGI script runs from the command line but not the browser. (500
1040 =item How can I get better error messages from a CGI program?
1042 =item How do I remove HTML from a string?
1044 =item How do I extract URLs?
1046 =item How do I download a file from the user's machine? How do I open a
1047 file on another machine?
1049 =item How do I make a pop-up menu in HTML?
1051 =item How do I fetch an HTML file?
1053 =item How do I automate an HTML form submission?
1055 =item How do I decode or create those %-encodings on the web?
1057 =item How do I redirect to another page?
1059 =item How do I put a password on my web pages?
1061 =item How do I edit my .htpasswd and .htgroup files with Perl?
1063 =item How do I make sure users can't enter values into a form that cause my
1064 CGI script to do bad things?
1066 =item How do I parse a mail header?
1068 =item How do I decode a CGI form?
1070 =item How do I check a valid mail address?
1072 =item How do I decode a MIME/BASE64 string?
1074 =item How do I return the user's mail address?
1076 =item How do I send mail?
1078 =item How do I read mail?
1080 =item How do I find out my hostname/domainname/IP address?
1082 =item How do I fetch a news article or the active newsgroups?
1084 =item How do I fetch/put an FTP file?
1086 =item How can I do RPC in Perl?
1090 =item AUTHOR AND COPYRIGHT
1092 =head2 perldelta - what's new for perl5.006 (as of 5.005_56)
1096 =item Incompatible Changes
1100 =item Perl Source Incompatibilities
1102 =item C Source Incompatibilities
1104 C<PERL_POLLUTE>, C<PERL_POLLUTE_MALLOC>, C<PL_na> and C<dTHR> Issues
1106 =item Compatible C Source API Changes
1108 C<PATCHLEVEL> is now C<PERL_VERSION>
1110 =item Binary Incompatibilities
1118 =item Unicode and UTF-8 support
1120 =item Lexically scoped warning categories
1122 =item Binary numbers supported
1124 =item syswrite() ease-of-use
1126 =item 64-bit support
1128 =item Better syntax checks on parenthesized unary operators
1130 =item Improved C<qw//> operator
1132 =item pack() format 'Z' supported
1134 =item pack() format modifier '!' supported
1136 =item $^X variables may now have names longer than one character
1140 =item Significant bug fixes
1144 =item E<lt>HANDLEE<gt> on empty files
1146 =item C<eval '...'> improvements
1148 =item Automatic flushing of output buffers
1152 =item Supported Platforms
1156 =item Modules and Pragmata
1162 Dumpvalue, Benchmark, Devel::Peek, Fcntl, File::Spec,
1163 File::Spec::Functions, Math::BigInt, Math::Complex, Math::Trig, SDBM_File,
1164 Time::Local, Win32, DBM Filters
1170 =item Utility Changes
1172 =item Documentation Changes
1174 perlopentut.pod, perlreftut.pod, perltootc.pod
1176 =item New Diagnostics
1178 /%s/: Unrecognized escape \\%c passed through, Unrecognized escape \\%c
1179 passed through, Missing command in piped open, defined(@array) is
1180 deprecated (and not really meaningful), defined(%hash) is deprecated (and
1181 not really meaningful)
1183 =item Obsolete Diagnostics
1185 =item Configuration Changes
1193 =head2 perldata - Perl data types
1199 =item Variable names
1205 =item Scalar value constructors
1207 =item List value constructors
1211 =item Typeglobs and Filehandles
1217 =head2 perlsyn - Perl syntax
1225 =item Simple statements
1227 =item Compound statements
1235 =item Basic BLOCKs and Switch Statements
1239 =item PODs: Embedded Documentation
1241 =item Plain Old Comments (Not!)
1245 =head2 perlop - Perl operators and precedence
1253 =item Terms and List Operators (Leftward)
1255 =item The Arrow Operator
1257 =item Auto-increment and Auto-decrement
1259 =item Exponentiation
1261 =item Symbolic Unary Operators
1263 =item Binding Operators
1265 =item Multiplicative Operators
1267 =item Additive Operators
1269 =item Shift Operators
1271 =item Named Unary Operators
1273 =item Relational Operators
1275 =item Equality Operators
1279 =item Bitwise Or and Exclusive Or
1281 =item C-style Logical And
1283 =item C-style Logical Or
1285 =item Range Operators
1287 =item Conditional Operator
1289 =item Assignment Operators
1291 =item Comma Operator
1293 =item List Operators (Rightward)
1299 =item Logical or and Exclusive Or
1301 =item C Operators Missing From Perl
1303 unary &, unary *, (TYPE)
1305 =item Quote and Quote-like Operators
1307 =item Regexp Quote-Like Operators
1309 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
1310 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
1311 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cdsUC,
1312 y/SEARCHLIST/REPLACEMENTLIST/cdsUC
1314 =item Gory details of parsing quoted constructs
1316 Finding the end, Removal of backslashes before delimiters, Interpolation,
1317 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1318 C<``>, C<qq//>, C<qx//>, C<<file*globE<gt>>, C<?RE?>, C</RE/>, C<m/RE/>,
1319 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1324 =item Constant Folding
1326 =item Bitwise String Operators
1328 =item Integer Arithmetic
1330 =item Floating-point Arithmetic
1332 =item Bigger Numbers
1336 =head2 perlre - Perl regular expressions
1344 =item Regular Expressions
1346 =item Extended Patterns
1348 C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1349 C<(?=pattern)>, C<(?!pattern)>, C<(?E<lt>=pattern)>, C<(?<!pattern)>, C<(?{
1350 code })>, C<(?p{ code })>, C<(?E<gt>pattern)>,
1351 C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
1355 =item Version 8 Regular Expressions
1357 =item Warning on \1 vs $1
1359 =item Repeated patterns matching zero-length substring
1361 =item Creating custom RE engines
1369 =head2 perlrun - how to execute the Perl interpreter
1377 =item #! and quoting on non-Unix systems
1379 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
1381 =item Location of Perl
1383 =item Command Switches
1385 B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<letters>,
1386 B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
1387 B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
1388 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
1389 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
1390 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
1396 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1397 (specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL
1399 =head2 perlfunc - Perl builtin functions
1405 =item Perl Functions by Category
1407 Functions for SCALARs or strings, Regular expressions and pattern matching,
1408 Numeric functions, Functions for real @ARRAYs, Functions for list data,
1409 Functions for real %HASHes, Input and output functions, Functions for fixed
1410 length data or records, Functions for filehandles, files, or directories,
1411 Keywords related to the control flow of your perl program, Keywords related
1412 to scoping, Miscellaneous functions, Functions for processes and process
1413 groups, Keywords related to perl modules, Keywords related to classes and
1414 object-orientedness, Low-level socket functions, System V interprocess
1415 communication functions, Fetching user and group info, Fetching network
1416 info, Time-related functions, Functions new in perl5, Functions obsoleted
1421 =item Alphabetical Listing of Perl Functions
1423 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
1424 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1425 binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
1426 chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
1427 chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
1428 close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue
1429 BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
1430 HASH,DBNAME,MASK, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
1431 do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, each HASH, eof FILEHANDLE,
1432 eof (), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists
1433 EXPR, exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno
1434 FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline
1435 PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp
1436 PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME,
1437 gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID,
1438 getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE,
1439 getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport
1440 PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent,
1441 getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
1442 setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent,
1443 endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt
1444 SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR,
1445 goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
1446 STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1447 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last
1448 LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link
1449 OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock,
1450 log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST,
1451 map EXPR,LIST, mkdir FILENAME,MASK, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
1452 msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL,
1453 next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,
1454 opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package
1455 NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
1456 print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
1457 printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
1458 qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
1459 rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
1460 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
1461 readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
1462 ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR,
1463 reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1464 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1465 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1466 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1467 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
1468 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1469 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1470 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1471 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1472 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
1473 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1474 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1475 splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
1476 split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
1477 srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK,
1478 sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr
1479 EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST,
1480 sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS,
1481 sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH,
1482 sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST,
1483 syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite
1484 FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell FILEHANDLE,
1485 tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied VARIABLE, time,
1486 times, tr///, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR,
1487 uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef EXPR, undef, unlink
1488 LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use
1489 Module LIST, use Module, use Module VERSION LIST, use VERSION, utime LIST,
1490 values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
1491 LIST, write FILEHANDLE, write EXPR, write, y///
1495 =head2 perlvar - Perl predefined variables
1501 =item Predefined Names
1503 $ARG, $_, $E<lt>I<digits>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1504 $LAST_PAREN_MATCH, $+, @+, $MULTILINE_MATCHING, $*, input_line_number
1505 HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE
1506 EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR,
1507 $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR,
1508 $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR,
1509 $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $",
1510 $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE
1511 EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR,
1512 $FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR,
1513 $FORMAT_LINES_LEFT, $-, @-, format_name HANDLE EXPR, $FORMAT_NAME, $~,
1514 format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1515 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1516 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
1517 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1518 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1519 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1520 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
1521 $COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT,
1522 $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20,
1523 $^R, $^S, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV,
1524 @ARGV, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr}
1526 =item Error Indicators
1528 =item Technical Note on the Syntax of Variable Names
1534 =head2 perlsub - Perl subroutines
1542 =item Private Variables via my()
1544 =item Persistent Private Variables
1546 =item Temporary Values via local()
1548 =item Passing Symbol Table Entries (typeglobs)
1550 =item When to Still Use local()
1552 1. You need to give a global variable a temporary value, especially $_, 2.
1553 You need to create a local file or directory handle or a local function, 3.
1554 You want to temporarily change just one element of an array or hash
1556 =item Pass by Reference
1560 =item Constant Functions
1562 =item Overriding Built-in Functions
1570 =head2 perlmod - Perl modules (packages and symbol tables)
1580 =item Package Constructors and Destructors
1590 =head2 perlmodlib - constructing new Perl modules and finding existing ones
1594 =item THE PERL MODULE LIBRARY
1598 =item Pragmatic Modules
1600 attrs, autouse, base, blib, constant, diagnostics, fields, filetest,
1601 integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, utf8,
1602 vars, vmsish, warning
1604 =item Standard Modules
1606 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
1607 B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
1608 B::Showlex, B::Stackobj, B::Terse, B::Xref, Benchmark, CGI, CGI::Apache,
1609 CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Push, CGI::Switch, CPAN,
1610 CPAN::FirstTime, CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB, DB_File,
1611 Data::Dumper, Devel::Peek, Devel::SelfStubber, DirHandle, Dumpvalue,
1612 DynaLoader, English, Env, Errno, Exporter, ExtUtils::Command,
1613 ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
1614 ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
1615 ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Miniperl,
1616 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
1617 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::Compare, File::Copy,
1618 File::DosGlob, File::Find, File::Path, File::Spec, File::Spec::Functions,
1619 File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS,
1620 File::Spec::Win32, File::stat, FileCache, FileHandle, FindBin, GDBM_File,
1621 Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::Dir, IO::File,
1622 IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket,
1623 IO::Socket::INET, IO::Socket::UNIX, IPC::Msg, IPC::Open2, IPC::Open3,
1624 IPC::Semaphore, IPC::SysV, Math::BigFloat, Math::BigInt, Math::Complex,
1625 Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent,
1626 Net::servent, O, Opcode, POSIX, Pod::Html, Pod::Text, SDBM_File, Safe,
1627 Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol,
1628 Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, Term::ReadLine,
1629 Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex,
1630 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
1631 unexpand(1), Text::Wrap, Thread, Thread::Queue, Thread::Semaphore,
1632 Thread::Signal, Thread::Specific, Tie::Array, Tie::Handle, Tie::Hash,
1633 Tie::StdHash, Tie::RefHash, Tie::Scalar, Tie::StdScalar, Tie::SubstrHash,
1634 Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL,
1635 User::grent, User::pwent
1637 =item Extension Modules
1643 Language Extensions and Documentation Tools, Development Support, Operating
1644 System Interfaces, Networking, Device Control (modems) and InterProcess
1645 Communication, Data Types and Data Type Utilities, Database Interfaces,
1646 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1647 File Names, File Systems and File Locking (see also File Handles), String
1648 Processing, Language Text Processing, Parsing, and Searching, Option,
1649 Argument, Parameter, and Configuration File Processing,
1650 Internationalization and Locale, Authentication, Security, and Encryption,
1651 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1652 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1653 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1654 exceptions etc), File Handle and Input/Output Stream Utilities,
1655 Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America,
1658 =item Modules: Creation, Use, and Abuse
1662 =item Guidelines for Module Creation
1664 Do similar modules already exist in some form?, Try to design the new
1665 module to be easy to extend and reuse, Some simple style guidelines, Select
1666 what to export, Select a name for the module, Have you got it right?,
1667 README and other Additional Files, A description of the
1668 module/package/extension etc, A copyright notice - see below, Prerequisites
1669 - what else you may need to have, How to build it - possible changes to
1670 Makefile.PL etc, How to install it, Recent changes in this release,
1671 especially incompatibilities, Changes / enhancements you plan to make in
1672 the future, Adding a Copyright Notice, Give the module a
1673 version/issue/release number, How to release and distribute a module, Take
1674 care when changing a released module
1676 =item Guidelines for Converting Perl 4 Library Scripts into Modules
1678 There is no requirement to convert anything, Consider the implications,
1679 Make the most of the opportunity, The pl2pm utility will get you started,
1680 Adds the standard Module prologue lines, Converts package specifiers from '
1681 to ::, Converts die(...) to croak(...), Several other minor changes
1683 =item Guidelines for Reusing Application Code
1685 Complete applications rarely belong in the Perl Module Library, Many
1686 applications contain some Perl code that could be reused, Break-out the
1687 reusable code into one or more separate module files, Take the opportunity
1688 to reconsider and redesign the interfaces, In some cases the 'application'
1689 can then be reduced to a small
1695 =head2 perlmodinstall - Installing CPAN Modules
1703 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1704 module (sometimes unnecessary), B<INSTALL> the module
1714 =head2 perlform - Perl formats
1720 =item Format Variables
1730 =item Accessing Formatting Internals
1736 =head2 perllocale - Perl locale handling (internationalization and
1741 =item PREPARING TO USE LOCALES
1747 =item The use locale pragma
1749 =item The setlocale function
1751 =item Finding locales
1753 =item LOCALE PROBLEMS
1755 =item Temporarily fixing locale problems
1757 =item Permanently fixing locale problems
1759 =item Permanently fixing your locale configuration
1761 =item Fixing system locale configuration
1763 =item The localeconv function
1767 =item LOCALE CATEGORIES
1771 =item Category LC_COLLATE: Collation
1773 =item Category LC_CTYPE: Character Types
1775 =item Category LC_NUMERIC: Numeric Formatting
1777 =item Category LC_MONETARY: Formatting of monetary amounts
1781 =item Other categories
1787 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
1788 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
1789 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1790 B<In-memory formatting function> (sprintf()):, B<Output formatting
1791 functions> (printf() and write()):, B<Case-mapping functions> (lc(),
1792 lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
1793 (localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
1794 tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
1795 ispunct(), isspace(), isupper(),
1800 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
1801 LC_NUMERIC, LC_TIME, LANG
1807 =item Backward compatibility
1809 =item I18N:Collate obsolete
1811 =item Sort speed and memory use impacts
1813 =item write() and LC_NUMERIC
1815 =item Freely available locale definitions
1819 =item An imperfect standard
1827 =item Broken systems
1835 =head2 perlref - Perl references and nested data structures
1843 =item Making References
1845 =item Using References
1847 =item Symbolic references
1849 =item Not-so-symbolic references
1851 =item Pseudo-hashes: Using an array as a hash
1853 =item Function Templates
1861 =head2 perlreftut - Mark's very short tutorial about references
1865 =item Who Needs Complicated Data Structures?
1873 =item Making References
1875 =item Using References
1893 =item Distribution Conditions
1897 =head2 perldsc - Perl Data Structures Cookbook
1901 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
1902 more elaborate constructs
1906 =item COMMON MISTAKES
1908 =item CAVEAT ON PRECEDENCE
1910 =item WHY YOU SHOULD ALWAYS C<use strict>
1916 =item ARRAYS OF ARRAYS
1920 =item Declaration of a ARRAY OF ARRAYS
1922 =item Generation of a ARRAY OF ARRAYS
1924 =item Access and Printing of a ARRAY OF ARRAYS
1928 =item HASHES OF ARRAYS
1932 =item Declaration of a HASH OF ARRAYS
1934 =item Generation of a HASH OF ARRAYS
1936 =item Access and Printing of a HASH OF ARRAYS
1940 =item ARRAYS OF HASHES
1944 =item Declaration of a ARRAY OF HASHES
1946 =item Generation of a ARRAY OF HASHES
1948 =item Access and Printing of a ARRAY OF HASHES
1952 =item HASHES OF HASHES
1956 =item Declaration of a HASH OF HASHES
1958 =item Generation of a HASH OF HASHES
1960 =item Access and Printing of a HASH OF HASHES
1964 =item MORE ELABORATE RECORDS
1968 =item Declaration of MORE ELABORATE RECORDS
1970 =item Declaration of a HASH OF COMPLEX RECORDS
1972 =item Generation of a HASH OF COMPLEX RECORDS
1982 =head2 perllol - Manipulating Arrays of Arrays in Perl
1986 =item Declaration and Access of Arrays of Arrays
1988 =item Growing Your Own
1990 =item Access and Printing
1998 =head2 perltoot - Tom's object-oriented tutorial for perl
2002 =item Creating a Class
2006 =item Object Representation
2008 =item Class Interface
2010 =item Constructors and Instance Methods
2012 =item Planning for the Future: Better Constructors
2016 =item Other Object Methods
2024 =item Accessing Class Data
2026 =item Debugging Methods
2028 =item Class Destructors
2030 =item Documenting the Interface
2040 =item Overridden Methods
2042 =item Multiple Inheritance
2044 =item UNIVERSAL: The Root of All Objects
2048 =item Alternate Object Representations
2052 =item Arrays as Objects
2054 =item Closures as Objects
2058 =item AUTOLOAD: Proxy Methods
2062 =item Autoloaded Data Methods
2064 =item Inherited Autoloaded Data Methods
2068 =item Metaclassical Tools
2074 =item Data Members as Variables
2078 =item Object Terminology
2084 =item AUTHOR AND COPYRIGHT
2090 =item Acknowledgments
2094 =head2 perltootc - Tom's OO Tutorial for Class Data in Perl
2098 =item Class Data as Package Variables
2102 =item Putting All Your Eggs in One Basket
2104 =item Inheritance Concerns
2106 =item The Eponymous Meta-Object
2108 =item Indirect References to Class Data
2110 =item Monadic Classes
2112 =item Translucent Attributes
2116 =item Class Data as Lexical Variables
2120 =item Privacy and Responsibility
2122 =item File-Scoped Lexicals
2124 =item More Inheritance Concerns
2126 =item Locking the Door and Throwing Away the Key
2128 =item Translucency Revisited
2136 =item AUTHOR AND COPYRIGHT
2138 =item ACKNOWLEDGEMENTS
2142 =head2 perlobj - Perl objects
2148 =item An Object is Simply a Reference
2150 =item A Class is Simply a Package
2152 =item A Method is Simply a Subroutine
2154 =item Method Invocation
2158 =item Default UNIVERSAL methods
2160 isa(CLASS), can(METHOD), VERSION( [NEED] )
2166 =item Two-Phased Garbage Collection
2172 =head2 perltie - how to hide an object class in a simple variable
2182 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
2186 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
2191 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
2192 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
2193 this, NEXTKEY this, lastkey, DESTROY this
2195 =item Tying FileHandles
2197 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
2198 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
2200 =item The C<untie> Gotcha
2210 =head2 perlbot - Bag'o Object Tricks (the BOT)
2214 =item OO SCALING TIPS
2216 =item INSTANCE VARIABLES
2218 =item SCALAR INSTANCE VARIABLES
2220 =item INSTANCE VARIABLE INHERITANCE
2222 =item OBJECT RELATIONSHIPS
2224 =item OVERRIDING SUPERCLASS METHODS
2226 =item USING RELATIONSHIP WITH SDBM
2228 =item THINKING OF CODE REUSE
2230 =item CLASS CONTEXT AND THE OBJECT
2232 =item INHERITING A CONSTRUCTOR
2236 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
2237 safe subprocesses, sockets, and semaphores)
2251 =item Using open() for IPC
2257 =item Background Processes
2259 =item Complete Dissociation of Child from Parent
2261 =item Safe Pipe Opens
2263 =item Bidirectional Communication with Another Process
2265 =item Bidirectional Communication with Yourself
2269 =item Sockets: Client/Server Communication
2273 =item Internet Line Terminators
2275 =item Internet TCP Clients and Servers
2277 =item Unix-Domain TCP Clients and Servers
2281 =item TCP Clients with IO::Socket
2285 =item A Simple Client
2287 C<Proto>, C<PeerAddr>, C<PeerPort>
2289 =item A Webget Client
2291 =item Interactive Client with IO::Socket
2295 =item TCP Servers with IO::Socket
2297 Proto, LocalPort, Listen, Reuse
2299 =item UDP: Message Passing
2311 =head2 perldbmfilter - Perl DBM Filters
2317 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
2318 B<filter_fetch_value>
2324 =item An Example -- the NULL termination problem.
2326 =item Another Example -- Key is a C int.
2334 =head2 perldebug - Perl debugging
2338 =item The Perl Debugger
2342 =item Debugger Commands
2344 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
2345 [expr], E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l
2346 subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern],
2347 t, t expr, b [line] [condition], b subname [condition], b postpone subname
2348 [condition], b load filename, b compile subname, d [line], D, a [line]
2349 command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?]..,
2350 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2351 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2352 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
2353 C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
2354 C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
2355 C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ],
2356 E<lt>E<lt> command, E<gt> command, E<gt>E<gt> command, { [ command ], {{
2357 command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R,
2358 |dbcmd, ||dbcmd, command, m expr, m package
2360 =item Debugger input/output
2362 Prompt, Multiline commands, Stack backtrace, Listing, Frame listing
2364 =item Debugging compile-time statements
2366 =item Debugger Customization
2368 =item Readline Support
2370 =item Editor Support for Debugging
2372 =item The Perl Profiler
2374 =item Debugger support in perl
2376 =item Debugger Internals
2378 =item Other resources
2384 =item Debugging Perl memory usage
2388 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
2390 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
2391 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
2394 =item Example of using B<-DL> switch
2396 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
2398 =item B<-DL> details
2402 =item Limitations of B<-DL> statistic
2406 =item Debugging regular expressions
2410 =item Compile-time output
2412 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
2413 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
2414 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
2417 =item Types of nodes
2419 =item Run-time output
2423 =head2 perldiag - various Perl diagnostics
2427 =head2 perlsec - Perl security
2433 =item Laundering and Detecting Tainted Data
2435 =item Switches On the "#!" Line
2437 =item Cleaning Up Your Path
2441 =item Protecting Your Programs
2447 =head2 perltrap - Perl traps for the unwary
2463 =item Perl4 to Perl5 Traps
2465 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
2466 Traps, General data type traps, Context Traps - scalar, list contexts,
2467 Precedence Traps, General Regular Expression Traps using s///, etc,
2468 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
2470 =item Discontinuance, Deprecation, and BugFix traps
2472 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
2473 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
2474 Discontinuance, Discontinuance, Deprecation, Discontinuance
2478 Parsing, Parsing, Parsing, Parsing
2480 =item Numerical Traps
2482 Numerical, Numerical, Numerical
2484 =item General data type traps
2486 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
2487 (Constants), (Scalars), (Variable Suicide)
2489 =item Context Traps - scalar, list contexts
2491 (list context), (scalar context), (scalar context), (list, builtin)
2493 =item Precedence Traps
2495 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
2498 =item General Regular Expression Traps using s///, etc.
2500 Regular Expression, Regular Expression, Regular Expression, Regular
2501 Expression, Regular Expression, Regular Expression, Regular Expression,
2504 =item Subroutine, Signal, Sorting Traps
2506 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
2512 =item Interpolation Traps
2514 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
2515 Interpolation, Interpolation, Interpolation, Interpolation
2521 =item Unclassified Traps
2523 C<require>/C<do> trap using returned value, C<split> on empty string with
2528 =head2 perlport - Writing portable Perl
2532 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
2541 =item Numbers endianness and Width
2543 =item Files and Filesystems
2545 =item System Interaction
2547 =item Interprocess Communication (IPC)
2549 =item External Subroutines (XS)
2551 =item Standard Modules
2555 =item Character sets and character encoding
2557 =item Internationalisation
2559 =item System Resources
2569 Mailing list: cpan-testers@perl.org, Testing results:
2570 C<http://www.perl.org/cpan-testers/>
2578 =item DOS and Derivatives
2580 The djgpp environment for DOS, C<http://www.delorie.com/djgpp/>, The EMX
2581 environment for DOS, OS/2, etc.
2582 C<emx@iaehv.nl>,C<http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/index.
2584 C<ftp://hobbes.nmsu.edu/pub/os2/dev/emx>, Build instructions for Win32,
2585 L<perlwin32>, The ActiveState Pages, C<http://www.activestate.com/>
2589 The MacPerl Pages, C<http://www.macperl.com/>, The MacPerl mailing lists,
2590 C<http://www.macperl.org/>, MacPerl Module Porters,
2591 C<http://pudge.net/mmp/>
2595 L<perlvms.pod>, vmsperl list, C<majordomo@perl.org>, vmsperl on the web,
2596 C<http://www.sidhe.org/vmsperl/index.html>
2600 L<README.vos>, VOS mailing list, VOS Perl on the web at
2601 C<http://ftp.stratus.com/pub/vos/vos.html>
2603 =item EBCDIC Platforms
2605 perl-mvs list, AS/400 Perl information at
2606 C<http://as400.rochester.ibm.com/>
2612 Atari, Guido Flohr's page C<http://stud.uni-sb.de/~gufl0000/>, HP 300
2613 MPE/iX C<http://www.cccd.edu/~markb/perlix.html>, Novell Netware
2617 =item FUNCTION IMPLEMENTATIONS
2621 =item Alphabetical Listing of Perl Functions
2623 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, binmode FILEHANDLE, chmod LIST, chown
2624 LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
2625 HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR,
2626 flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid,
2627 getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME,
2628 getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber
2629 NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent,
2630 getnetent, getprotoent, getservent, setpwent, setgrent, sethostent
2631 STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN,
2632 endpwent, endgrent, endhostent, endnetent, endprotoent, endservent,
2633 getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl
2634 FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat
2635 FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
2636 ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open
2637 FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2638 RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2639 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority
2640 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl
2641 ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite
2642 ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat
2643 FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
2644 FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
2645 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
2646 wait, waitpid PID,FLAGS
2652 v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April
2653 1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December
2654 1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August
2655 1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998
2657 =item AUTHORS / CONTRIBUTORS
2661 =head2 perlstyle - Perl style guide
2665 =head2 perlpod - plain old documentation
2671 =item Verbatim Paragraph
2673 =item Command Paragraph
2675 =item Ordinary Block of Text
2679 =item Embedding Pods in Perl Modules
2681 =item Common Pod Pitfalls
2689 =head2 perlbook - Perl book information
2693 =head2 perlembed - how to embed perl in your C program
2701 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
2702 Perl?>, B<Use C from C?>, B<Use Perl from C?>
2706 =item Compiling your C program
2708 =item Adding a Perl interpreter to your C program
2710 =item Calling a Perl subroutine from your C program
2712 =item Evaluating a Perl statement from your C program
2714 =item Performing Perl pattern matches and substitutions from your C program
2716 =item Fiddling with the Perl stack from your C program
2718 =item Maintaining a persistent interpreter
2720 =item Maintaining multiple interpreter instances
2722 =item Using Perl modules, which themselves use C libraries, from your C
2727 =item Embedding Perl under Win32
2735 =head2 perlapio - perl's IO abstraction interface.
2741 B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
2742 B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
2743 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
2744 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
2745 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
2746 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
2747 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
2748 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
2749 B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
2750 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
2754 =item Co-existence with stdio
2756 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
2757 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
2758 B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
2759 B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
2760 B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
2761 B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
2765 =head2 perlxs - XS language reference manual
2775 =item The Anatomy of an XSUB
2777 =item The Argument Stack
2779 =item The RETVAL Variable
2781 =item The MODULE Keyword
2783 =item The PACKAGE Keyword
2785 =item The PREFIX Keyword
2787 =item The OUTPUT: Keyword
2789 =item The CODE: Keyword
2791 =item The INIT: Keyword
2793 =item The NO_INIT Keyword
2795 =item Initializing Function Parameters
2797 =item Default Parameter Values
2799 =item The PREINIT: Keyword
2801 =item The SCOPE: Keyword
2803 =item The INPUT: Keyword
2805 =item Variable-length Parameter Lists
2807 =item The C_ARGS: Keyword
2809 =item The PPCODE: Keyword
2811 =item Returning Undef And Empty Lists
2813 =item The REQUIRE: Keyword
2815 =item The CLEANUP: Keyword
2817 =item The BOOT: Keyword
2819 =item The VERSIONCHECK: Keyword
2821 =item The PROTOTYPES: Keyword
2823 =item The PROTOTYPE: Keyword
2825 =item The ALIAS: Keyword
2827 =item The INTERFACE: Keyword
2829 =item The INTERFACE_MACRO: Keyword
2831 =item The INCLUDE: Keyword
2833 =item The CASE: Keyword
2835 =item The & Unary Operator
2837 =item Inserting Comments and C Preprocessor Directives
2839 =item Using XS With C++
2841 =item Interface Strategy
2843 =item Perl Objects And C Structures
2855 =head2 perlxstut, perlXStut - Tutorial for XSUBs
2861 =item VERSION CAVEAT
2863 =item DYNAMIC VERSUS STATIC
2869 =item WHAT HAS GONE ON?
2871 =item WRITING GOOD TEST SCRIPTS
2875 =item WHAT'S NEW HERE?
2877 =item INPUT AND OUTPUT PARAMETERS
2879 =item THE XSUBPP COMPILER
2881 =item THE TYPEMAP FILE
2887 =item WHAT HAS HAPPENED HERE?
2889 =item SPECIFYING ARGUMENTS TO XSUBPP
2891 =item THE ARGUMENT STACK
2893 =item EXTENDING YOUR EXTENSION
2895 =item DOCUMENTING YOUR EXTENSION
2897 =item INSTALLING YOUR EXTENSION
2907 =head2 perlguts - Perl's Internal Functions
2917 =item What is an "IV"?
2919 =item Working with SVs
2921 =item What's Really Stored in an SV?
2923 =item Working with AVs
2925 =item Working with HVs
2927 =item Hash API Extensions
2931 =item Blessed References and Class Objects
2933 =item Creating New Variables
2935 =item Reference Counts and Mortality
2937 =item Stashes and Globs
2939 =item Double-Typed SVs
2941 =item Magic Variables
2943 =item Assigning Magic
2945 =item Magic Virtual Tables
2949 =item Understanding the Magic of Tied Hashes and Arrays
2951 =item Localizing changes
2953 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
2954 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEFREEOP(OP
2955 *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>, C<SAVEDELETE(HV *hv, char
2956 *key, I32 length)>, C<SAVEDESTRUCTOR(f,p)>, C<SAVESTACK_POS()>, C<SV*
2957 save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>,
2958 C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>,
2959 C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void
2960 save_hptr(HV **hptr)>
2968 =item XSUBs and the Argument Stack
2970 =item Calling Perl Routines from within C Programs
2972 =item Memory Allocation
2976 =item Putting a C value on Perl stack
2980 =item Scratchpads and recursion
2990 =item Examining the tree
2992 =item Compile pass 1: check routines
2994 =item Compile pass 1a: constant folding
2996 =item Compile pass 2: context propagation
2998 =item Compile pass 3: peephole optimization
3004 av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push,
3005 av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH,
3006 PL_DBsingle, PL_DBsub, PL_DBtrace, dMARK, dORIGMARK, PL_dowarn, dSP,
3007 dXSARGS, dXSI32, do_binmode, ENTER, EXTEND, fbm_compile, fbm_instr,
3008 FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, GIMME_V, G_NOARGS, G_SCALAR,
3009 gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, G_VOID, gv_stashpv,
3010 gv_stashsv, GvSV, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY,
3011 HeSVKEY_force, HeSVKEY_set, HeVAL, hv_clear, hv_delete, hv_delete_ent,
3012 hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey,
3013 hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, HvNAME,
3014 hv_store, hv_store_ent, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER,
3015 isSPACE, isUPPER, items, ix, LEAVE, looks_like_number, MARK, mg_clear,
3016 mg_copy, mg_find, mg_free, mg_get, mg_len, mg_magical, mg_set, modglobal,
3017 Move, PL_na, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc,
3018 NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv,
3019 newXS, newXSproto, Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK,
3020 perl_alloc, perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv,
3021 perl_construct, perl_destruct, perl_eval_sv, perl_eval_pv, perl_free,
3022 perl_get_av, perl_get_cv, perl_get_hv, perl_get_sv, perl_parse,
3023 perl_require_pv, perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi,
3024 PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, RETVAL, safefree,
3025 safemalloc, saferealloc, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ,
3026 strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless,
3027 sv_catpv, sv_catpv_mg, sv_catpvn, sv_catpvn_mg, sv_catpvf, sv_catpvf_mg,
3028 sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, SvCUR, SvCUR_set, sv_dec,
3029 sv_derived_from, SvEND, sv_eq, SvGETMAGIC, SvGROW, sv_grow, sv_inc,
3030 sv_insert, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only, SvIOKp, sv_isa,
3031 sv_isobject, SvIV, SvIVX, SvLEN, sv_len, sv_magic, sv_mortalcopy,
3032 sv_newmortal, SvNIOK, SvNIOK_off, SvNIOKp, PL_sv_no, SvNOK, SvNOK_off,
3033 SvNOK_on, SvNOK_only, SvNOKp, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOK_off,
3034 SvPOK_on, SvPOK_only, SvPOKp, SvPV, SvPV_force, SvPV_nolen, SvPVX,
3035 SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV,
3036 SvSETMAGIC, sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv,
3037 sv_setpv_mg, sv_setpviv, sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpvf,
3038 sv_setpvf_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn,
3039 SvSetSV, SvSetSV_nosteal, sv_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg,
3040 SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SVt_IV, SVt_PV,
3041 SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, SvTYPE, svtype,
3042 PL_sv_undef, sv_unref, SvUPGRADE, sv_upgrade, sv_usepvn, sv_usepvn_mg,
3043 sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale),
3044 sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), SvUV,
3045 SvUVX, PL_sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp,
3046 XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO,
3047 XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV,
3048 XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK,
3053 =head2 perlcall - Perl calling conventions from C
3057 An Error Handler, An Event Driven Program
3059 =item THE PERL_CALL FUNCTIONS
3061 perl_call_sv, perl_call_pv, perl_call_method, perl_call_argv
3081 =item Determining the Context
3085 =item KNOWN PROBLEMS
3091 =item No Parameters, Nothing returned
3093 =item Passing Parameters
3095 =item Returning a Scalar
3097 =item Returning a list of values
3099 =item Returning a list in a scalar context
3101 =item Returning Data from Perl via the parameter list
3105 =item Using G_KEEPERR
3107 =item Using perl_call_sv
3109 =item Using perl_call_argv
3111 =item Using perl_call_method
3115 =item Using Perl to dispose of temporaries
3117 =item Strategies for storing Callback Context Information
3119 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
3120 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
3123 =item Alternate Stack Manipulation
3125 =item Creating and calling an anonymous subroutine in C
3135 =head2 perlhist - the Perl history records
3141 =item THE KEEPERS OF THE PUMPKIN
3153 =item SELECTED RELEASE SIZES
3155 =item SELECTED PATCH SIZES
3159 =item THE KEEPERS OF THE RECORDS
3161 =head1 PRAGMA DOCUMENTATION
3163 =head2 attrs - set/get attributes of a subroutine
3171 =head2 re - Perl pragma to alter regular expression behaviour
3177 =head2 attrs - set/get attributes of a subroutine
3185 =head2 autouse - postpone load of modules until a function is used
3197 =head2 base - Establish IS-A relationship with base class at compile time
3207 =head2 blib - Use MakeMaker's uninstalled version of a package
3217 =head2 caller - inherit pragmatic attributes from the context of the caller
3225 =head2 constant - Perl pragma to declare constants
3233 =item TECHNICAL NOTE
3241 =head2 diagnostics - Perl compiler pragma to force verbose warning
3250 =item The C<diagnostics> Pragma
3252 =item The I<splain> Program
3264 =head2 fields - compile-time class fields
3272 =head2 filetest - Perl pragma to control the filetest permission operators
3276 $can_perhaps_read = -r "file"; # use the mode bits
3278 use filetest 'access'; # intuit harder
3279 $can_really_read = -r "file";
3281 $can_perhaps_read = -r "file"; # use the mode bits again
3287 =item subpragma access
3291 =head2 integer - Perl pragma to compute arithmetic in integer instead of
3298 =head2 less - perl pragma to request less of something from the compiler
3304 =head2 lib - manipulate @INC at compile time
3312 =item ADDING DIRECTORIES TO @INC
3314 =item DELETING DIRECTORIES FROM @INC
3316 =item RESTORING ORIGINAL @INC
3324 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
3331 =head2 ops - Perl pragma to restrict unsafe operations when compiling
3339 =head2 overload - Package for overloading perl operations
3347 =item Declaration of overloaded functions
3349 =item Calling Conventions for Binary Operations
3351 FALSE, TRUE, C<undef>
3353 =item Calling Conventions for Unary Operations
3355 =item Calling Conventions for Mutators
3357 C<++> and C<-->, C<x=> and other assignment versions
3359 =item Overloadable Operations
3361 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
3362 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
3363 and numeric conversion>, I<Iteration>, I<Dereferencing>, I<Special>
3365 =item Inheritance and overloading
3367 Strings as values of C<use overload> directive, Overloading of an operation
3368 is inherited by derived classes
3372 =item SPECIAL SYMBOLS FOR C<use overload>
3380 C<undef>, TRUE, defined, but FALSE
3382 =item Copy Constructor
3388 =item MAGIC AUTOGENERATION
3390 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
3391 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
3392 I<Concatenation>, I<Comparison operations>, I<Iterator>, I<Dereferencing>,
3395 =item Losing overloading
3397 =item Run-time Overloading
3399 =item Public functions
3401 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
3403 =item Overloading constants
3405 integer, float, binary, q, qr
3407 =item IMPLEMENTATION
3409 =item Metaphor clash
3415 =item Two-face scalars
3417 =item Two-face references
3419 =item Symbolic calculator
3421 =item I<Really> symbolic calculator
3431 =head2 re - Perl pragma to alter regular expression behaviour
3437 =head2 sigtrap - Perl pragma to enable simple signal handling
3447 =item SIGNAL HANDLERS
3449 B<stack-trace>, B<die>, B<handler> I<your-handler>
3453 B<normal-signals>, B<error-signals>, B<old-interface-signals>
3457 B<untrapped>, B<any>, I<signal>, I<number>
3463 =head2 strict - Perl pragma to restrict unsafe constructs
3469 C<strict refs>, C<strict vars>, C<strict subs>
3471 =head2 subs - Perl pragma to predeclare sub names
3477 =head2 utf8 - Perl pragma to turn on UTF-8 and Unicode support
3485 =head2 vars - Perl pragma to predeclare global variable names
3491 =head2 warning - Perl pragma to control optional warnings
3497 C<warning deprecated>
3499 =head1 MODULE DOCUMENTATION
3501 =head2 AnyDBM_File - provide framework for multiple DBMs
3509 =item DBM Comparisons
3517 =head2 AutoLoader - load subroutines only on demand
3525 =item Subroutine Stubs
3527 =item Using B<AutoLoader>'s AUTOLOAD Subroutine
3529 =item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
3531 =item Package Lexicals
3533 =item B<AutoLoader> vs. B<SelfLoader>
3541 =head2 AutoSplit - split a package for autoloading
3547 $keep, $check, $modtime
3551 =item Multiple packages
3557 =head2 B - The Perl Compiler
3563 =item OVERVIEW OF CLASSES
3567 =item SV-RELATED CLASSES
3575 IV, IVX, needs64bits, packiv
3589 =item B::PVMG METHODS
3593 =item B::MAGIC METHODS
3595 MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
3597 =item B::PVLV METHODS
3599 TARGOFF, TARGLEN, TYPE, TARG
3603 USEFUL, PREVIOUS, RARE, TABLE
3607 NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT,
3612 LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
3613 BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
3617 FILL, MAX, OFF, ARRAY, AvFLAGS
3621 STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY,
3626 FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
3628 =item OP-RELATED CLASSES
3632 next, sibling, ppaddr, desc, targ, type, seq, flags, private
3634 =item B::UNOP METHOD
3638 =item B::BINOP METHOD
3642 =item B::LOGOP METHOD
3646 =item B::CONDOP METHODS
3650 =item B::LISTOP METHOD
3654 =item B::PMOP METHODS
3656 pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
3658 =item B::SVOP METHOD
3662 =item B::GVOP METHOD
3666 =item B::PVOP METHOD
3670 =item B::LOOP METHODS
3672 redoop, nextop, lastop
3674 =item B::COP METHODS
3676 label, stash, filegv, cop_seq, arybase, line
3680 =item FUNCTIONS EXPORTED BY C<B>
3682 main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes,
3683 sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG),
3684 walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM),
3685 hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names
3689 =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
3698 =head2 B::Assembler - Assemble Perl bytecode
3706 =head2 B::Bblock - Walk basic blocks
3714 =head2 B::Bytecode - Perl compiler's bytecode backend
3722 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3723 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3724 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3732 =head2 B::C - Perl compiler's C backend
3740 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
3741 B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>
3749 =head2 B::CC - Perl compiler's optimized C translation backend
3757 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
3758 B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
3759 B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
3771 =item Context of ".."
3775 =item Deprecated features
3781 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
3789 =head2 B::Deparse - Perl compiler backend to produce perl code
3797 B<-l>, B<-p>, B<-q>, B<-u>I<PACKAGE>, B<-s>I<LETTERS>, B<C>
3803 =head2 B::Disassembler - Disassemble Perl bytecode
3811 =head2 B::Lint - Perl lint
3817 =item OPTIONS AND LINT CHECKS
3819 B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
3820 B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
3822 =item NON LINT-CHECK OPTIONS
3830 =head2 B::O, O - Generic interface to Perl Compiler backends
3838 =item IMPLEMENTATION
3842 =head2 B::Showlex - Show lexical variables used in functions or files
3850 =head2 B::Stackobj - Helper module for CC backend
3858 =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
3866 =head2 B::Xref - Generates cross reference reports for Perl programs
3874 C<-oFILENAME>, C<-r>, C<-D[tO]>
3880 =head2 Bblock, B::Bblock - Walk basic blocks
3888 =head2 Benchmark - benchmark running times of code
3900 =item Standard Exports
3902 timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
3903 timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timesum (
3904 T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] )
3906 =item Optional Exports
3908 clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( )
3920 =item MODIFICATION HISTORY
3922 =head2 ByteLoader - load byte compiled perl code
3932 =head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend
3940 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3941 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3942 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3950 =head2 CGI - Simple Common Gateway Interface Class
3960 =item PROGRAMMING STYLE
3962 =item CALLING CGI.PM ROUTINES
3964 1. Use another name for the argument, if one is available. Forexample,
3965 -value is an alias for -values, 2. Change the capitalization, e.g. -Values,
3966 3. Put quotes around the argument name, e.g. '-values'
3968 =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
3970 =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
3972 =item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
3974 =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
3976 =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
3978 =item SETTING THE VALUE(S) OF A NAMED PARAMETER:
3980 =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
3982 =item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
3984 =item DELETING A PARAMETER COMPLETELY:
3986 =item DELETING ALL PARAMETERS:
3988 =item DIRECT ACCESS TO THE PARAMETER LIST:
3990 =item FETCHING THE PARAMETER LIST AS A HASH:
3992 =item SAVING THE STATE OF THE SCRIPT TO A FILE:
3994 =item RETRIEVING CGI ERRORS
3996 =item USING THE FUNCTION-ORIENTED INTERFACE
3998 B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
3999 B<:standard>, B<:all>
4003 -any, -compile, -nph, -newstyle_urls, -autoload, -no_debug,
4006 =item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS
4008 1. start_table() (generates a <TABLE> tag), 2. end_table() (generates a
4009 </TABLE> tag), 3. start_ul() (generates a <UL> tag), 4. end_ul() (generates
4014 =item GENERATING DYNAMIC DOCUMENTS
4018 =item CREATING A STANDARD HTTP HEADER:
4020 =item GENERATING A REDIRECTION HEADER
4022 =item CREATING THE HTML DOCUMENT HEADER
4024 B<Parameters:>, 4, 5, 6..
4026 =item ENDING THE HTML DOCUMENT:
4028 =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
4030 =item OBTAINING THE SCRIPT'S URL
4032 B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
4035 =item MIXING POST AND URL PARAMETERS
4039 =item CREATING STANDARD HTML ELEMENTS:
4043 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS
4045 =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
4047 =item HTML SHORTCUTS AND LIST INTERPOLATION
4049 =item NON-STANDARD HTML SHORTCUTS
4051 =item PRETTY-PRINTING HTML
4055 =item CREATING FILL-OUT FORMS:
4059 =item CREATING AN ISINDEX TAG
4061 =item STARTING AND ENDING A FORM
4063 B<application/x-www-form-urlencoded>, B<multipart/form-data>
4065 =item CREATING A TEXT FIELD
4069 =item CREATING A BIG TEXT FIELD
4071 =item CREATING A PASSWORD FIELD
4073 =item CREATING A FILE UPLOAD FIELD
4077 =item CREATING A POPUP MENU
4079 =item CREATING A SCROLLING LIST
4083 =item CREATING A GROUP OF RELATED CHECKBOXES
4087 =item CREATING A STANDALONE CHECKBOX
4091 =item CREATING A RADIO BUTTON GROUP
4095 =item CREATING A SUBMIT BUTTON
4099 =item CREATING A RESET BUTTON
4101 =item CREATING A DEFAULT BUTTON
4103 =item CREATING A HIDDEN FIELD
4107 =item CREATING A CLICKABLE IMAGE BUTTON
4109 B<Parameters:>, 3.The third option (-align, optional) is an alignment type,
4111 TOP, BOTTOM or MIDDLE
4113 =item CREATING A JAVASCRIPT ACTION BUTTON
4119 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag,
4120 B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure>
4122 =item WORKING WITH FRAMES
4124 1. Create a <Frameset> document, 2. Specify the destination for the
4125 document in the HTTP header, 3. Specify the destination for the document in
4128 =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS
4134 =item DUMPING OUT ALL THE NAME/VALUE PAIRS
4138 =item FETCHING ENVIRONMENT VARIABLES
4140 B<Accept()>, B<raw_cookie()>, B<user_agent()>, B<path_info()>,
4141 B<path_translated()>, B<remote_host()>, B<script_name()>Return the script
4142 name as a partial URL, for self-refering
4143 scripts, B<referer()>, B<auth_type ()>, B<server_name ()>, B<virtual_host
4144 ()>, B<server_software ()>, B<remote_user ()>, B<user_name ()>,
4145 B<request_method()>, B<content_type()>, B<http()>, B<https()>
4147 =item USING NPH SCRIPTS
4149 In the B<use> statement, By calling the B<nph()> method:, By using B<-nph>
4150 parameters in the B<header()> and B<redirect()> statements:
4155 multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end()
4157 =item Avoiding Denial of Service Attacks
4159 B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script
4160 basis>, B<2. Globally for all scripts>
4162 =item COMPATIBILITY WITH CGI-LIB.PL
4164 =item AUTHOR INFORMATION
4168 Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor
4169 (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell
4170 (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg
4171 (jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick
4172 (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis
4173 (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen
4174 (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim
4175 MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks
4176 (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed
4177 Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug
4178 MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org),
4179 ...and many many more..
4181 =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
4187 =head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API
4201 =head2 CGI::Carp, B<CGI::Carp> - CGI routines for writing to the HTTPD (or
4208 =item REDIRECTING ERROR MESSAGES
4210 =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW
4214 =item Changing the default message
4224 =head2 CGI::Cookie - Interface to Netscape Cookies
4230 =item USING CGI::Cookie
4232 B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag>
4236 =item Creating New Cookies
4238 =item Sending the Cookie to the Browser
4240 =item Recovering Previous Cookies
4242 =item Manipulating Cookies
4244 B<name()>, B<value()>, B<domain()>, B<path()>, B<expires()>
4248 =item AUTHOR INFORMATION
4254 =head2 CGI::Fast - CGI Interface for Fast CGI
4260 =item OTHER PIECES OF THE PUZZLE
4262 =item WRITING FASTCGI PERL SCRIPTS
4264 =item INSTALLING FASTCGI SCRIPTS
4266 =item USING FASTCGI SCRIPTS AS CGI SCRIPTS
4270 =item AUTHOR INFORMATION
4276 =head2 CGI::Push - Simple Interface to Server Push
4282 =item USING CGI::Push
4284 -next_page, -last_page, -type, -delay, -cookie, -target, -expires
4288 =item Heterogeneous Pages
4290 =item Changing the Page Delay on the Fly
4294 =item INSTALLING CGI::Push SCRIPTS
4296 =item AUTHOR INFORMATION
4302 =head2 CGI::Switch - Try more than one constructors and return the first
4313 =head2 CPAN - query, download and build perl modules from CPAN sites
4321 =item Interactive Mode
4323 Searching for authors, bundles, distribution files and modules, make, test,
4324 install, clean modules or distributions, readme, look module or
4325 distribution, Signals
4333 =item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
4335 =item ProgrammerE<39>s interface
4337 expand($type,@things), Programming Examples
4339 =item Methods in the four Classes
4347 =item Finding packages and VERSION
4351 =item Floppy, Zip, Offline Mode
4357 o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
4358 E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
4359 [shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
4364 =item Note on urllist parameter's format
4366 =item urllist parameter has CD-ROM support
4374 =item POPULATE AN INSTALLATION WITH LOTS OF MODULES
4376 =item WORKING WITH CPAN.pm BEHIND FIREWALLS
4378 http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
4386 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
4392 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
4401 =head2 Carp, carp - warn of errors (from perspective of caller)
4409 =item Forcing a Stack Trace
4415 =head2 Class::Struct - declare struct-like datatypes as Perl classes
4423 =item The C<struct()> function
4425 =item Element Types and Accessor Methods
4427 Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or
4428 C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>)
4430 =item Initializing with C<new>
4436 Example 1, Example 2, Example 3
4438 =item Author and Modification History
4440 =head2 Config - access Perl configuration information
4446 myconfig(), config_sh(), config_vars(@names)
4458 C<_a>, C<_exe>, C<_o>
4462 C<afs>, C<alignbytes>, C<ansi2knr>, C<aphostname>, C<apiversion>, C<ar>,
4463 C<archlib>, C<archlibexp>, C<archname64>, C<archname>, C<archobjs>, C<awk>
4467 C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>, C<byacc>, C<byteorder>
4471 C<c>, C<castflags>, C<cat>, C<cc>, C<cccdlflags>, C<ccdlflags>, C<ccflags>,
4472 C<ccsymbols>, C<cf_by>, C<cf_email>, C<cf_time>, C<chgrp>, C<chmod>,
4473 C<chown>, C<clocktype>, C<comm>, C<compress>, C<contains>, C<cp>, C<cpio>,
4474 C<cpp>, C<cpp_stuff>, C<cppccsymbols>, C<cppflags>, C<cpplast>,
4475 C<cppminus>, C<cpprun>, C<cppstdin>, C<cppsymbols>, C<crosscompile>,
4480 C<d_access>, C<d_accessx>, C<d_alarm>, C<d_archlib>, C<d_attribut>,
4481 C<d_bcmp>, C<d_bcopy>, C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>,
4482 C<d_bzero>, C<d_casti32>, C<d_castneg>, C<d_charvspr>, C<d_chown>,
4483 C<d_chroot>, C<d_chsize>, C<d_closedir>, C<d_cmsghdr_s>, C<d_const>,
4484 C<d_crypt>, C<d_csh>, C<d_cuserid>, C<d_dbl_dig>, C<d_dbmclose64>,
4485 C<d_dbminit64>, C<d_delete64>, C<d_difftime>, C<d_dirent64_s>,
4486 C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>, C<d_dlsymun>, C<d_dosuid>,
4487 C<d_drand48proto>, C<d_dup2>, C<d_eaccess>, C<d_endgrent>, C<d_endhent>,
4488 C<d_endnent>, C<d_endpent>, C<d_endpwent>, C<d_endsent>, C<d_eofnblk>,
4489 C<d_eunice>, C<d_fchmod>, C<d_fchown>, C<d_fcntl>, C<d_fd_macros>,
4490 C<d_fd_set>, C<d_fds_bits>, C<d_fetch64>, C<d_fgetpos64>, C<d_fgetpos>,
4491 C<d_firstkey64>, C<d_flexfnam>, C<d_flock64_s>, C<d_flock>, C<d_fopen64>,
4492 C<d_fork>, C<d_fpathconf>, C<d_freopen64>, C<d_fseek64>, C<d_fseeko64>,
4493 C<d_fseeko>, C<d_fsetpos64>, C<d_fsetpos>, C<d_fstat64>, C<d_fstatfs>,
4494 C<d_fstatvfs>, C<d_ftell64>, C<d_ftello64>, C<d_ftello>, C<d_ftime>,
4495 C<d_ftruncate64>, C<d_Gconvert>, C<d_getgrent>, C<d_getgrps>,
4496 C<d_gethbyaddr>, C<d_gethbyname>, C<d_gethent>, C<d_gethname>,
4497 C<d_gethostprotos>, C<d_getlogin>, C<d_getmntent>, C<d_getnbyaddr>,
4498 C<d_getnbyname>, C<d_getnent>, C<d_getnetprotos>, C<d_getpbyname>,
4499 C<d_getpbynumber>, C<d_getpent>, C<d_getpgid>, C<d_getpgrp2>, C<d_getpgrp>,
4500 C<d_getppid>, C<d_getprior>, C<d_getprotoprotos>, C<d_getpwent>,
4501 C<d_getsbyname>, C<d_getsbyport>, C<d_getsent>, C<d_getservprotos>,
4502 C<d_gettimeod>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>, C<d_htonl>,
4503 C<d_index>, C<d_inetaton>, C<d_ino64_t>, C<d_int64t>, C<d_iovec_s>,
4504 C<d_isascii>, C<d_killpg>, C<d_lchown>, C<d_link>, C<d_llseek>,
4505 C<d_locconv>, C<d_lockf64>, C<d_lockf>, C<d_longdbl>, C<d_longlong>,
4506 C<d_lseek64>, C<d_lstat64>, C<d_lstat>, C<d_madvise>, C<d_mblen>,
4507 C<d_mbstowcs>, C<d_mbtowc>, C<d_memchr>, C<d_memcmp>, C<d_memcpy>,
4508 C<d_memmove>, C<d_memset>, C<d_mkdir>, C<d_mkfifo>, C<d_mktime>, C<d_mmap>,
4509 C<d_mprotect>, C<d_msg>, C<d_msg_ctrunc>, C<d_msg_dontroute>, C<d_msg_oob>,
4510 C<d_msg_peek>, C<d_msg_proxy>, C<d_msgctl>, C<d_msgget>, C<d_msghdr_s>,
4511 C<d_msgrcv>, C<d_msgsnd>, C<d_msync>, C<d_munmap>, C<d_mymalloc>,
4512 C<d_nextkey64>, C<d_nice>, C<d_off64_t>, C<d_offset_t>,
4513 C<d_old_pthread_create_joinable>, C<d_oldpthreads>, C<d_oldsock>,
4514 C<d_open3>, C<d_open64>, C<d_opendir64>, C<d_pathconf>, C<d_pause>,
4515 C<d_phostname>, C<d_pipe>, C<d_poll>, C<d_portable>, C<d_pthread_yield>,
4516 C<d_pwage>, C<d_pwchange>, C<d_pwclass>, C<d_pwcomment>, C<d_pwexpire>,
4517 C<d_pwgecos>, C<d_pwpasswd>, C<d_pwquota>, C<d_readdir64>, C<d_readdir>,
4518 C<d_readlink>, C<d_readv>, C<d_recvmsg>, C<d_rename>, C<d_rewinddir>,
4519 C<d_rmdir>, C<d_safebcpy>, C<d_safemcpy>, C<d_sanemcmp>, C<d_sched_yield>,
4520 C<d_scm_rights>, C<d_seekdir64>, C<d_seekdir>, C<d_select>, C<d_sem>,
4521 C<d_semctl>, C<d_semctl_semid_ds>, C<d_semctl_semun>, C<d_semget>,
4522 C<d_semop>, C<d_sendmsg>, C<d_setegid>, C<d_seteuid>, C<d_setgrent>,
4523 C<d_setgrps>, C<d_sethent>, C<d_setlinebuf>, C<d_setlocale>, C<d_setnent>,
4524 C<d_setpent>, C<d_setpgid>, C<d_setpgrp2>, C<d_setpgrp>, C<d_setprior>,
4525 C<d_setpwent>, C<d_setregid>, C<d_setresgid>, C<d_setresuid>,
4526 C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>, C<d_setsid>,
4527 C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>, C<d_shmatprototype>,
4528 C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>, C<d_sigsetjmp>,
4529 C<d_socket>, C<d_sockpair>, C<d_stat64>, C<d_statblks>, C<d_statfs>,
4530 C<d_statfsflags>, C<d_statvfs>, C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>,
4531 C<d_stdio_stream_array>, C<d_stdiobase>, C<d_stdstdio>, C<d_store64>,
4532 C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>, C<d_strerror>,
4533 C<d_strtod>, C<d_strtol>, C<d_strtoul>, C<d_strxfrm>, C<d_suidsafe>,
4534 C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>,
4535 C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir64>, C<d_telldir>,
4536 C<d_telldirproto>, C<d_time>, C<d_times>, C<d_tmpfile64>, C<d_truncate64>,
4537 C<d_truncate>, C<d_tzname>, C<d_umask>, C<d_uname>, C<d_union_semun>,
4538 C<d_vfork>, C<d_void_closedir>, C<d_voidsig>, C<d_voidtty>, C<d_volatile>,
4539 C<d_vprintf>, C<d_wait4>, C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>,
4540 C<d_writev>, C<d_xenix>, C<date>, C<db_hashtype>, C<db_prefixtype>,
4541 C<defvoidused>, C<direntrytype>, C<dlext>, C<dlsrc>, C<doublesize>,
4542 C<drand01>, C<dynamic_ext>
4546 C<eagain>, C<ebcdic>, C<echo>, C<egrep>, C<emacs>, C<eunicefix>,
4547 C<exe_ext>, C<expr>, C<extensions>
4551 C<fflushall>, C<fflushNULL>, C<find>, C<firstmakefile>, C<flex>,
4552 C<fpostype>, C<freetype>, C<full_ar>, C<full_csh>, C<full_sed>
4556 C<gccversion>, C<gidtype>, C<glibpth>, C<grep>, C<groupcat>, C<groupstype>,
4561 C<h_fcntl>, C<h_sysfile>, C<hint>, C<hostcat>, C<huge>
4565 C<i_arpainet>, C<i_bsdioctl>, C<i_db>, C<i_dbm>, C<i_dirent>, C<i_dld>,
4566 C<i_dlfcn>, C<i_fcntl>, C<i_float>, C<i_gdbm>, C<i_grp>, C<i_inttypes>,
4567 C<i_limits>, C<i_locale>, C<i_machcthr>, C<i_malloc>, C<i_math>,
4568 C<i_memory>, C<i_mntent>, C<i_ndbm>, C<i_netdb>, C<i_neterrno>,
4569 C<i_netinettcp>, C<i_niin>, C<i_poll>, C<i_pthread>, C<i_pwd>,
4570 C<i_rpcsvcdbm>, C<i_sfio>, C<i_sgtty>, C<i_stdarg>, C<i_stddef>,
4571 C<i_stdlib>, C<i_string>, C<i_sysaccess>, C<i_sysdir>, C<i_sysfile>,
4572 C<i_sysfilio>, C<i_sysin>, C<i_sysioctl>, C<i_sysmman>, C<i_sysmount>,
4573 C<i_sysndir>, C<i_sysparam>, C<i_sysresrc>, C<i_syssecrt>, C<i_sysselct>,
4574 C<i_syssockio>, C<i_sysstat>, C<i_sysstatvfs>, C<i_systime>, C<i_systimek>,
4575 C<i_systimes>, C<i_systypes>, C<i_sysuio>, C<i_sysun>, C<i_syswait>,
4576 C<i_termio>, C<i_termios>, C<i_time>, C<i_unistd>, C<i_utime>, C<i_values>,
4577 C<i_varargs>, C<i_varhdr>, C<i_vfork>, C<ignore_versioned_solibs>,
4578 C<incpath>, C<inews>, C<installarchlib>, C<installbin>, C<installman1dir>,
4579 C<installman3dir>, C<installprivlib>, C<installscript>, C<installsitearch>,
4580 C<installsitelib>, C<installusrbinperl>, C<intsize>
4584 C<known_extensions>, C<ksh>
4588 C<large>, C<ld>, C<lddlflags>, C<ldflags>, C<less>, C<lib_ext>, C<libc>,
4589 C<libperl>, C<libpth>, C<libs>, C<libswanted>, C<line>, C<lint>,
4590 C<lkflags>, C<ln>, C<lns>, C<locincpth>, C<loclibpth>, C<longdblsize>,
4591 C<longlongsize>, C<longsize>, C<lp>, C<lpr>, C<ls>, C<lseeksize>,
4596 C<mail>, C<mailx>, C<make>, C<make_set_make>, C<mallocobj>, C<mallocsrc>,
4597 C<malloctype>, C<man1dir>, C<man1direxp>, C<man1ext>, C<man3dir>,
4598 C<man3direxp>, C<man3ext>
4602 C<Mcc>, C<medium>, C<mips_type>, C<mkdir>, C<mmaptype>, C<models>,
4603 C<modetype>, C<more>, C<multiarch>, C<mv>, C<myarchname>, C<mydomain>,
4604 C<myhostname>, C<myuname>
4608 C<n>, C<netdb_hlen_type>, C<netdb_host_type>, C<netdb_name_type>,
4609 C<netdb_net_type>, C<nm>, C<nm_opt>, C<nm_so_opt>, C<nonxs_ext>, C<nroff>
4613 C<o_nonblock>, C<obj_ext>, C<old_pthread_create_joinable>, C<optimize>,
4614 C<orderlib>, C<osname>, C<osvers>
4618 C<package>, C<pager>, C<passcat>, C<patchlevel>, C<path_sep>, C<perl>,
4619 C<perladmin>, C<perlpath>, C<pg>, C<phostname>, C<pidtype>, C<plibpth>,
4620 C<pmake>, C<pr>, C<prefix>, C<prefixexp>, C<privlib>, C<privlibexp>,
4621 C<prototype>, C<ptrsize>
4625 C<randbits>, C<randfunc>, C<randseedtype>, C<ranlib>, C<rd_nodata>, C<rm>,
4630 C<sched_yield>, C<scriptdir>, C<scriptdirexp>, C<sed>, C<seedfunc>,
4631 C<selectminbits>, C<selecttype>, C<sendmail>, C<sh>, C<shar>, C<sharpbang>,
4632 C<shmattype>, C<shortsize>, C<shrpenv>, C<shsharp>, C<sig_count>,
4633 C<sig_name>, C<sig_name_init>, C<sig_num>, C<sig_num_init>, C<signal_t>,
4634 C<sitearch>, C<sitearchexp>, C<sitelib>, C<sitelibexp>, C<sizetype>,
4635 C<sleep>, C<smail>, C<small>, C<so>, C<sockethdr>, C<socketlib>, C<sort>,
4636 C<spackage>, C<spitshell>, C<split>, C<src>, C<ssizetype>, C<startperl>,
4637 C<startsh>, C<static_ext>, C<stdchar>, C<stdio_base>, C<stdio_bufsiz>,
4638 C<stdio_cnt>, C<stdio_filbuf>, C<stdio_ptr>, C<stdio_stream_array>,
4639 C<strings>, C<submit>, C<subversion>, C<sysman>
4643 C<tail>, C<tar>, C<tbl>, C<tee>, C<test>, C<timeincl>, C<timetype>,
4644 C<touch>, C<tr>, C<trnl>, C<troff>
4648 C<uidtype>, C<uname>, C<uniq>, C<use64bits>, C<usedl>, C<usemultiplicity>,
4649 C<usemymalloc>, C<usenm>, C<useopcode>, C<useperlio>, C<useposix>,
4650 C<usesfio>, C<useshrplib>, C<usethreads>, C<usevfork>, C<usrinc>, C<uuname>
4654 C<version>, C<vi>, C<voidflags>
4668 =head2 Cwd, getcwd - get pathname of current working directory
4674 =head2 DB - programmatic interface to the Perl debugging API (draft,
4684 =item Global Variables
4686 $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args,
4687 @DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname,
4692 CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'),
4693 CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done()
4695 =item Client Callback Methods
4697 CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(),
4698 CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(),
4699 CLIENT->output(LIST)
4707 =head2 DB_File - Perl5 access to Berkeley DB version 1.x
4713 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
4717 =item Using DB_File with Berkeley DB version 2
4719 =item Interface to Berkeley DB
4721 =item Opening a Berkeley DB Database File
4723 =item Default Parameters
4725 =item In Memory Databases
4733 =item A Simple Example
4741 =item Changing the BTREE sort order
4743 =item Handling Duplicate Keys
4745 =item The get_dup() Method
4747 =item The find_dup() Method
4749 =item The del_dup() Method
4751 =item Matching Partial Keys
4759 =item The 'bval' Option
4761 =item A Simple Example
4763 =item Extra RECNO Methods
4765 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
4766 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
4768 =item Another Example
4772 =item THE API INTERFACE
4774 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
4775 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
4776 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
4777 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
4779 =item HINTS AND TIPS
4783 =item Locking Databases
4785 =item Sharing Databases With C Applications
4787 =item The untie() Gotcha
4791 =item COMMON QUESTIONS
4795 =item Why is there Perl source in my database?
4797 =item How do I store complex data structures with DB_File?
4799 =item What does "Invalid Argument" mean?
4801 =item What does "Bareword 'DB_File' not allowed" mean?
4817 =head2 Data::Dumper - stringified perl data structures, suitable for both
4818 printing and C<eval>
4828 I<PACKAGE>->new(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dump I<or>
4829 I<PACKAGE>->Dump(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dumpxs I<or>
4830 I<PACKAGE>->Dumpxs(I<ARRAYREF [>, I<ARRAYREF]>),
4831 I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>),
4832 I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset
4836 Dumper(I<LIST>), DumperX(I<LIST>)
4838 =item Configuration Variables or Methods
4840 $Data::Dumper::Indent I<or> I<$OBJ>->Indent(I<[NEWVAL]>),
4841 $Data::Dumper::Purity I<or> I<$OBJ>->Purity(I<[NEWVAL]>),
4842 $Data::Dumper::Pad I<or> I<$OBJ>->Pad(I<[NEWVAL]>),
4843 $Data::Dumper::Varname I<or> I<$OBJ>->Varname(I<[NEWVAL]>),
4844 $Data::Dumper::Useqq I<or> I<$OBJ>->Useqq(I<[NEWVAL]>),
4845 $Data::Dumper::Terse I<or> I<$OBJ>->Terse(I<[NEWVAL]>),
4846 $Data::Dumper::Freezer I<or> $I<OBJ>->Freezer(I<[NEWVAL]>),
4847 $Data::Dumper::Toaster I<or> $I<OBJ>->Toaster(I<[NEWVAL]>),
4848 $Data::Dumper::Deepcopy I<or> $I<OBJ>->Deepcopy(I<[NEWVAL]>),
4849 $Data::Dumper::Quotekeys I<or> $I<OBJ>->Quotekeys(I<[NEWVAL]>),
4850 $Data::Dumper::Bless I<or> $I<OBJ>->Bless(I<[NEWVAL]>)
4868 =head2 Devel::Peek - A data debugging tool for the XS programmer
4878 =item A simple scalar string
4880 =item A simple scalar number
4882 =item A simple scalar with an extra reference
4884 =item A reference to a simple scalar
4886 =item A reference to an array
4888 =item A reference to a hash
4890 =item Dumping a large array or hash
4892 =item A reference to an SV which holds a C pointer
4894 =item A reference to a subroutine
4906 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
4912 =head2 DirHandle - supply object methods for directory handles
4918 =head2 Dumpvalue - provides screen dump of Perl data.
4928 C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
4929 C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<tick>, C<HighBit>,
4930 C<printUndef>, C<UsageOnly>, unctrl, subdump, bareStringify, quoteHighBit,
4935 dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump,
4936 veryCompact, set, get
4940 =head2 DynaLoader - Dynamically load C libraries into Perl code
4946 @dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs,
4947 @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(),
4948 dl_load_file(), dl_loadflags(), dl_find_symbol(),
4949 dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(),
4954 =head2 English - use nice English (or awk) names for ugly punctuation
4961 =head2 Env - perl module that imports environment variables
4969 =head2 Errno - System errno constants
4979 =head2 Exporter - Implements default import method for modules
4987 =item Selecting What To Export
4989 =item Specialised Import Lists
4991 =item Exporting without using Export's import method
4993 =item Module Version Checking
4995 =item Managing Unknown Symbols
4997 =item Tag Handling Utility Functions
5001 =head2 ExtUtils::Command - utilities to replace common UNIX commands in
5008 cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv
5009 source... destination, cp source... destination, chmod mode files.., mkpath
5010 directory.., test_f file
5018 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
5028 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
5029 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
5037 =head2 ExtUtils::Install - install files from here to there
5043 =head2 ExtUtils::Installed - Inventory management of installed modules
5053 new(), modules(), files(), directories(), directory_tree(), validate(),
5054 packlist(), version()
5060 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
5066 For static extensions, For dynamic extensions, For dynamic extensions
5072 =item LDLOADLIBS and LD_RUN_PATH
5082 =item VMS implementation
5084 =item Win32 implementation
5090 =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in
5097 canonpath, cflags, manifypods, perl_archive
5099 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
5106 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
5116 =item Preloaded methods
5118 canonpath, catdir, catfile, curdir, rootdir, updir
5120 =item SelfLoaded methods
5122 c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
5123 const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
5124 dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
5125 dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
5126 extliblist, file_name_is_absolute, find_perl
5128 =item Methods to actually produce chunks of text for the Makefile
5130 fixin, force (o), guess_name, has_link_code, init_dirscan, init_main,
5131 init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir,
5132 macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command,
5133 maybe_command_in_dirs, needs_linking (o), nicetext, parse_version,
5134 parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd,
5135 perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize
5136 (o), postamble (o), prefixify, processPL (o), realclean (o),
5137 replace_manpage_separator, static (o), static_lib (o), staticmake (o),
5138 subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
5139 (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
5140 writedoc, xs_c (o), xs_cpp (o), xs_o (o), perl_archive, export_list
5146 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
5155 =item Methods always loaded
5157 eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
5158 rootdir (override), updir (override)
5160 =item SelfLoaded methods
5162 guess_name (override), find_perl (override), path (override), maybe_command
5163 (override), maybe_command_in_dirs (override), perl_script (override),
5164 file_name_is_absolute (override), replace_manpage_separator, init_others
5165 (override), constants (override), cflags (override), const_cccmd
5166 (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
5167 (override), xsubpp_version (override), tools_other (override), dist
5168 (override), c_o (override), xs_c (override), xs_o (override), top_targets
5169 (override), dlsyms (override), dynamic_lib (override), dynamic_bs
5170 (override), static_lib (override), manifypods (override), processPL
5171 (override), installbin (override), subdir_x (override), clean (override),
5172 realclean (override), dist_basics (override), dist_core (override),
5173 dist_dir (override), dist_test (override), install (override), perldepend
5174 (override), makefile (override), test (override), test_via_harness
5175 (override), test_via_script (override), makeaperl (override), nicetext
5180 =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in
5187 catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o),
5188 canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit
5189 (override), tools_other (o), xs_o (o), top_targets (o), manifypods (o),
5190 dist_ci (o), dist_core (o), pasthru (o)
5192 =head2 ExtUtils::MakeMaker - create an extension Makefile
5200 =item How To Write A Makefile.PL
5202 =item Default Makefile Behaviour
5210 =item PREFIX and LIB attribute
5214 =item Static Linking of a new Perl Binary
5216 =item Determination of Perl Library and Installation Locations
5218 =item Which architecture dependent directory?
5220 =item Using Attributes and Parameters
5222 AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG,
5223 CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT,
5224 EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, IMPORTS, INC,
5225 INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
5226 INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITEARCH,
5227 INSTALLSITELIB, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
5228 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE,
5229 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
5230 NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
5231 PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM,
5232 PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX,
5233 PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG,
5236 =item Additional lowercase attributes
5238 clean, depend, dist, dynamic_lib, linkext, macro, realclean, test,
5241 =item Overriding MakeMaker Methods
5243 =item Hintsfile support
5245 =item Distribution Support
5247 make distcheck, make skipcheck, make distclean, make manifest,
5248 make distdir, make tardist, make dist, make uutardist, make
5249 shdist, make zipdist, make ci
5251 =item Disabling an extension
5263 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
5273 =item GLOBAL VARIABLES
5277 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
5278 C<Added to MANIFEST:> I<file>
5284 =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
5292 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
5298 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
5305 DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME
5311 =head2 ExtUtils::Packlist - manage .packlist files
5321 new(), read(), write(), validate(), packlist_file()
5327 =head2 ExtUtils::testlib - add blib/* directories to @INC
5333 =head2 Fatal - replace functions with equivalents which succeed or die
5341 =head2 Fcntl - load the C Fcntl.h defines
5349 =item EXPORTED SYMBOLS
5351 =head2 File::Basename, fileparse - split a pathname into pieces
5357 fileparse_set_fstype, fileparse
5361 C<basename>, C<dirname>
5363 =head2 File::CheckTree, validate - run many filetest checks on a tree
5369 =head2 File::Compare - Compare files or filehandles
5379 =head2 File::Copy - Copy files or filehandles
5387 =item Special behaviour if C<syscopy> is defined (OS/2, VMS and Win32)
5389 rmscopy($from,$to[,$date_flag])
5397 =head2 File::DosGlob - DOS like globbing and then some
5403 =item EXPORTS (by request only)
5413 =head2 File::Find, find - traverse a file tree
5421 =head2 File::Path - create or remove a series of directories
5429 =head2 File::Spec - portably perform operations on file names
5439 =head2 File::Spec::Functions - portably perform operations on file names
5453 =head2 File::Spec::Mac - File::Spec for MacOS
5461 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5462 file_name_is_absolute, path
5466 =head2 File::Spec::OS2 - methods for OS/2 file specs
5472 =head2 File::Spec::Unix - methods used by File::Spec
5480 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5481 no_upwards, file_name_is_absolute, path, join, splitpath, splitdir,
5482 catpath, abs2rel, rel2abs
5486 =head2 File::Spec::VMS - methods for VMS file specs
5494 =item Methods always loaded
5496 catdir, catfile, curdir (override), devnull (override), rootdir (override),
5497 tmpdir (override), updir (override), path (override), file_name_is_absolute
5504 =head2 File::Spec::Win32 - methods for Win32 file specs
5510 devnull, tmpdir, catfile, canonpath, splitpath, splitdir, catpath, abs2rel,
5515 =head2 File::stat - by-name interface to Perl's built-in stat() functions
5525 =head2 FileCache - keep more files open than the system permits
5533 =head2 FileHandle - supply object methods for filehandles
5539 $fh->print, $fh->printf, $fh->getline, $fh->getlines
5543 =head2 FindBin - Locate directory of original perl script
5549 =item EXPORTABLE VARIABLES
5557 =head2 GDBM_File - Perl5 access to the gdbm library.
5569 =head2 Getopt::Long, GetOptions - extended processing of command line
5580 =item Linkage specification
5582 =item Aliases and abbreviations
5584 =item Non-option call-back routine
5586 =item Option starters
5588 =item Return values and Errors
5596 =item CONFIGURATION OPTIONS
5598 default, auto_abbrev, getopt_compat, require_order, permute, bundling
5599 (default: reset), bundling_override (default: reset), ignore_case
5600 (default: set), ignore_case_always (default: reset), pass_through (default:
5601 reset), prefix, prefix_pattern, debug (default: reset)
5603 =item OTHER USEFUL VARIABLES
5605 $Getopt::Long::VERSION, $Getopt::Long::error
5609 =item COPYRIGHT AND DISCLAIMER
5611 =head2 Getopt::Std, getopt - Process single-character switches with switch
5618 =head2 I18N::Collate - compare 8-bit scalar data according to the current
5625 =head2 IO - load various IO modules
5631 =head2 IO::Dir - supply object methods for directory handles
5637 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
5638 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
5646 =head2 IO::File - supply object methods for filehandles
5654 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
5658 open( FILENAME [,MODE [,PERMS]] )
5664 =head2 IO::Handle - supply object methods for I/O handles
5672 new (), new_from_fd ( FD, MODE )
5676 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
5677 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
5678 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
5679 $io->blocking ( [ BOOL ] ), $io->untaint
5689 =head2 IO::Pipe - supply object methods for pipes
5697 new ( [READER, WRITER] )
5701 reader ([ARGS]), writer ([ARGS]), handles ()
5709 =head2 IO::Poll - Object interface to system poll call
5717 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
5718 IO ), handles( [ EVENT_MASK ] )
5726 =head2 IO::Seekable - supply seek based methods for I/O objects
5736 =head2 IO::Select - OO interface to the select system call
5748 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
5749 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
5750 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
5758 =head2 IO::Socket - Object interface to socket communications
5770 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
5779 =head2 IO::Socket::INET - Object interface for AF_INET domain sockets
5793 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
5804 =head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets
5816 hostpath(), peerpath()
5824 =head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory
5831 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
5832 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
5840 =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
5848 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
5852 open( FILENAME [,MODE [,PERMS]] )
5858 =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
5867 new (), new_from_fd ( FD, MODE )
5871 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
5872 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
5873 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
5874 $io->blocking ( [ BOOL ] ), $io->untaint
5884 =head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes
5892 new ( [READER, WRITER] )
5896 reader ([ARGS]), writer ([ARGS]), handles ()
5904 =head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call
5912 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
5913 IO ), handles( [ EVENT_MASK ] )
5921 =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
5932 =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
5945 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
5946 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
5947 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
5955 =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
5968 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
5977 =head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for
5978 AF_INET domain sockets
5992 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
6003 =head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for
6004 AF_UNIX domain sockets
6016 hostpath(), peerpath()
6024 =head2 IPC::Msg - SysV Msg IPC object class
6032 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
6033 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
6042 =head2 IPC::Open2, open2 - open a process for both reading and writing
6052 =head2 IPC::Open3, open3 - open a process for reading, writing, and error
6061 =head2 IPC::Semaphore - SysV Semaphore IPC object class
6069 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
6070 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
6071 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
6080 =head2 IPC::SysV - SysV IPC constants
6094 =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class
6102 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
6103 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
6112 =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object
6121 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
6122 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
6123 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
6132 =head2 Math::BigFloat - Arbitrary length float math package
6138 number format, Error returns 'NaN', Division is computed to, Rounding is
6145 =head2 Math::BigInt - Arbitrary size integer math package
6151 Canonical notation, Input, Output
6155 =item Autocreating constants
6161 =head2 Math::Complex - complex numbers and associated mathematical
6172 =item STRINGIFICATION
6176 =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
6178 =item ERRORS DUE TO INDIGESTIBLE ARGUMENTS
6184 =head2 Math::Trig - trigonometric functions
6190 =item TRIGONOMETRIC FUNCTIONS
6196 =item ERRORS DUE TO DIVISION BY ZERO
6198 =item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS
6202 =item PLANE ANGLE CONVERSIONS
6204 =item RADIAL COORDINATE CONVERSIONS
6208 =item COORDINATE SYSTEMS
6210 =item 3-D ANGLE CONVERSIONS
6212 cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian,
6213 cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
6217 =item GREAT CIRCLE DISTANCES
6225 =head2 NDBM_File - Tied access to ndbm files
6231 =head2 Net::Ping - check a remote host for reachability
6241 Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
6242 $timeout]);, $p->close();, pingecho($host [, $timeout]);
6250 =head2 Net::hostent - by-name interface to Perl's built-in gethost*()
6263 =head2 Net::netent - by-name interface to Perl's built-in getnet*()
6276 =head2 Net::protoent - by-name interface to Perl's built-in getproto*()
6287 =head2 Net::servent - by-name interface to Perl's built-in getserv*()
6300 =head2 O - Generic interface to Perl Compiler backends
6308 =item IMPLEMENTATION
6312 =head2 ODBM_File - Tied access to odbm files
6318 =head2 Opcode - Disable named opcodes when compiling perl code
6328 =item Operator Names and Operator Lists
6330 an operator name (opname), an operator tag name (optag), a negated opname
6331 or optag, an operator set (opset)
6333 =item Opcode Functions
6335 opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
6336 full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
6337 define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
6340 =item Manipulating Opsets
6344 =item Predefined Opcode Tags
6346 :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
6347 :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open,
6348 :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided,
6355 =head2 Opcode::Safe, Safe - Compile and execute code in restricted
6362 a new namespace, an operator mask
6368 =item RECENT CHANGES
6370 =item Methods in class Safe
6372 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
6373 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
6374 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
6375 root (NAMESPACE), mask (MASK)
6377 =item Some Safety Issues
6379 Memory, CPU, Snooping, Signals, State Changes
6385 =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
6394 =head2 POSIX - Perl interface to IEEE Std 1003.1
6406 _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
6407 atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
6408 clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
6409 cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
6410 execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
6411 fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
6412 fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
6413 fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
6414 getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
6415 getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
6416 iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
6417 isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
6418 longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
6419 memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
6420 opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
6421 qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
6422 rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
6423 setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
6424 sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
6425 strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
6426 strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr,
6427 strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh,
6428 tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times,
6429 tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname,
6430 ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid,
6431 wcstombs, wctomb, write
6437 =item POSIX::SigAction
6443 new, addset, delset, emptyset, fillset, ismember
6445 =item POSIX::Termios
6447 new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
6448 getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
6449 setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
6450 field values, c_cflag field values, c_iflag field values, c_lflag field
6451 values, c_oflag field values
6455 =item PATHNAME CONSTANTS
6459 =item POSIX CONSTANTS
6463 =item SYSTEM CONFIGURATION
6521 =head2 Pod::Checker, podchecker() - check pod documents for syntax errors
6525 =item OPTIONS/ARGUMENTS
6533 =head2 Pod::Html - module to convert pod files to HTML
6541 help, htmldir, htmlroot, infile, outfile, podroot, podpath, libpods,
6542 netscape, nonetscape, index, noindex, recurse, norecurse, title, verbose
6554 =head2 Pod::InputObjects - objects representing POD input paragraphs,
6565 B<Pod::InputSource>, B<Pod::Paragraph>, B<Pod::InteriorSequence>,
6568 =item B<Pod::InputSource>
6578 =item B<was_cutting()>
6582 =item B<Pod::Paragraph>
6594 =item B<cmd_prefix()>
6596 =item B<cmd_separator()>
6598 =item B<parse_tree()>
6600 =item B<file_line()>
6604 =item B<Pod::InteriorSequence>
6620 =item B<left_delimiter()>
6622 =item B<right_delimiter()>
6624 =item B<parse_tree()>
6626 =item B<file_line()>
6632 =item B<Pod::ParseTree>
6656 =head2 Pod::Parser - base class for creating POD filters and translators
6666 =item QUICK OVERVIEW
6668 =item RECOMMENDED SUBROUTINE/METHOD OVERRIDES
6672 C<$cmd>, C<$text>, C<$line_num>, C<$pod_para>
6676 C<$text>, C<$line_num>, C<$pod_para>
6678 =item B<textblock()>
6680 C<$text>, C<$line_num>, C<$pod_para>
6682 =item B<interior_sequence()>
6684 =item OPTIONAL SUBROUTINE/METHOD OVERRIDES
6688 =item B<initialize()>
6690 =item B<begin_pod()>
6692 =item B<begin_input()>
6694 =item B<end_input()>
6698 =item B<preprocess_line()>
6700 =item B<preprocess_paragraph()>
6702 =item METHODS FOR PARSING AND PROCESSING
6704 =item B<parse_text()>
6706 B<-expand_seq> =E<gt> I<code-ref>|I<method-name>, B<-expand_ptree> =E<gt>
6707 I<code-ref>|I<method-name>
6709 =item B<interpolate()>
6711 =item B<parse_paragraph()>
6713 =item B<parse_from_filehandle()>
6715 =item B<parse_from_file()>
6717 =item ACCESSOR METHODS
6721 =item B<output_file()>
6723 =item B<output_handle()>
6725 =item B<input_file()>
6727 =item B<input_handle()>
6729 =item B<input_streams()>
6731 =item B<top_stream()>
6733 =item PRIVATE METHODS AND DATA
6735 =item B<_push_input_stream()>
6737 =item B<_pop_input_stream()>
6743 =head2 Pod::PlainText, pod2plaintext - function to convert POD data to
6744 formatted ASCII text
6758 =head2 Pod::Select, podselect() - extract selected sections of POD from
6769 =item SECTION SPECIFICATIONS
6771 =item RANGE SPECIFICATIONS
6773 =item OBJECT METHODS
6775 =item B<curr_headings()>
6779 =item B<add_selection()>
6781 =item B<clear_selections()>
6783 =item B<match_section()>
6785 =item B<is_selected()>
6787 =item EXPORTED FUNCTIONS
6789 =item B<podselect()>
6791 B<-output>, B<-sections>, B<-ranges>
6793 =item PRIVATE METHODS AND DATA
6795 =item B<_compile_section_spec()>
6799 =item $self->{_SECTION_HEADINGS}
6801 =item $self->{_SELECTED_SECTIONS}
6809 =head2 Pod::Text - convert POD data to formatted ASCII text
6819 =head2 Pod::Usage, pod2usage() - print a usage message from embedded pod
6826 C<-message>, C<-msg>, C<-exitval>, C<-verbose>, C<-output>, C<-input>,
6835 =item Recommended Use
6843 =item ACKNOWLEDGEMENTS
6845 =head2 SDBM_File - Tied access to sdbm files
6851 =head2 Safe - Compile and execute code in restricted compartments
6857 a new namespace, an operator mask
6863 =item RECENT CHANGES
6865 =item Methods in class Safe
6867 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
6868 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
6869 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
6870 root (NAMESPACE), mask (MASK)
6872 =item Some Safety Issues
6874 Memory, CPU, Snooping, Signals, State Changes
6880 =head2 Search::Dict, look - search for key in dictionary file
6886 =head2 SelectSaver - save and restore selected file handle
6892 =head2 SelfLoader - load functions only on demand
6900 =item The __DATA__ token
6902 =item SelfLoader autoloading
6904 =item Autoloading and package lexicals
6906 =item SelfLoader and AutoLoader
6908 =item __DATA__, __END__, and the FOOBAR::DATA filehandle.
6910 =item Classes and inherited methods.
6914 =item Multiple packages and fully qualified subroutine names
6916 =head2 Shell - run shell commands transparently within perl
6924 =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
6925 socket.h defines and structure manipulators
6931 inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
6932 INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
6933 SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
6934 SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
6935 pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
6937 =head2 Symbol - manipulate Perl symbols and their names
6943 =head2 Sys::Hostname - Try every conceivable way to get hostname
6951 =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
6952 interface to the UNIX syslog(3) calls
6958 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
6959 setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02),
6970 =head2 Term::Cap - Perl termcap interface
6978 =head2 Term::Complete - Perl word completion module
6984 E<lt>tabE<gt>, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
6992 =head2 Term::ReadLine - Perl interface to various C<readline> packages. If
6993 no real package is found, substitutes stubs instead of basic functions.
6999 =item Minimal set of supported functions
7001 C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
7002 C<MinLine>, C<findConsole>, Attribs, C<Features>
7004 =item Additional supported functions
7006 C<tkRunning>, C<ornaments>, C<newTTY>
7012 =head2 Test - provides a simple framework for writing test scripts
7020 NORMAL TESTS, SKIPPED TESTS, TODO TESTS
7030 =head2 Test::Harness - run perl standard test scripts with statistics
7038 =item The test script output
7046 C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
7047 %s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
7048 %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
7059 =head2 Text::Abbrev, abbrev - create an abbreviation table from a list
7067 =head2 Text::ParseWords - parse text into an array of tokens or array of
7076 0a simple word, 1multiple spaces are skipped because of our $delim, 2use of
7077 quotes to include a space in a word, 3use of a backslash to include a space
7078 in a word, 4use of a backslash to remove the special meaning of a
7079 double-quote, 5another simple word (note the lack of effect of the
7080 backslashed double-quote)
7084 =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
7097 =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
7108 =head2 Text::Wrap - line wrapping to form simple paragraphs
7118 =head2 Thread - multithreading
7126 new \&start_sub, new \&start_sub, LIST, lock VARIABLE, async BLOCK;,
7127 Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE,
7128 cond_broadcast VARIABLE, yield
7132 join, eval, detach, equal, tid
7138 =head2 Thread::Queue - thread-safe queues
7144 =item FUNCTIONS AND METHODS
7146 new, enqueue LIST, dequeue, dequeue_nb, pending
7150 =head2 Thread::Semaphore - thread-safe semaphores
7156 =item FUNCTIONS AND METHODS
7158 new, new NUMBER, down, down NUMBER, up, up NUMBER
7160 =head2 Thread::Signal - Start a thread which runs signal handlers reliably
7168 =head2 Thread::Specific - thread-specific keys
7174 =head2 Tie::Array - base class for tied arrays
7180 TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index,
7181 FETCHSIZE this, STORESIZE this, count, EXTEND this, count, CLEAR this,
7182 DESTROY this, PUSH this, LIST, POP this, SHIFT this, UNSHIFT this, LIST,
7183 SPLICE this, offset, length, LIST
7189 =head2 Tie::Handle, Tie::StdHandle - base class definitions for tied
7196 TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this,
7197 LIST, PRINTF this, format, LIST, READ this, scalar, length, offset,
7198 READLINE this, GETC this, CLOSE this, OPEN this, filename, BINMODE this,
7199 EOF this, TELL this, SEEK this, offset, whence, DESTROY this
7201 =item MORE INFORMATION
7203 =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
7209 TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
7210 this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
7214 =item MORE INFORMATION
7216 =head2 Tie::RefHash - use references as hash keys
7230 =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
7237 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
7239 =item MORE INFORMATION
7241 =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
7249 =head2 Time::Local - efficiently compute time from local and GMT time
7255 =item IMPLEMENTATION
7259 =head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
7270 =head2 Time::localtime - by-name interface to Perl's built-in localtime()
7281 =head2 Time::tm - internal object used by Time::gmtime and Time::localtime
7289 =head2 UNIVERSAL - base class for ALL classes (blessed references)
7295 isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa (
7296 VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD )
7298 =head2 User::grent - by-name interface to Perl's built-in getgr*()
7309 =head2 User::pwent - by-name interface to Perl's built-in getpw*()
7320 =head1 AUXILIARY DOCUMENTATION
7322 Here should be listed all the extra programs' documentation, but they
7323 don't all have manual pages yet:
7345 Larry Wall <F<larry@wall.org>>, with the help of oodles