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
1181 =item Obsolete Diagnostics
1183 =item Configuration Changes
1191 =head2 perldata - Perl data types
1197 =item Variable names
1203 =item Scalar value constructors
1205 =item List value constructors
1209 =item Typeglobs and Filehandles
1215 =head2 perlsyn - Perl syntax
1223 =item Simple statements
1225 =item Compound statements
1233 =item Basic BLOCKs and Switch Statements
1237 =item PODs: Embedded Documentation
1239 =item Plain Old Comments (Not!)
1243 =head2 perlop - Perl operators and precedence
1251 =item Terms and List Operators (Leftward)
1253 =item The Arrow Operator
1255 =item Auto-increment and Auto-decrement
1257 =item Exponentiation
1259 =item Symbolic Unary Operators
1261 =item Binding Operators
1263 =item Multiplicative Operators
1265 =item Additive Operators
1267 =item Shift Operators
1269 =item Named Unary Operators
1271 =item Relational Operators
1273 =item Equality Operators
1277 =item Bitwise Or and Exclusive Or
1279 =item C-style Logical And
1281 =item C-style Logical Or
1283 =item Range Operators
1285 =item Conditional Operator
1287 =item Assignment Operators
1289 =item Comma Operator
1291 =item List Operators (Rightward)
1297 =item Logical or and Exclusive Or
1299 =item C Operators Missing From Perl
1301 unary &, unary *, (TYPE)
1303 =item Quote and Quote-like Operators
1305 =item Regexp Quote-Like Operators
1307 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
1308 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
1309 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cdsUC,
1310 y/SEARCHLIST/REPLACEMENTLIST/cdsUC
1312 =item Gory details of parsing quoted constructs
1314 Finding the end, Removal of backslashes before delimiters, Interpolation,
1315 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1316 C<``>, C<qq//>, C<qx//>, C<<file*globE<gt>>, C<?RE?>, C</RE/>, C<m/RE/>,
1317 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1322 =item Constant Folding
1324 =item Bitwise String Operators
1326 =item Integer Arithmetic
1328 =item Floating-point Arithmetic
1330 =item Bigger Numbers
1334 =head2 perlre - Perl regular expressions
1342 =item Regular Expressions
1344 =item Extended Patterns
1346 C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1347 C<(?=pattern)>, C<(?!pattern)>, C<(?E<lt>=pattern)>, C<(?<!pattern)>, C<(?{
1348 code })>, C<(?p{ code })>, C<(?E<gt>pattern)>,
1349 C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
1353 =item Version 8 Regular Expressions
1355 =item Warning on \1 vs $1
1357 =item Repeated patterns matching zero-length substring
1359 =item Creating custom RE engines
1367 =head2 perlrun - how to execute the Perl interpreter
1375 =item #! and quoting on non-Unix systems
1377 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
1379 =item Location of Perl
1381 =item Command Switches
1383 B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<letters>,
1384 B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
1385 B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
1386 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
1387 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
1388 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
1394 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1395 (specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL
1397 =head2 perlfunc - Perl builtin functions
1403 =item Perl Functions by Category
1405 Functions for SCALARs or strings, Regular expressions and pattern matching,
1406 Numeric functions, Functions for real @ARRAYs, Functions for list data,
1407 Functions for real %HASHes, Input and output functions, Functions for fixed
1408 length data or records, Functions for filehandles, files, or directories,
1409 Keywords related to the control flow of your perl program, Keywords related
1410 to scoping, Miscellaneous functions, Functions for processes and process
1411 groups, Keywords related to perl modules, Keywords related to classes and
1412 object-orientedness, Low-level socket functions, System V interprocess
1413 communication functions, Fetching user and group info, Fetching network
1414 info, Time-related functions, Functions new in perl5, Functions obsoleted
1419 =item Alphabetical Listing of Perl Functions
1421 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
1422 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1423 binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
1424 chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
1425 chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
1426 close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue
1427 BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
1428 HASH,DBNAME,MASK, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
1429 do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, each HASH, eof FILEHANDLE,
1430 eof (), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists
1431 EXPR, exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno
1432 FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline
1433 PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp
1434 PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME,
1435 gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID,
1436 getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE,
1437 getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport
1438 PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent,
1439 getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
1440 setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent,
1441 endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt
1442 SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR,
1443 goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
1444 STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1445 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last
1446 LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link
1447 OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock,
1448 log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST,
1449 map EXPR,LIST, mkdir FILENAME,MASK, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
1450 msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL,
1451 next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,
1452 opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package
1453 NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
1454 print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
1455 printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
1456 qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
1457 rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
1458 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
1459 readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
1460 ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR,
1461 reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1462 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1463 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1464 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1465 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
1466 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1467 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1468 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1469 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1470 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
1471 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1472 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1473 splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
1474 split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
1475 srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK,
1476 sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr
1477 EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST,
1478 sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS,
1479 sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH,
1480 sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST,
1481 syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite
1482 FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell FILEHANDLE,
1483 tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied VARIABLE, time,
1484 times, tr///, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR,
1485 uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef EXPR, undef, unlink
1486 LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use
1487 Module LIST, use Module, use Module VERSION LIST, use VERSION, utime LIST,
1488 values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
1489 LIST, write FILEHANDLE, write EXPR, write, y///
1493 =head2 perlvar - Perl predefined variables
1499 =item Predefined Names
1501 $ARG, $_, $E<lt>I<digits>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1502 $LAST_PAREN_MATCH, $+, @+, $MULTILINE_MATCHING, $*, input_line_number
1503 HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE
1504 EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR,
1505 $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR,
1506 $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR,
1507 $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $",
1508 $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE
1509 EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR,
1510 $FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR,
1511 $FORMAT_LINES_LEFT, $-, @-, format_name HANDLE EXPR, $FORMAT_NAME, $~,
1512 format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1513 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1514 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
1515 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1516 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1517 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1518 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
1519 $COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT,
1520 $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20,
1521 $^R, $^S, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV,
1522 @ARGV, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr}
1524 =item Error Indicators
1526 =item Technical Note on the Syntax of Variable Names
1532 =head2 perlsub - Perl subroutines
1540 =item Private Variables via my()
1542 =item Persistent Private Variables
1544 =item Temporary Values via local()
1546 =item Passing Symbol Table Entries (typeglobs)
1548 =item When to Still Use local()
1550 1. You need to give a global variable a temporary value, especially $_, 2.
1551 You need to create a local file or directory handle or a local function, 3.
1552 You want to temporarily change just one element of an array or hash
1554 =item Pass by Reference
1558 =item Constant Functions
1560 =item Overriding Built-in Functions
1568 =head2 perlmod - Perl modules (packages and symbol tables)
1578 =item Package Constructors and Destructors
1588 =head2 perlmodlib - constructing new Perl modules and finding existing ones
1592 =item THE PERL MODULE LIBRARY
1596 =item Pragmatic Modules
1598 attrs, autouse, base, blib, constant, diagnostics, fields, filetest,
1599 integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, utf8,
1600 vars, vmsish, warning
1602 =item Standard Modules
1604 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
1605 B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
1606 B::Showlex, B::Stackobj, B::Terse, B::Xref, Benchmark, CGI, CGI::Apache,
1607 CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Push, CGI::Switch, CPAN,
1608 CPAN::FirstTime, CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB, DB_File,
1609 Data::Dumper, Devel::Peek, Devel::SelfStubber, DirHandle, Dumpvalue,
1610 DynaLoader, English, Env, Errno, Exporter, ExtUtils::Command,
1611 ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
1612 ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
1613 ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Miniperl,
1614 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
1615 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::Compare, File::Copy,
1616 File::DosGlob, File::Find, File::Path, File::Spec, File::Spec::Functions,
1617 File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS,
1618 File::Spec::Win32, File::stat, FileCache, FileHandle, FindBin, GDBM_File,
1619 Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::Dir, IO::File,
1620 IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket,
1621 IO::Socket::INET, IO::Socket::UNIX, IPC::Msg, IPC::Open2, IPC::Open3,
1622 IPC::Semaphore, IPC::SysV, Math::BigFloat, Math::BigInt, Math::Complex,
1623 Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent,
1624 Net::servent, O, Opcode, POSIX, Pod::Html, Pod::Text, SDBM_File, Safe,
1625 Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol,
1626 Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, Term::ReadLine,
1627 Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex,
1628 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
1629 unexpand(1), Text::Wrap, Thread, Thread::Queue, Thread::Semaphore,
1630 Thread::Signal, Thread::Specific, Tie::Array, Tie::Handle, Tie::Hash,
1631 Tie::StdHash, Tie::RefHash, Tie::Scalar, Tie::StdScalar, Tie::SubstrHash,
1632 Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL,
1633 User::grent, User::pwent
1635 =item Extension Modules
1641 Language Extensions and Documentation Tools, Development Support, Operating
1642 System Interfaces, Networking, Device Control (modems) and InterProcess
1643 Communication, Data Types and Data Type Utilities, Database Interfaces,
1644 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1645 File Names, File Systems and File Locking (see also File Handles), String
1646 Processing, Language Text Processing, Parsing, and Searching, Option,
1647 Argument, Parameter, and Configuration File Processing,
1648 Internationalization and Locale, Authentication, Security, and Encryption,
1649 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1650 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1651 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1652 exceptions etc), File Handle and Input/Output Stream Utilities,
1653 Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America,
1656 =item Modules: Creation, Use, and Abuse
1660 =item Guidelines for Module Creation
1662 Do similar modules already exist in some form?, Try to design the new
1663 module to be easy to extend and reuse, Some simple style guidelines, Select
1664 what to export, Select a name for the module, Have you got it right?,
1665 README and other Additional Files, A description of the
1666 module/package/extension etc, A copyright notice - see below, Prerequisites
1667 - what else you may need to have, How to build it - possible changes to
1668 Makefile.PL etc, How to install it, Recent changes in this release,
1669 especially incompatibilities, Changes / enhancements you plan to make in
1670 the future, Adding a Copyright Notice, Give the module a
1671 version/issue/release number, How to release and distribute a module, Take
1672 care when changing a released module
1674 =item Guidelines for Converting Perl 4 Library Scripts into Modules
1676 There is no requirement to convert anything, Consider the implications,
1677 Make the most of the opportunity, The pl2pm utility will get you started,
1678 Adds the standard Module prologue lines, Converts package specifiers from '
1679 to ::, Converts die(...) to croak(...), Several other minor changes
1681 =item Guidelines for Reusing Application Code
1683 Complete applications rarely belong in the Perl Module Library, Many
1684 applications contain some Perl code that could be reused, Break-out the
1685 reusable code into one or more separate module files, Take the opportunity
1686 to reconsider and redesign the interfaces, In some cases the 'application'
1687 can then be reduced to a small
1693 =head2 perlmodinstall - Installing CPAN Modules
1701 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1702 module (sometimes unnecessary), B<INSTALL> the module
1712 =head2 perlform - Perl formats
1718 =item Format Variables
1728 =item Accessing Formatting Internals
1734 =head2 perllocale - Perl locale handling (internationalization and
1739 =item PREPARING TO USE LOCALES
1745 =item The use locale pragma
1747 =item The setlocale function
1749 =item Finding locales
1751 =item LOCALE PROBLEMS
1753 =item Temporarily fixing locale problems
1755 =item Permanently fixing locale problems
1757 =item Permanently fixing your locale configuration
1759 =item Fixing system locale configuration
1761 =item The localeconv function
1765 =item LOCALE CATEGORIES
1769 =item Category LC_COLLATE: Collation
1771 =item Category LC_CTYPE: Character Types
1773 =item Category LC_NUMERIC: Numeric Formatting
1775 =item Category LC_MONETARY: Formatting of monetary amounts
1779 =item Other categories
1785 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
1786 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
1787 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1788 B<In-memory formatting function> (sprintf()):, B<Output formatting
1789 functions> (printf() and write()):, B<Case-mapping functions> (lc(),
1790 lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
1791 (localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
1792 tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
1793 ispunct(), isspace(), isupper(),
1798 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
1799 LC_NUMERIC, LC_TIME, LANG
1805 =item Backward compatibility
1807 =item I18N:Collate obsolete
1809 =item Sort speed and memory use impacts
1811 =item write() and LC_NUMERIC
1813 =item Freely available locale definitions
1817 =item An imperfect standard
1825 =item Broken systems
1833 =head2 perlref - Perl references and nested data structures
1841 =item Making References
1843 =item Using References
1845 =item Symbolic references
1847 =item Not-so-symbolic references
1849 =item Pseudo-hashes: Using an array as a hash
1851 =item Function Templates
1859 =head2 perlreftut - Mark's very short tutorial about references
1863 =item Who Needs Complicated Data Structures?
1871 =item Making References
1873 =item Using References
1891 =item Distribution Conditions
1895 =head2 perldsc - Perl Data Structures Cookbook
1899 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
1900 more elaborate constructs
1904 =item COMMON MISTAKES
1906 =item CAVEAT ON PRECEDENCE
1908 =item WHY YOU SHOULD ALWAYS C<use strict>
1914 =item ARRAYS OF ARRAYS
1918 =item Declaration of a ARRAY OF ARRAYS
1920 =item Generation of a ARRAY OF ARRAYS
1922 =item Access and Printing of a ARRAY OF ARRAYS
1926 =item HASHES OF ARRAYS
1930 =item Declaration of a HASH OF ARRAYS
1932 =item Generation of a HASH OF ARRAYS
1934 =item Access and Printing of a HASH OF ARRAYS
1938 =item ARRAYS OF HASHES
1942 =item Declaration of a ARRAY OF HASHES
1944 =item Generation of a ARRAY OF HASHES
1946 =item Access and Printing of a ARRAY OF HASHES
1950 =item HASHES OF HASHES
1954 =item Declaration of a HASH OF HASHES
1956 =item Generation of a HASH OF HASHES
1958 =item Access and Printing of a HASH OF HASHES
1962 =item MORE ELABORATE RECORDS
1966 =item Declaration of MORE ELABORATE RECORDS
1968 =item Declaration of a HASH OF COMPLEX RECORDS
1970 =item Generation of a HASH OF COMPLEX RECORDS
1980 =head2 perllol - Manipulating Arrays of Arrays in Perl
1984 =item Declaration and Access of Arrays of Arrays
1986 =item Growing Your Own
1988 =item Access and Printing
1996 =head2 perltoot - Tom's object-oriented tutorial for perl
2000 =item Creating a Class
2004 =item Object Representation
2006 =item Class Interface
2008 =item Constructors and Instance Methods
2010 =item Planning for the Future: Better Constructors
2014 =item Other Object Methods
2022 =item Accessing Class Data
2024 =item Debugging Methods
2026 =item Class Destructors
2028 =item Documenting the Interface
2038 =item Overridden Methods
2040 =item Multiple Inheritance
2042 =item UNIVERSAL: The Root of All Objects
2046 =item Alternate Object Representations
2050 =item Arrays as Objects
2052 =item Closures as Objects
2056 =item AUTOLOAD: Proxy Methods
2060 =item Autoloaded Data Methods
2062 =item Inherited Autoloaded Data Methods
2066 =item Metaclassical Tools
2072 =item Data Members as Variables
2076 =item Object Terminology
2082 =item AUTHOR AND COPYRIGHT
2088 =item Acknowledgments
2092 =head2 perltootc - Tom's OO Tutorial for Class Data in Perl
2096 =item Class Data as Package Variables
2100 =item Putting All Your Eggs in One Basket
2102 =item Inheritance Concerns
2104 =item The Eponymous Meta-Object
2106 =item Indirect References to Class Data
2108 =item Monadic Classes
2110 =item Translucent Attributes
2114 =item Class Data as Lexical Variables
2118 =item Privacy and Responsibility
2120 =item File-Scoped Lexicals
2122 =item More Inheritance Concerns
2124 =item Locking the Door and Throwing Away the Key
2126 =item Translucency Revisited
2134 =item AUTHOR AND COPYRIGHT
2136 =item ACKNOWLEDGEMENTS
2140 =head2 perlobj - Perl objects
2146 =item An Object is Simply a Reference
2148 =item A Class is Simply a Package
2150 =item A Method is Simply a Subroutine
2152 =item Method Invocation
2156 =item Default UNIVERSAL methods
2158 isa(CLASS), can(METHOD), VERSION( [NEED] )
2164 =item Two-Phased Garbage Collection
2170 =head2 perltie - how to hide an object class in a simple variable
2180 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
2184 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
2189 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
2190 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
2191 this, NEXTKEY this, lastkey, DESTROY this
2193 =item Tying FileHandles
2195 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
2196 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
2198 =item The C<untie> Gotcha
2208 =head2 perlbot - Bag'o Object Tricks (the BOT)
2212 =item OO SCALING TIPS
2214 =item INSTANCE VARIABLES
2216 =item SCALAR INSTANCE VARIABLES
2218 =item INSTANCE VARIABLE INHERITANCE
2220 =item OBJECT RELATIONSHIPS
2222 =item OVERRIDING SUPERCLASS METHODS
2224 =item USING RELATIONSHIP WITH SDBM
2226 =item THINKING OF CODE REUSE
2228 =item CLASS CONTEXT AND THE OBJECT
2230 =item INHERITING A CONSTRUCTOR
2234 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
2235 safe subprocesses, sockets, and semaphores)
2249 =item Using open() for IPC
2255 =item Background Processes
2257 =item Complete Dissociation of Child from Parent
2259 =item Safe Pipe Opens
2261 =item Bidirectional Communication with Another Process
2263 =item Bidirectional Communication with Yourself
2267 =item Sockets: Client/Server Communication
2271 =item Internet Line Terminators
2273 =item Internet TCP Clients and Servers
2275 =item Unix-Domain TCP Clients and Servers
2279 =item TCP Clients with IO::Socket
2283 =item A Simple Client
2285 C<Proto>, C<PeerAddr>, C<PeerPort>
2287 =item A Webget Client
2289 =item Interactive Client with IO::Socket
2293 =item TCP Servers with IO::Socket
2295 Proto, LocalPort, Listen, Reuse
2297 =item UDP: Message Passing
2309 =head2 perldbmfilter - Perl DBM Filters
2315 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
2316 B<filter_fetch_value>
2322 =item An Example -- the NULL termination problem.
2324 =item Another Example -- Key is a C int.
2332 =head2 perldebug - Perl debugging
2336 =item The Perl Debugger
2340 =item Debugger Commands
2342 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
2343 [expr], E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l
2344 subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern],
2345 t, t expr, b [line] [condition], b subname [condition], b postpone subname
2346 [condition], b load filename, b compile subname, d [line], D, a [line]
2347 command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?]..,
2348 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2349 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2350 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
2351 C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
2352 C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
2353 C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ],
2354 E<lt>E<lt> command, E<gt> command, E<gt>E<gt> command, { [ command ], {{
2355 command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R,
2356 |dbcmd, ||dbcmd, command, m expr, m package
2358 =item Debugger input/output
2360 Prompt, Multiline commands, Stack backtrace, Listing, Frame listing
2362 =item Debugging compile-time statements
2364 =item Debugger Customization
2366 =item Readline Support
2368 =item Editor Support for Debugging
2370 =item The Perl Profiler
2372 =item Debugger support in perl
2374 =item Debugger Internals
2376 =item Other resources
2382 =item Debugging Perl memory usage
2386 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
2388 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
2389 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
2392 =item Example of using B<-DL> switch
2394 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
2396 =item B<-DL> details
2400 =item Limitations of B<-DL> statistic
2404 =item Debugging regular expressions
2408 =item Compile-time output
2410 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
2411 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
2412 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
2415 =item Types of nodes
2417 =item Run-time output
2421 =head2 perldiag - various Perl diagnostics
2425 =head2 perlsec - Perl security
2431 =item Laundering and Detecting Tainted Data
2433 =item Switches On the "#!" Line
2435 =item Cleaning Up Your Path
2439 =item Protecting Your Programs
2445 =head2 perltrap - Perl traps for the unwary
2461 =item Perl4 to Perl5 Traps
2463 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
2464 Traps, General data type traps, Context Traps - scalar, list contexts,
2465 Precedence Traps, General Regular Expression Traps using s///, etc,
2466 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
2468 =item Discontinuance, Deprecation, and BugFix traps
2470 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
2471 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
2472 Discontinuance, Discontinuance, Deprecation, Discontinuance
2476 Parsing, Parsing, Parsing, Parsing
2478 =item Numerical Traps
2480 Numerical, Numerical, Numerical
2482 =item General data type traps
2484 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
2485 (Constants), (Scalars), (Variable Suicide)
2487 =item Context Traps - scalar, list contexts
2489 (list context), (scalar context), (scalar context), (list, builtin)
2491 =item Precedence Traps
2493 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
2496 =item General Regular Expression Traps using s///, etc.
2498 Regular Expression, Regular Expression, Regular Expression, Regular
2499 Expression, Regular Expression, Regular Expression, Regular Expression,
2502 =item Subroutine, Signal, Sorting Traps
2504 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
2510 =item Interpolation Traps
2512 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
2513 Interpolation, Interpolation, Interpolation, Interpolation
2519 =item Unclassified Traps
2521 C<require>/C<do> trap using returned value, C<split> on empty string with
2526 =head2 perlport - Writing portable Perl
2530 Not all Perl programs have to be portable, The vast majority of Perl I<is>
2539 =item Numbers endianness and Width
2541 =item Files and Filesystems
2543 =item System Interaction
2545 =item Interprocess Communication (IPC)
2547 =item External Subroutines (XS)
2549 =item Standard Modules
2553 =item Character sets and character encoding
2555 =item Internationalisation
2557 =item System Resources
2567 Mailing list: cpan-testers@perl.org, Testing results:
2568 C<http://www.perl.org/cpan-testers/>
2576 =item DOS and Derivatives
2578 The djgpp environment for DOS, C<http://www.delorie.com/djgpp/>, The EMX
2579 environment for DOS, OS/2, etc.
2580 C<emx@iaehv.nl>,C<http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/index.
2582 C<ftp://hobbes.nmsu.edu/pub/os2/dev/emx>, Build instructions for Win32,
2583 L<perlwin32>, The ActiveState Pages, C<http://www.activestate.com/>
2587 The MacPerl Pages, C<http://www.macperl.com/>, The MacPerl mailing lists,
2588 C<http://www.macperl.org/>, MacPerl Module Porters,
2589 C<http://pudge.net/mmp/>
2593 L<perlvms.pod>, vmsperl list, C<majordomo@perl.org>, vmsperl on the web,
2594 C<http://www.sidhe.org/vmsperl/index.html>
2598 L<README.vos>, VOS mailing list, VOS Perl on the web at
2599 C<http://ftp.stratus.com/pub/vos/vos.html>
2601 =item EBCDIC Platforms
2603 perl-mvs list, AS/400 Perl information at
2604 C<http://as400.rochester.ibm.com/>
2610 Atari, Guido Flohr's page C<http://stud.uni-sb.de/~gufl0000/>, HP 300
2611 MPE/iX C<http://www.cccd.edu/~markb/perlix.html>, Novell Netware
2615 =item FUNCTION IMPLEMENTATIONS
2619 =item Alphabetical Listing of Perl Functions
2621 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, binmode FILEHANDLE, chmod LIST, chown
2622 LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
2623 HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR,
2624 flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid,
2625 getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME,
2626 getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber
2627 NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent,
2628 getnetent, getprotoent, getservent, setpwent, setgrent, sethostent
2629 STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN,
2630 endpwent, endgrent, endhostent, endnetent, endprotoent, endservent,
2631 getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl
2632 FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat
2633 FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
2634 ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open
2635 FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2636 RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2637 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority
2638 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl
2639 ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite
2640 ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat
2641 FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
2642 FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
2643 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
2644 wait, waitpid PID,FLAGS
2650 v1.42, 22 May 1999Added notes about tests, sprintf/printf, and epoch
2652 =item v1.41, 19 May 1999, v1.40, 11 April 1999, v1.39, 11 February 1999,
2653 v1.38, 31 December 1998, v1.37, 19 December 1998, v1.36, 9 September 1998,
2654 v1.35, 13 August 1998, v1.33, 06 August 1998, v1.32, 05 August 1998, v1.30,
2655 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 constant - Perl pragma to declare constants
3225 =item TECHNICAL NOTE
3233 =head2 diagnostics - Perl compiler pragma to force verbose warning
3242 =item The C<diagnostics> Pragma
3244 =item The I<splain> Program
3256 =head2 fields - compile-time class fields
3264 =head2 filetest - Perl pragma to control the filetest permission operators
3268 $can_perhaps_read = -r "file"; # use the mode bits
3270 use filetest 'access'; # intuit harder
3271 $can_really_read = -r "file";
3273 $can_perhaps_read = -r "file"; # use the mode bits again
3279 =item subpragma access
3283 =head2 integer - Perl pragma to compute arithmetic in integer instead of
3290 =head2 less - perl pragma to request less of something from the compiler
3296 =head2 lib - manipulate @INC at compile time
3304 =item ADDING DIRECTORIES TO @INC
3306 =item DELETING DIRECTORIES FROM @INC
3308 =item RESTORING ORIGINAL @INC
3316 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
3323 =head2 ops - Perl pragma to restrict unsafe operations when compiling
3331 =head2 overload - Package for overloading perl operations
3339 =item Declaration of overloaded functions
3341 =item Calling Conventions for Binary Operations
3343 FALSE, TRUE, C<undef>
3345 =item Calling Conventions for Unary Operations
3347 =item Calling Conventions for Mutators
3349 C<++> and C<-->, C<x=> and other assignment versions
3351 =item Overloadable Operations
3353 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
3354 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
3355 and numeric conversion>, I<Iteration>, I<Dereferencing>, I<Special>
3357 =item Inheritance and overloading
3359 Strings as values of C<use overload> directive, Overloading of an operation
3360 is inherited by derived classes
3364 =item SPECIAL SYMBOLS FOR C<use overload>
3372 C<undef>, TRUE, defined, but FALSE
3374 =item Copy Constructor
3380 =item MAGIC AUTOGENERATION
3382 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
3383 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
3384 I<Concatenation>, I<Comparison operations>, I<Iterator>, I<Dereferencing>,
3387 =item Losing overloading
3389 =item Run-time Overloading
3391 =item Public functions
3393 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
3395 =item Overloading constants
3397 integer, float, binary, q, qr
3399 =item IMPLEMENTATION
3401 =item Metaphor clash
3407 =item Two-face scalars
3409 =item Two-face references
3411 =item Symbolic calculator
3413 =item I<Really> symbolic calculator
3423 =head2 re - Perl pragma to alter regular expression behaviour
3429 =head2 sigtrap - Perl pragma to enable simple signal handling
3439 =item SIGNAL HANDLERS
3441 B<stack-trace>, B<die>, B<handler> I<your-handler>
3445 B<normal-signals>, B<error-signals>, B<old-interface-signals>
3449 B<untrapped>, B<any>, I<signal>, I<number>
3455 =head2 strict - Perl pragma to restrict unsafe constructs
3461 C<strict refs>, C<strict vars>, C<strict subs>
3463 =head2 subs - Perl pragma to predeclare sub names
3469 =head2 utf8 - Perl pragma to turn on UTF-8 and Unicode support
3477 =head2 vars - Perl pragma to predeclare global variable names
3483 =head2 warning - Perl pragma to control optional warnings
3489 C<warning deprecated>
3491 =head1 MODULE DOCUMENTATION
3493 =head2 AnyDBM_File - provide framework for multiple DBMs
3501 =item DBM Comparisons
3509 =head2 AutoLoader - load subroutines only on demand
3517 =item Subroutine Stubs
3519 =item Using B<AutoLoader>'s AUTOLOAD Subroutine
3521 =item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
3523 =item Package Lexicals
3525 =item B<AutoLoader> vs. B<SelfLoader>
3533 =head2 AutoSplit - split a package for autoloading
3539 $keep, $check, $modtime
3543 =item Multiple packages
3549 =head2 B - The Perl Compiler
3555 =item OVERVIEW OF CLASSES
3559 =item SV-RELATED CLASSES
3567 IV, IVX, needs64bits, packiv
3581 =item B::PVMG METHODS
3585 =item B::MAGIC METHODS
3587 MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
3589 =item B::PVLV METHODS
3591 TARGOFF, TARGLEN, TYPE, TARG
3595 USEFUL, PREVIOUS, RARE, TABLE
3599 NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT,
3604 LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
3605 BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
3609 FILL, MAX, OFF, ARRAY, AvFLAGS
3613 STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY,
3618 FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
3620 =item OP-RELATED CLASSES
3624 next, sibling, ppaddr, desc, targ, type, seq, flags, private
3626 =item B::UNOP METHOD
3630 =item B::BINOP METHOD
3634 =item B::LOGOP METHOD
3638 =item B::CONDOP METHODS
3642 =item B::LISTOP METHOD
3646 =item B::PMOP METHODS
3648 pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
3650 =item B::SVOP METHOD
3654 =item B::GVOP METHOD
3658 =item B::PVOP METHOD
3662 =item B::LOOP METHODS
3664 redoop, nextop, lastop
3666 =item B::COP METHODS
3668 label, stash, filegv, cop_seq, arybase, line
3672 =item FUNCTIONS EXPORTED BY C<B>
3674 main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes,
3675 sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG),
3676 walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM),
3677 hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names,
3678 byteload_fh(FILEHANDLE)
3682 =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
3691 =head2 B::Assembler - Assemble Perl bytecode
3699 =head2 B::Bblock - Walk basic blocks
3707 =head2 B::Bytecode - Perl compiler's bytecode backend
3715 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3716 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3717 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3725 =head2 B::C - Perl compiler's C backend
3733 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
3734 B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>
3742 =head2 B::CC - Perl compiler's optimized C translation backend
3750 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
3751 B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
3752 B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
3764 =item Context of ".."
3768 =item Deprecated features
3774 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
3782 =head2 B::Deparse - Perl compiler backend to produce perl code
3790 B<-l>, B<-p>, B<-q>, B<-u>I<PACKAGE>, B<-s>I<LETTERS>, B<C>
3796 =head2 B::Disassembler - Disassemble Perl bytecode
3804 =head2 B::Lint - Perl lint
3810 =item OPTIONS AND LINT CHECKS
3812 B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
3813 B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
3815 =item NON LINT-CHECK OPTIONS
3823 =head2 B::O, O - Generic interface to Perl Compiler backends
3831 =item IMPLEMENTATION
3835 =head2 B::Showlex - Show lexical variables used in functions or files
3843 =head2 B::Stackobj - Helper module for CC backend
3851 =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
3859 =head2 B::Xref - Generates cross reference reports for Perl programs
3867 C<-oFILENAME>, C<-r>, C<-D[tO]>
3873 =head2 Bblock, B::Bblock - Walk basic blocks
3881 =head2 Benchmark - benchmark running times of code
3893 =item Standard Exports
3895 timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
3896 timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timesum (
3897 T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] )
3899 =item Optional Exports
3901 clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( )
3913 =item MODIFICATION HISTORY
3915 =head2 ByteLoader - load byte compiled perl code
3925 =head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend
3933 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3934 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3935 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3943 =head2 CGI - Simple Common Gateway Interface Class
3953 =item PROGRAMMING STYLE
3955 =item CALLING CGI.PM ROUTINES
3957 1. Use another name for the argument, if one is available. Forexample,
3958 -value is an alias for -values, 2. Change the capitalization, e.g. -Values,
3959 3. Put quotes around the argument name, e.g. '-values'
3961 =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
3963 =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
3965 =item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
3967 =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
3969 =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
3971 =item SETTING THE VALUE(S) OF A NAMED PARAMETER:
3973 =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
3975 =item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
3977 =item DELETING A PARAMETER COMPLETELY:
3979 =item DELETING ALL PARAMETERS:
3981 =item DIRECT ACCESS TO THE PARAMETER LIST:
3983 =item SAVING THE STATE OF THE SCRIPT TO A FILE:
3985 =item USING THE FUNCTION-ORIENTED INTERFACE
3987 B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
3988 B<:standard>, B<:all>
3992 -any, -compile, -nph, -newstyle_urls, -autoload, -no_debug,
3995 =item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS
3997 1. start_table() (generates a <TABLE> tag), 2. end_table() (generates a
3998 </TABLE> tag), 3. start_ul() (generates a <UL> tag), 4. end_ul() (generates
4003 =item GENERATING DYNAMIC DOCUMENTS
4007 =item CREATING A STANDARD HTTP HEADER:
4009 =item GENERATING A REDIRECTION HEADER
4011 =item CREATING THE HTML DOCUMENT HEADER
4013 B<Parameters:>, 4, 5, 6..
4015 =item ENDING THE HTML DOCUMENT:
4017 =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
4019 =item OBTAINING THE SCRIPT'S URL
4021 B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
4024 =item MIXING POST AND URL PARAMETERS
4028 =item CREATING STANDARD HTML ELEMENTS:
4032 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS
4034 =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
4036 =item HTML SHORTCUTS AND LIST INTERPOLATION
4038 =item NON-STANDARD HTML SHORTCUTS
4040 =item PRETTY-PRINTING HTML
4044 =item CREATING FILL-OUT FORMS:
4048 =item CREATING AN ISINDEX TAG
4050 =item STARTING AND ENDING A FORM
4052 B<application/x-www-form-urlencoded>, B<multipart/form-data>
4054 =item CREATING A TEXT FIELD
4058 =item CREATING A BIG TEXT FIELD
4060 =item CREATING A PASSWORD FIELD
4062 =item CREATING A FILE UPLOAD FIELD
4066 =item CREATING A POPUP MENU
4068 =item CREATING A SCROLLING LIST
4072 =item CREATING A GROUP OF RELATED CHECKBOXES
4076 =item CREATING A STANDALONE CHECKBOX
4080 =item CREATING A RADIO BUTTON GROUP
4084 =item CREATING A SUBMIT BUTTON
4088 =item CREATING A RESET BUTTON
4090 =item CREATING A DEFAULT BUTTON
4092 =item CREATING A HIDDEN FIELD
4096 =item CREATING A CLICKABLE IMAGE BUTTON
4098 B<Parameters:>, 3.The third option (-align, optional) is an alignment type,
4100 TOP, BOTTOM or MIDDLE
4102 =item CREATING A JAVASCRIPT ACTION BUTTON
4108 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag,
4109 B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure>
4111 =item WORKING WITH FRAMES
4113 1. Create a <Frameset> document, 2. Specify the destination for the
4114 document in the HTTP header, 3. Specify the destination for the document in
4117 =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS
4123 =item DUMPING OUT ALL THE NAME/VALUE PAIRS
4127 =item FETCHING ENVIRONMENT VARIABLES
4129 B<Accept()>, B<raw_cookie()>, B<user_agent()>, B<path_info()>,
4130 B<path_translated()>, B<remote_host()>, B<script_name()>Return the script
4131 name as a partial URL, for self-refering
4132 scripts, B<referer()>, B<auth_type ()>, B<server_name ()>, B<virtual_host
4133 ()>, B<server_software ()>, B<remote_user ()>, B<user_name ()>,
4136 =item USING NPH SCRIPTS
4138 In the B<use> statement, By calling the B<nph()> method:, By using B<-nph>
4139 parameters in the B<header()> and B<redirect()> statements:
4144 multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end()
4146 =item Avoiding Denial of Service Attacks
4148 B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script
4149 basis>, B<2. Globally for all scripts>
4151 =item COMPATIBILITY WITH CGI-LIB.PL
4153 =item AUTHOR INFORMATION
4157 Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor
4158 (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell
4159 (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg
4160 (jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick
4161 (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis
4162 (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen
4163 (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim
4164 MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks
4165 (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed
4166 Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug
4167 MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org),
4168 ...and many many more..
4170 =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
4176 =head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API
4190 =head2 CGI::Carp, B<CGI::Carp> - CGI routines for writing to the HTTPD (or
4197 =item REDIRECTING ERROR MESSAGES
4199 =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW
4203 =item Changing the default message
4213 =head2 CGI::Cookie - Interface to Netscape Cookies
4219 =item USING CGI::Cookie
4221 B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag>
4225 =item Creating New Cookies
4227 =item Sending the Cookie to the Browser
4229 =item Recovering Previous Cookies
4231 =item Manipulating Cookies
4233 B<name()>, B<value()>, B<domain()>, B<path()>, B<expires()>
4237 =item AUTHOR INFORMATION
4243 =head2 CGI::Fast - CGI Interface for Fast CGI
4249 =item OTHER PIECES OF THE PUZZLE
4251 =item WRITING FASTCGI PERL SCRIPTS
4253 =item INSTALLING FASTCGI SCRIPTS
4255 =item USING FASTCGI SCRIPTS AS CGI SCRIPTS
4259 =item AUTHOR INFORMATION
4265 =head2 CGI::Push - Simple Interface to Server Push
4271 =item USING CGI::Push
4273 -next_page, -last_page, -type, -delay, -cookie, -target, -expires
4277 =item Heterogeneous Pages
4279 =item Changing the Page Delay on the Fly
4283 =item INSTALLING CGI::Push SCRIPTS
4285 =item AUTHOR INFORMATION
4291 =head2 CGI::Switch - Try more than one constructors and return the first
4302 =head2 CPAN - query, download and build perl modules from CPAN sites
4310 =item Interactive Mode
4312 Searching for authors, bundles, distribution files and modules, make, test,
4313 install, clean modules or distributions, readme, look module or
4314 distribution, Signals
4322 =item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
4324 =item ProgrammerE<39>s interface
4326 expand($type,@things), Programming Examples
4328 =item Methods in the four Classes
4336 =item Finding packages and VERSION
4340 =item Floppy, Zip, Offline Mode
4346 o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
4347 E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
4348 [shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
4353 =item Note on urllist parameter's format
4355 =item urllist parameter has CD-ROM support
4363 =item POPULATE AN INSTALLATION WITH LOTS OF MODULES
4365 =item WORKING WITH CPAN.pm BEHIND FIREWALLS
4367 http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
4375 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
4381 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
4390 =head2 Carp, carp - warn of errors (from perspective of caller)
4398 =item Forcing a Stack Trace
4404 =head2 Class::Struct - declare struct-like datatypes as Perl classes
4412 =item The C<struct()> function
4414 =item Element Types and Accessor Methods
4416 Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or
4417 C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>)
4423 Example 1, Example 2
4425 =item Author and Modification History
4427 =head2 Config - access Perl configuration information
4433 myconfig(), config_sh(), config_vars(@names)
4445 C<_a>, C<_exe>, C<_o>
4449 C<afs>, C<alignbytes>, C<ansi2knr>, C<aphostname>, C<apiversion>, C<ar>,
4450 C<archlib>, C<archlibexp>, C<archname64>, C<archname>, C<archobjs>, C<awk>
4454 C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>, C<byacc>, C<byteorder>
4458 C<c>, C<castflags>, C<cat>, C<cc>, C<cccdlflags>, C<ccdlflags>, C<ccflags>,
4459 C<ccsymbols>, C<cf_by>, C<cf_email>, C<cf_time>, C<chgrp>, C<chmod>,
4460 C<chown>, C<clocktype>, C<comm>, C<compress>, C<contains>, C<cp>, C<cpio>,
4461 C<cpp>, C<cpp_stuff>, C<cppccsymbols>, C<cppflags>, C<cpplast>,
4462 C<cppminus>, C<cpprun>, C<cppstdin>, C<cppsymbols>, C<crosscompile>,
4467 C<d_access>, C<d_accessx>, C<d_alarm>, C<d_archlib>, C<d_attribut>,
4468 C<d_bcmp>, C<d_bcopy>, C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>,
4469 C<d_bzero>, C<d_casti32>, C<d_castneg>, C<d_charvspr>, C<d_chown>,
4470 C<d_chroot>, C<d_chsize>, C<d_closedir>, C<d_cmsghdr_s>, C<d_const>,
4471 C<d_crypt>, C<d_csh>, C<d_cuserid>, C<d_dbl_dig>, C<d_dbmclose64>,
4472 C<d_dbminit64>, C<d_delete64>, C<d_difftime>, C<d_dirent64_s>,
4473 C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>, C<d_dlsymun>, C<d_dosuid>,
4474 C<d_drand48proto>, C<d_dup2>, C<d_eaccess>, C<d_endgrent>, C<d_endhent>,
4475 C<d_endnent>, C<d_endpent>, C<d_endpwent>, C<d_endsent>, C<d_eofnblk>,
4476 C<d_eunice>, C<d_fchmod>, C<d_fchown>, C<d_fcntl>, C<d_fd_macros>,
4477 C<d_fd_set>, C<d_fds_bits>, C<d_fetch64>, C<d_fgetpos64>, C<d_fgetpos>,
4478 C<d_firstkey64>, C<d_flexfnam>, C<d_flock64_s>, C<d_flock>, C<d_fopen64>,
4479 C<d_fork>, C<d_fpathconf>, C<d_freopen64>, C<d_fseek64>, C<d_fseeko64>,
4480 C<d_fseeko>, C<d_fsetpos64>, C<d_fsetpos>, C<d_fstat64>, C<d_fstatfs>,
4481 C<d_fstatvfs>, C<d_ftell64>, C<d_ftello64>, C<d_ftello>, C<d_ftime>,
4482 C<d_ftruncate64>, C<d_Gconvert>, C<d_getgrent>, C<d_getgrps>,
4483 C<d_gethbyaddr>, C<d_gethbyname>, C<d_gethent>, C<d_gethname>,
4484 C<d_gethostprotos>, C<d_getlogin>, C<d_getmntent>, C<d_getnbyaddr>,
4485 C<d_getnbyname>, C<d_getnent>, C<d_getnetprotos>, C<d_getpbyname>,
4486 C<d_getpbynumber>, C<d_getpent>, C<d_getpgid>, C<d_getpgrp2>, C<d_getpgrp>,
4487 C<d_getppid>, C<d_getprior>, C<d_getprotoprotos>, C<d_getpwent>,
4488 C<d_getsbyname>, C<d_getsbyport>, C<d_getsent>, C<d_getservprotos>,
4489 C<d_gettimeod>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>, C<d_htonl>,
4490 C<d_index>, C<d_inetaton>, C<d_ino64_t>, C<d_int64t>, C<d_iovec_s>,
4491 C<d_isascii>, C<d_killpg>, C<d_lchown>, C<d_link>, C<d_llseek>,
4492 C<d_locconv>, C<d_lockf64>, C<d_lockf>, C<d_longdbl>, C<d_longlong>,
4493 C<d_lseek64>, C<d_lstat64>, C<d_lstat>, C<d_madvise>, C<d_mblen>,
4494 C<d_mbstowcs>, C<d_mbtowc>, C<d_memchr>, C<d_memcmp>, C<d_memcpy>,
4495 C<d_memmove>, C<d_memset>, C<d_mkdir>, C<d_mkfifo>, C<d_mktime>, C<d_mmap>,
4496 C<d_mprotect>, C<d_msg>, C<d_msg_ctrunc>, C<d_msg_dontroute>, C<d_msg_oob>,
4497 C<d_msg_peek>, C<d_msg_proxy>, C<d_msgctl>, C<d_msgget>, C<d_msghdr_s>,
4498 C<d_msgrcv>, C<d_msgsnd>, C<d_msync>, C<d_munmap>, C<d_mymalloc>,
4499 C<d_nextkey64>, C<d_nice>, C<d_off64_t>, C<d_offset_t>,
4500 C<d_old_pthread_create_joinable>, C<d_oldpthreads>, C<d_oldsock>,
4501 C<d_open3>, C<d_open64>, C<d_opendir64>, C<d_pathconf>, C<d_pause>,
4502 C<d_phostname>, C<d_pipe>, C<d_poll>, C<d_portable>, C<d_pthread_yield>,
4503 C<d_pwage>, C<d_pwchange>, C<d_pwclass>, C<d_pwcomment>, C<d_pwexpire>,
4504 C<d_pwgecos>, C<d_pwpasswd>, C<d_pwquota>, C<d_readdir64>, C<d_readdir>,
4505 C<d_readlink>, C<d_readv>, C<d_recvmsg>, C<d_rename>, C<d_rewinddir>,
4506 C<d_rmdir>, C<d_safebcpy>, C<d_safemcpy>, C<d_sanemcmp>, C<d_sched_yield>,
4507 C<d_scm_rights>, C<d_seekdir64>, C<d_seekdir>, C<d_select>, C<d_sem>,
4508 C<d_semctl>, C<d_semctl_semid_ds>, C<d_semctl_semun>, C<d_semget>,
4509 C<d_semop>, C<d_sendmsg>, C<d_setegid>, C<d_seteuid>, C<d_setgrent>,
4510 C<d_setgrps>, C<d_sethent>, C<d_setlinebuf>, C<d_setlocale>, C<d_setnent>,
4511 C<d_setpent>, C<d_setpgid>, C<d_setpgrp2>, C<d_setpgrp>, C<d_setprior>,
4512 C<d_setpwent>, C<d_setregid>, C<d_setresgid>, C<d_setresuid>,
4513 C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>, C<d_setsid>,
4514 C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>, C<d_shmatprototype>,
4515 C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>, C<d_sigsetjmp>,
4516 C<d_socket>, C<d_sockpair>, C<d_stat64>, C<d_statblks>, C<d_statfs>,
4517 C<d_statfsflags>, C<d_statvfs>, C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>,
4518 C<d_stdio_stream_array>, C<d_stdiobase>, C<d_stdstdio>, C<d_store64>,
4519 C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>, C<d_strerror>,
4520 C<d_strtod>, C<d_strtol>, C<d_strtoul>, C<d_strxfrm>, C<d_suidsafe>,
4521 C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>,
4522 C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir64>, C<d_telldir>,
4523 C<d_telldirproto>, C<d_time>, C<d_times>, C<d_tmpfile64>, C<d_truncate64>,
4524 C<d_truncate>, C<d_tzname>, C<d_umask>, C<d_uname>, C<d_union_semun>,
4525 C<d_vfork>, C<d_void_closedir>, C<d_voidsig>, C<d_voidtty>, C<d_volatile>,
4526 C<d_vprintf>, C<d_wait4>, C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>,
4527 C<d_writev>, C<d_xenix>, C<date>, C<db_hashtype>, C<db_prefixtype>,
4528 C<defvoidused>, C<direntrytype>, C<dlext>, C<dlsrc>, C<doublesize>,
4529 C<drand01>, C<dynamic_ext>
4533 C<eagain>, C<ebcdic>, C<echo>, C<egrep>, C<emacs>, C<eunicefix>,
4534 C<exe_ext>, C<expr>, C<extensions>
4538 C<fflushall>, C<fflushNULL>, C<find>, C<firstmakefile>, C<flex>,
4539 C<fpostype>, C<freetype>, C<full_ar>, C<full_csh>, C<full_sed>
4543 C<gccversion>, C<gidtype>, C<glibpth>, C<grep>, C<groupcat>, C<groupstype>,
4548 C<h_fcntl>, C<h_sysfile>, C<hint>, C<hostcat>, C<huge>
4552 C<i_arpainet>, C<i_bsdioctl>, C<i_db>, C<i_dbm>, C<i_dirent>, C<i_dld>,
4553 C<i_dlfcn>, C<i_fcntl>, C<i_float>, C<i_gdbm>, C<i_grp>, C<i_inttypes>,
4554 C<i_limits>, C<i_locale>, C<i_machcthr>, C<i_malloc>, C<i_math>,
4555 C<i_memory>, C<i_mntent>, C<i_ndbm>, C<i_netdb>, C<i_neterrno>,
4556 C<i_netinettcp>, C<i_niin>, C<i_poll>, C<i_pthread>, C<i_pwd>,
4557 C<i_rpcsvcdbm>, C<i_sfio>, C<i_sgtty>, C<i_stdarg>, C<i_stddef>,
4558 C<i_stdlib>, C<i_string>, C<i_sysaccess>, C<i_sysdir>, C<i_sysfile>,
4559 C<i_sysfilio>, C<i_sysin>, C<i_sysioctl>, C<i_sysmman>, C<i_sysmount>,
4560 C<i_sysndir>, C<i_sysparam>, C<i_sysresrc>, C<i_syssecrt>, C<i_sysselct>,
4561 C<i_syssockio>, C<i_sysstat>, C<i_sysstatvfs>, C<i_systime>, C<i_systimek>,
4562 C<i_systimes>, C<i_systypes>, C<i_sysuio>, C<i_sysun>, C<i_syswait>,
4563 C<i_termio>, C<i_termios>, C<i_time>, C<i_unistd>, C<i_utime>, C<i_values>,
4564 C<i_varargs>, C<i_varhdr>, C<i_vfork>, C<ignore_versioned_solibs>,
4565 C<incpath>, C<inews>, C<installarchlib>, C<installbin>, C<installman1dir>,
4566 C<installman3dir>, C<installprivlib>, C<installscript>, C<installsitearch>,
4567 C<installsitelib>, C<installusrbinperl>, C<intsize>
4571 C<known_extensions>, C<ksh>
4575 C<large>, C<ld>, C<lddlflags>, C<ldflags>, C<less>, C<lib_ext>, C<libc>,
4576 C<libperl>, C<libpth>, C<libs>, C<libswanted>, C<line>, C<lint>,
4577 C<lkflags>, C<ln>, C<lns>, C<locincpth>, C<loclibpth>, C<longdblsize>,
4578 C<longlongsize>, C<longsize>, C<lp>, C<lpr>, C<ls>, C<lseeksize>,
4583 C<mail>, C<mailx>, C<make>, C<make_set_make>, C<mallocobj>, C<mallocsrc>,
4584 C<malloctype>, C<man1dir>, C<man1direxp>, C<man1ext>, C<man3dir>,
4585 C<man3direxp>, C<man3ext>
4589 C<Mcc>, C<medium>, C<mips_type>, C<mkdir>, C<mmaptype>, C<models>,
4590 C<modetype>, C<more>, C<multiarch>, C<mv>, C<myarchname>, C<mydomain>,
4591 C<myhostname>, C<myuname>
4595 C<n>, C<netdb_hlen_type>, C<netdb_host_type>, C<netdb_name_type>,
4596 C<netdb_net_type>, C<nm>, C<nm_opt>, C<nm_so_opt>, C<nonxs_ext>, C<nroff>
4600 C<o_nonblock>, C<obj_ext>, C<old_pthread_create_joinable>, C<optimize>,
4601 C<orderlib>, C<osname>, C<osvers>
4605 C<package>, C<pager>, C<passcat>, C<patchlevel>, C<path_sep>, C<perl>,
4606 C<perladmin>, C<perlpath>, C<pg>, C<phostname>, C<pidtype>, C<plibpth>,
4607 C<pmake>, C<pr>, C<prefix>, C<prefixexp>, C<privlib>, C<privlibexp>,
4608 C<prototype>, C<ptrsize>
4612 C<randbits>, C<randfunc>, C<randseedtype>, C<ranlib>, C<rd_nodata>, C<rm>,
4617 C<sched_yield>, C<scriptdir>, C<scriptdirexp>, C<sed>, C<seedfunc>,
4618 C<selectminbits>, C<selecttype>, C<sendmail>, C<sh>, C<shar>, C<sharpbang>,
4619 C<shmattype>, C<shortsize>, C<shrpenv>, C<shsharp>, C<sig_count>,
4620 C<sig_name>, C<sig_name_init>, C<sig_num>, C<sig_num_init>, C<signal_t>,
4621 C<sitearch>, C<sitearchexp>, C<sitelib>, C<sitelibexp>, C<sizetype>,
4622 C<sleep>, C<smail>, C<small>, C<so>, C<sockethdr>, C<socketlib>, C<sort>,
4623 C<spackage>, C<spitshell>, C<split>, C<src>, C<ssizetype>, C<startperl>,
4624 C<startsh>, C<static_ext>, C<stdchar>, C<stdio_base>, C<stdio_bufsiz>,
4625 C<stdio_cnt>, C<stdio_filbuf>, C<stdio_ptr>, C<stdio_stream_array>,
4626 C<strings>, C<submit>, C<subversion>, C<sysman>
4630 C<tail>, C<tar>, C<tbl>, C<tee>, C<test>, C<timeincl>, C<timetype>,
4631 C<touch>, C<tr>, C<trnl>, C<troff>
4635 C<uidtype>, C<uname>, C<uniq>, C<use64bits>, C<usedl>, C<usemultiplicity>,
4636 C<usemymalloc>, C<usenm>, C<useopcode>, C<useperlio>, C<useposix>,
4637 C<usesfio>, C<useshrplib>, C<usethreads>, C<usevfork>, C<usrinc>, C<uuname>
4641 C<version>, C<vi>, C<voidflags>
4655 =head2 Cwd, getcwd - get pathname of current working directory
4661 =head2 DB - programmatic interface to the Perl debugging API (draft,
4671 =item Global Variables
4673 $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args,
4674 @DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname,
4679 CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'),
4680 CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done()
4682 =item Client Callback Methods
4684 CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(),
4685 CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(),
4686 CLIENT->output(LIST)
4694 =head2 DB_File - Perl5 access to Berkeley DB version 1.x
4700 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
4704 =item Using DB_File with Berkeley DB version 2
4706 =item Interface to Berkeley DB
4708 =item Opening a Berkeley DB Database File
4710 =item Default Parameters
4712 =item In Memory Databases
4720 =item A Simple Example
4728 =item Changing the BTREE sort order
4730 =item Handling Duplicate Keys
4732 =item The get_dup() Method
4734 =item The find_dup() Method
4736 =item The del_dup() Method
4738 =item Matching Partial Keys
4746 =item The 'bval' Option
4748 =item A Simple Example
4750 =item Extra RECNO Methods
4752 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
4753 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
4755 =item Another Example
4759 =item THE API INTERFACE
4761 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
4762 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
4763 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
4764 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
4766 =item HINTS AND TIPS
4770 =item Locking Databases
4772 =item Sharing Databases With C Applications
4774 =item The untie() Gotcha
4778 =item COMMON QUESTIONS
4782 =item Why is there Perl source in my database?
4784 =item How do I store complex data structures with DB_File?
4786 =item What does "Invalid Argument" mean?
4788 =item What does "Bareword 'DB_File' not allowed" mean?
4804 =head2 Data::Dumper - stringified perl data structures, suitable for both
4805 printing and C<eval>
4815 I<PACKAGE>->new(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dump I<or>
4816 I<PACKAGE>->Dump(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dumpxs I<or>
4817 I<PACKAGE>->Dumpxs(I<ARRAYREF [>, I<ARRAYREF]>),
4818 I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>),
4819 I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset
4823 Dumper(I<LIST>), DumperX(I<LIST>)
4825 =item Configuration Variables or Methods
4827 $Data::Dumper::Indent I<or> I<$OBJ>->Indent(I<[NEWVAL]>),
4828 $Data::Dumper::Purity I<or> I<$OBJ>->Purity(I<[NEWVAL]>),
4829 $Data::Dumper::Pad I<or> I<$OBJ>->Pad(I<[NEWVAL]>),
4830 $Data::Dumper::Varname I<or> I<$OBJ>->Varname(I<[NEWVAL]>),
4831 $Data::Dumper::Useqq I<or> I<$OBJ>->Useqq(I<[NEWVAL]>),
4832 $Data::Dumper::Terse I<or> I<$OBJ>->Terse(I<[NEWVAL]>),
4833 $Data::Dumper::Freezer I<or> $I<OBJ>->Freezer(I<[NEWVAL]>),
4834 $Data::Dumper::Toaster I<or> $I<OBJ>->Toaster(I<[NEWVAL]>),
4835 $Data::Dumper::Deepcopy I<or> $I<OBJ>->Deepcopy(I<[NEWVAL]>),
4836 $Data::Dumper::Quotekeys I<or> $I<OBJ>->Quotekeys(I<[NEWVAL]>),
4837 $Data::Dumper::Bless I<or> $I<OBJ>->Bless(I<[NEWVAL]>)
4855 =head2 Devel::Peek - A data debugging tool for the XS programmer
4865 =item A simple scalar string
4867 =item A simple scalar number
4869 =item A simple scalar with an extra reference
4871 =item A reference to a simple scalar
4873 =item A reference to an array
4875 =item A reference to a hash
4877 =item Dumping a large array or hash
4879 =item A reference to an SV which holds a C pointer
4881 =item A reference to a subroutine
4893 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
4899 =head2 DirHandle - supply object methods for directory handles
4905 =head2 Dumpvalue - provides screen dump of Perl data.
4915 C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
4916 C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<tick>, C<HighBit>,
4917 C<printUndef>, C<UsageOnly>, unctrl, subdump, bareStringify, quoteHighBit,
4922 dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump,
4923 veryCompact, set, get
4927 =head2 DynaLoader - Dynamically load C libraries into Perl code
4933 @dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs,
4934 @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(),
4935 dl_load_file(), dl_loadflags(), dl_find_symbol(),
4936 dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(),
4941 =head2 English - use nice English (or awk) names for ugly punctuation
4948 =head2 Env - perl module that imports environment variables
4956 =head2 Errno - System errno constants
4966 =head2 Exporter - Implements default import method for modules
4974 =item Selecting What To Export
4976 =item Specialised Import Lists
4978 =item Exporting without using Export's import method
4980 =item Module Version Checking
4982 =item Managing Unknown Symbols
4984 =item Tag Handling Utility Functions
4988 =head2 ExtUtils::Command - utilities to replace common UNIX commands in
4995 cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv
4996 source... destination, cp source... destination, chmod mode files.., mkpath
4997 directory.., test_f file
5005 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
5015 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
5016 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
5024 =head2 ExtUtils::Install - install files from here to there
5030 =head2 ExtUtils::Installed - Inventory management of installed modules
5040 new(), modules(), files(), directories(), directory_tree(), validate(),
5041 packlist(), version()
5047 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
5053 For static extensions, For dynamic extensions, For dynamic extensions
5059 =item LDLOADLIBS and LD_RUN_PATH
5069 =item VMS implementation
5071 =item Win32 implementation
5077 =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in
5084 canonpath, cflags, manifypods, perl_archive
5086 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
5093 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
5103 =item Preloaded methods
5105 canonpath, catdir, catfile, curdir, rootdir, updir
5107 =item SelfLoaded methods
5109 c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
5110 const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
5111 dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
5112 dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
5113 extliblist, file_name_is_absolute, find_perl
5115 =item Methods to actually produce chunks of text for the Makefile
5117 fixin, force (o), guess_name, has_link_code, init_dirscan, init_main,
5118 init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir,
5119 macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command,
5120 maybe_command_in_dirs, needs_linking (o), nicetext, parse_version,
5121 parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd,
5122 perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize
5123 (o), postamble (o), prefixify, processPL (o), realclean (o),
5124 replace_manpage_separator, static (o), static_lib (o), staticmake (o),
5125 subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
5126 (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
5127 writedoc, xs_c (o), xs_cpp (o), xs_o (o), perl_archive, export_list
5133 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
5142 =item Methods always loaded
5144 eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
5145 rootdir (override), updir (override)
5147 =item SelfLoaded methods
5149 guess_name (override), find_perl (override), path (override), maybe_command
5150 (override), maybe_command_in_dirs (override), perl_script (override),
5151 file_name_is_absolute (override), replace_manpage_separator, init_others
5152 (override), constants (override), cflags (override), const_cccmd
5153 (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
5154 (override), xsubpp_version (override), tools_other (override), dist
5155 (override), c_o (override), xs_c (override), xs_o (override), top_targets
5156 (override), dlsyms (override), dynamic_lib (override), dynamic_bs
5157 (override), static_lib (override), manifypods (override), processPL
5158 (override), installbin (override), subdir_x (override), clean (override),
5159 realclean (override), dist_basics (override), dist_core (override),
5160 dist_dir (override), dist_test (override), install (override), perldepend
5161 (override), makefile (override), test (override), test_via_harness
5162 (override), test_via_script (override), makeaperl (override), nicetext
5167 =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in
5174 catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o),
5175 canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit
5176 (override), tools_other (o), xs_o (o), top_targets (o), manifypods (o),
5177 dist_ci (o), dist_core (o), pasthru (o)
5179 =head2 ExtUtils::MakeMaker - create an extension Makefile
5187 =item How To Write A Makefile.PL
5189 =item Default Makefile Behaviour
5197 =item PREFIX and LIB attribute
5201 =item Static Linking of a new Perl Binary
5203 =item Determination of Perl Library and Installation Locations
5205 =item Which architecture dependent directory?
5207 =item Using Attributes and Parameters
5209 AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG,
5210 CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT,
5211 EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, IMPORTS, INC,
5212 INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
5213 INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITEARCH,
5214 INSTALLSITELIB, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
5215 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE,
5216 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
5217 NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
5218 PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM,
5219 PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX,
5220 PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG,
5223 =item Additional lowercase attributes
5225 clean, depend, dist, dynamic_lib, linkext, macro, realclean, test,
5228 =item Overriding MakeMaker Methods
5230 =item Hintsfile support
5232 =item Distribution Support
5234 make distcheck, make skipcheck, make distclean, make manifest,
5235 make distdir, make tardist, make dist, make uutardist, make
5236 shdist, make zipdist, make ci
5238 =item Disabling an extension
5250 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
5260 =item GLOBAL VARIABLES
5264 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
5265 C<Added to MANIFEST:> I<file>
5271 =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
5279 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
5285 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
5292 DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME
5298 =head2 ExtUtils::Packlist - manage .packlist files
5308 new(), read(), write(), validate(), packlist_file()
5314 =head2 ExtUtils::testlib - add blib/* directories to @INC
5320 =head2 Fatal - replace functions with equivalents which succeed or die
5328 =head2 Fcntl - load the C Fcntl.h defines
5336 =item EXPORTED SYMBOLS
5338 =head2 File::Basename, fileparse - split a pathname into pieces
5344 fileparse_set_fstype, fileparse
5348 C<basename>, C<dirname>
5350 =head2 File::CheckTree, validate - run many filetest checks on a tree
5356 =head2 File::Compare - Compare files or filehandles
5366 =head2 File::Copy - Copy files or filehandles
5374 =item Special behaviour if C<syscopy> is defined (OS/2, VMS and Win32)
5376 rmscopy($from,$to[,$date_flag])
5384 =head2 File::DosGlob - DOS like globbing and then some
5390 =item EXPORTS (by request only)
5400 =head2 File::Find, find - traverse a file tree
5408 =head2 File::Path - create or remove a series of directories
5416 =head2 File::Spec - portably perform operations on file names
5426 =head2 File::Spec::Functions - portably perform operations on file names
5440 =head2 File::Spec::Mac - File::Spec for MacOS
5448 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5449 file_name_is_absolute, path
5453 =head2 File::Spec::OS2 - methods for OS/2 file specs
5459 =head2 File::Spec::Unix - methods used by File::Spec
5467 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5468 no_upwards, file_name_is_absolute, path, join, splitpath, splitdir,
5469 catpath, abs2rel, rel2abs
5473 =head2 File::Spec::VMS - methods for VMS file specs
5481 =item Methods always loaded
5483 catdir, catfile, curdir (override), devnull (override), rootdir (override),
5484 tmpdir (override), updir (override), path (override), file_name_is_absolute
5491 =head2 File::Spec::Win32 - methods for Win32 file specs
5497 devnull, tmpdir, catfile, canonpath, splitpath, splitdir, catpath, abs2rel,
5502 =head2 File::stat - by-name interface to Perl's built-in stat() functions
5512 =head2 FileCache - keep more files open than the system permits
5520 =head2 FileHandle - supply object methods for filehandles
5526 $fh->print, $fh->printf, $fh->getline, $fh->getlines
5530 =head2 FindBin - Locate directory of original perl script
5536 =item EXPORTABLE VARIABLES
5544 =head2 GDBM_File - Perl5 access to the gdbm library.
5556 =head2 Getopt::Long, GetOptions - extended processing of command line
5567 =item Linkage specification
5569 =item Aliases and abbreviations
5571 =item Non-option call-back routine
5573 =item Option starters
5575 =item Return values and Errors
5583 =item CONFIGURATION OPTIONS
5585 default, auto_abbrev, getopt_compat, require_order, permute, bundling
5586 (default: reset), bundling_override (default: reset), ignore_case
5587 (default: set), ignore_case_always (default: reset), pass_through (default:
5588 reset), prefix, prefix_pattern, debug (default: reset)
5590 =item OTHER USEFUL VARIABLES
5592 $Getopt::Long::VERSION, $Getopt::Long::error
5596 =item COPYRIGHT AND DISCLAIMER
5598 =head2 Getopt::Std, getopt - Process single-character switches with switch
5605 =head2 I18N::Collate - compare 8-bit scalar data according to the current
5612 =head2 IO - load various IO modules
5618 =head2 IO::Dir - supply object methods for directory handles
5624 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
5625 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
5633 =head2 IO::File - supply object methods for filehandles
5641 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
5645 open( FILENAME [,MODE [,PERMS]] )
5651 =head2 IO::Handle - supply object methods for I/O handles
5659 new (), new_from_fd ( FD, MODE )
5663 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
5664 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
5665 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
5666 $io->blocking ( [ BOOL ] ), $io->untaint
5676 =head2 IO::Pipe - supply object methods for pipes
5684 new ( [READER, WRITER] )
5688 reader ([ARGS]), writer ([ARGS]), handles ()
5696 =head2 IO::Poll - Object interface to system poll call
5704 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
5705 IO ), handles( [ EVENT_MASK ] )
5713 =head2 IO::Seekable - supply seek based methods for I/O objects
5723 =head2 IO::Select - OO interface to the select system call
5735 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
5736 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
5737 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
5745 =head2 IO::Socket - Object interface to socket communications
5757 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
5766 =head2 IO::Socket::INET - Object interface for AF_INET domain sockets
5780 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
5791 =head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets
5803 hostpath(), peerpath()
5811 =head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory
5818 new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (),
5819 rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ]
5827 =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
5835 new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
5839 open( FILENAME [,MODE [,PERMS]] )
5845 =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
5854 new (), new_from_fd ( FD, MODE )
5858 $io->fdopen ( FD, MODE ), $io->opened, $io->getline, $io->getlines,
5859 $io->ungetc ( ORD ), $io->write ( BUF, LEN [, OFFSET ] ), $io->error,
5860 $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ),
5861 $io->blocking ( [ BOOL ] ), $io->untaint
5871 =head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes
5879 new ( [READER, WRITER] )
5883 reader ([ARGS]), writer ([ARGS]), handles ()
5891 =head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call
5899 mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove (
5900 IO ), handles( [ EVENT_MASK ] )
5908 =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
5919 =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
5932 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
5933 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ),
5934 count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
5942 =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
5955 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
5964 =head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for
5965 AF_INET domain sockets
5979 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
5990 =head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for
5991 AF_UNIX domain sockets
6003 hostpath(), peerpath()
6011 =head2 IPC::Msg - SysV Msg IPC object class
6019 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
6020 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
6029 =head2 IPC::Open2, open2 - open a process for both reading and writing
6039 =head2 IPC::Open3, open3 - open a process for reading, writing, and error
6048 =head2 IPC::Semaphore - SysV Semaphore IPC object class
6056 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
6057 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
6058 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
6067 =head2 IPC::SysV - SysV IPC constants
6081 =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class
6089 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
6090 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
6099 =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object
6108 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
6109 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
6110 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
6119 =head2 Math::BigFloat - Arbitrary length float math package
6125 number format, Error returns 'NaN', Division is computed to, Rounding is
6132 =head2 Math::BigInt - Arbitrary size integer math package
6138 Canonical notation, Input, Output
6142 =item Autocreating constants
6148 =head2 Math::Complex - complex numbers and associated mathematical
6159 =item STRINGIFICATION
6163 =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
6165 =item ERRORS DUE TO INDIGESTIBLE ARGUMENTS
6171 =head2 Math::Trig - trigonometric functions
6177 =item TRIGONOMETRIC FUNCTIONS
6183 =item ERRORS DUE TO DIVISION BY ZERO
6185 =item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS
6189 =item PLANE ANGLE CONVERSIONS
6191 =item RADIAL COORDINATE CONVERSIONS
6195 =item COORDINATE SYSTEMS
6197 =item 3-D ANGLE CONVERSIONS
6199 cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian,
6200 cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
6204 =item GREAT CIRCLE DISTANCES
6212 =head2 NDBM_File - Tied access to ndbm files
6218 =head2 Net::Ping - check a remote host for reachability
6228 Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
6229 $timeout]);, $p->close();, pingecho($host [, $timeout]);
6237 =head2 Net::hostent - by-name interface to Perl's built-in gethost*()
6250 =head2 Net::netent - by-name interface to Perl's built-in getnet*()
6263 =head2 Net::protoent - by-name interface to Perl's built-in getproto*()
6274 =head2 Net::servent - by-name interface to Perl's built-in getserv*()
6287 =head2 O - Generic interface to Perl Compiler backends
6295 =item IMPLEMENTATION
6299 =head2 ODBM_File - Tied access to odbm files
6305 =head2 Opcode - Disable named opcodes when compiling perl code
6315 =item Operator Names and Operator Lists
6317 an operator name (opname), an operator tag name (optag), a negated opname
6318 or optag, an operator set (opset)
6320 =item Opcode Functions
6322 opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
6323 full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
6324 define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
6327 =item Manipulating Opsets
6331 =item Predefined Opcode Tags
6333 :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
6334 :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open,
6335 :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided,
6342 =head2 Opcode::Safe, Safe - Compile and execute code in restricted
6349 a new namespace, an operator mask
6355 =item RECENT CHANGES
6357 =item Methods in class Safe
6359 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
6360 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
6361 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
6362 root (NAMESPACE), mask (MASK)
6364 =item Some Safety Issues
6366 Memory, CPU, Snooping, Signals, State Changes
6372 =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
6381 =head2 POSIX - Perl interface to IEEE Std 1003.1
6393 _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
6394 atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
6395 clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
6396 cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
6397 execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
6398 fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
6399 fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
6400 fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
6401 getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
6402 getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
6403 iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
6404 isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
6405 longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
6406 memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
6407 opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
6408 qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
6409 rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
6410 setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
6411 sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
6412 strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
6413 strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr,
6414 strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh,
6415 tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times,
6416 tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname,
6417 ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid,
6418 wcstombs, wctomb, write
6424 =item POSIX::SigAction
6430 new, addset, delset, emptyset, fillset, ismember
6432 =item POSIX::Termios
6434 new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
6435 getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
6436 setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
6437 field values, c_cflag field values, c_iflag field values, c_lflag field
6438 values, c_oflag field values
6442 =item PATHNAME CONSTANTS
6446 =item POSIX CONSTANTS
6450 =item SYSTEM CONFIGURATION
6508 =head2 Pod::Checker, podchecker() - check pod documents for syntax errors
6512 =item OPTIONS/ARGUMENTS
6520 =head2 Pod::Html - module to convert pod files to HTML
6528 help, htmldir, htmlroot, infile, outfile, podroot, podpath, libpods,
6529 netscape, nonetscape, index, noindex, recurse, norecurse, title, verbose
6541 =head2 Pod::InputObjects - objects representing POD input paragraphs,
6552 B<Pod::InputSource>, B<Pod::Paragraph>, B<Pod::InteriorSequence>,
6555 =item B<Pod::InputSource>
6565 =item B<was_cutting()>
6569 =item B<Pod::Paragraph>
6581 =item B<cmd_prefix()>
6583 =item B<cmd_separator()>
6585 =item B<parse_tree()>
6587 =item B<file_line()>
6591 =item B<Pod::InteriorSequence>
6607 =item B<left_delimiter()>
6609 =item B<right_delimiter()>
6611 =item B<parse_tree()>
6613 =item B<file_line()>
6619 =item B<Pod::ParseTree>
6643 =head2 Pod::Parser - base class for creating POD filters and translators
6653 =item QUICK OVERVIEW
6655 =item RECOMMENDED SUBROUTINE/METHOD OVERRIDES
6659 C<$cmd>, C<$text>, C<$line_num>, C<$pod_para>
6663 C<$text>, C<$line_num>, C<$pod_para>
6665 =item B<textblock()>
6667 C<$text>, C<$line_num>, C<$pod_para>
6669 =item B<interior_sequence()>
6671 =item OPTIONAL SUBROUTINE/METHOD OVERRIDES
6675 =item B<initialize()>
6677 =item B<begin_pod()>
6679 =item B<begin_input()>
6681 =item B<end_input()>
6685 =item B<preprocess_line()>
6687 =item B<preprocess_paragraph()>
6689 =item METHODS FOR PARSING AND PROCESSING
6691 =item B<parse_text()>
6693 B<-expand_seq> =E<gt> I<code-ref>|I<method-name>, B<-expand_ptree> =E<gt>
6694 I<code-ref>|I<method-name>
6696 =item B<interpolate()>
6698 =item B<parse_paragraph()>
6700 =item B<parse_from_filehandle()>
6702 =item B<parse_from_file()>
6704 =item ACCESSOR METHODS
6708 =item B<output_file()>
6710 =item B<output_handle()>
6712 =item B<input_file()>
6714 =item B<input_handle()>
6716 =item B<input_streams()>
6718 =item B<top_stream()>
6720 =item PRIVATE METHODS AND DATA
6722 =item B<_push_input_stream()>
6724 =item B<_pop_input_stream()>
6730 =head2 Pod::PlainText, pod2plaintext - function to convert POD data to
6731 formatted ASCII text
6745 =head2 Pod::Select, podselect() - extract selected sections of POD from
6756 =item SECTION SPECIFICATIONS
6758 =item RANGE SPECIFICATIONS
6760 =item OBJECT METHODS
6762 =item B<curr_headings()>
6766 =item B<add_selection()>
6768 =item B<clear_selections()>
6770 =item B<match_section()>
6772 =item B<is_selected()>
6774 =item EXPORTED FUNCTIONS
6776 =item B<podselect()>
6778 B<-output>, B<-sections>, B<-ranges>
6780 =item PRIVATE METHODS AND DATA
6782 =item B<_compile_section_spec()>
6786 =item $self->{_SECTION_HEADINGS}
6788 =item $self->{_SELECTED_SECTIONS}
6796 =head2 Pod::Text - convert POD data to formatted ASCII text
6806 =head2 Pod::Usage, pod2usage() - print a usage message from embedded pod
6813 C<-message>, C<-msg>, C<-exitval>, C<-verbose>, C<-output>, C<-input>,
6822 =item Recommended Use
6830 =item ACKNOWLEDGEMENTS
6832 =head2 SDBM_File - Tied access to sdbm files
6838 =head2 Safe - Compile and execute code in restricted compartments
6844 a new namespace, an operator mask
6850 =item RECENT CHANGES
6852 =item Methods in class Safe
6854 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
6855 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
6856 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
6857 root (NAMESPACE), mask (MASK)
6859 =item Some Safety Issues
6861 Memory, CPU, Snooping, Signals, State Changes
6867 =head2 Search::Dict, look - search for key in dictionary file
6873 =head2 SelectSaver - save and restore selected file handle
6879 =head2 SelfLoader - load functions only on demand
6887 =item The __DATA__ token
6889 =item SelfLoader autoloading
6891 =item Autoloading and package lexicals
6893 =item SelfLoader and AutoLoader
6895 =item __DATA__, __END__, and the FOOBAR::DATA filehandle.
6897 =item Classes and inherited methods.
6901 =item Multiple packages and fully qualified subroutine names
6903 =head2 Shell - run shell commands transparently within perl
6911 =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
6912 socket.h defines and structure manipulators
6918 inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
6919 INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
6920 SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
6921 SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
6922 pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
6924 =head2 Symbol - manipulate Perl symbols and their names
6930 =head2 Sys::Hostname - Try every conceivable way to get hostname
6938 =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
6939 interface to the UNIX syslog(3) calls
6945 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
6946 setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02),
6957 =head2 Term::Cap - Perl termcap interface
6965 =head2 Term::Complete - Perl word completion module
6971 E<lt>tabE<gt>, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
6979 =head2 Term::ReadLine - Perl interface to various C<readline> packages. If
6980 no real package is found, substitutes stubs instead of basic functions.
6986 =item Minimal set of supported functions
6988 C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
6989 C<MinLine>, C<findConsole>, Attribs, C<Features>
6991 =item Additional supported functions
6993 C<tkRunning>, C<ornaments>, C<newTTY>
6999 =head2 Test - provides a simple framework for writing test scripts
7007 NORMAL TESTS, SKIPPED TESTS, TODO TESTS
7017 =head2 Test::Harness - run perl standard test scripts with statistics
7025 =item The test script output
7033 C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
7034 %s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
7035 %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
7046 =head2 Text::Abbrev, abbrev - create an abbreviation table from a list
7054 =head2 Text::ParseWords - parse text into an array of tokens or array of
7063 0a simple word, 1multiple spaces are skipped because of our $delim, 2use of
7064 quotes to include a space in a word, 3use of a backslash to include a space
7065 in a word, 4use of a backslash to remove the special meaning of a
7066 double-quote, 5another simple word (note the lack of effect of the
7067 backslashed double-quote)
7071 =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
7084 =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
7095 =head2 Text::Wrap - line wrapping to form simple paragraphs
7105 =head2 Thread - multithreading
7113 new \&start_sub, new \&start_sub, LIST, lock VARIABLE, async BLOCK;,
7114 Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE,
7115 cond_broadcast VARIABLE, yield
7119 join, eval, detach, equal, tid
7125 =head2 Thread::Queue - thread-safe queues
7131 =item FUNCTIONS AND METHODS
7133 new, enqueue LIST, dequeue, dequeue_nb, pending
7137 =head2 Thread::Semaphore - thread-safe semaphores
7143 =item FUNCTIONS AND METHODS
7145 new, new NUMBER, down, down NUMBER, up, up NUMBER
7147 =head2 Thread::Signal - Start a thread which runs signal handlers reliably
7155 =head2 Thread::Specific - thread-specific keys
7161 =head2 Tie::Array - base class for tied arrays
7167 TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index,
7168 FETCHSIZE this, STORESIZE this, count, EXTEND this, count, CLEAR this,
7169 DESTROY this, PUSH this, LIST, POP this, SHIFT this, UNSHIFT this, LIST,
7170 SPLICE this, offset, length, LIST
7176 =head2 Tie::Handle, Tie::StdHandle - base class definitions for tied
7183 TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this,
7184 LIST, PRINTF this, format, LIST, READ this, scalar, length, offset,
7185 READLINE this, GETC this, CLOSE this, OPEN this, filename, BINMODE this,
7186 EOF this, TELL this, SEEK this, offset, whence, DESTROY this
7188 =item MORE INFORMATION
7190 =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
7196 TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
7197 this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
7201 =item MORE INFORMATION
7203 =head2 Tie::RefHash - use references as hash keys
7217 =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
7224 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
7226 =item MORE INFORMATION
7228 =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
7236 =head2 Time::Local - efficiently compute time from local and GMT time
7242 =item IMPLEMENTATION
7246 =head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
7257 =head2 Time::localtime - by-name interface to Perl's built-in localtime()
7268 =head2 Time::tm - internal object used by Time::gmtime and Time::localtime
7276 =head2 UNIVERSAL - base class for ALL classes (blessed references)
7282 isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa (
7283 VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD )
7285 =head2 User::grent - by-name interface to Perl's built-in getgr*()
7296 =head2 User::pwent - by-name interface to Perl's built-in getpw*()
7307 =head1 AUXILIARY DOCUMENTATION
7309 Here should be listed all the extra programs' documentation, but they
7310 don't all have manual pages yet:
7332 Larry Wall <F<larry@wall.org>>, with the help of oodles