This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
5842f18250a5bb06b7c7815cd6b6a0b18ed5fe88
[perl5.git] / pod / perltoc.pod
1
2 =head1 NAME
3
4 perltoc - perl documentation table of contents
5
6 =head1 DESCRIPTION
7
8 This page provides a brief table of contents for the rest of the Perl
9 documentation set.  It is meant to be scanned quickly or grepped
10 through to locate the proper section you're looking for.
11
12 =head1 BASIC DOCUMENTATION
13
14 =head2 perl - Practical Extraction and Report Language
15
16 =item SYNOPSIS
17
18 =item DESCRIPTION
19
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
29
30 =item AVAILABILITY
31
32 =item ENVIRONMENT
33
34 =item AUTHOR
35
36 =item FILES
37
38 =item SEE ALSO
39
40 =item DIAGNOSTICS
41
42 =item BUGS
43
44 =item NOTES
45
46 =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
47 20:38:02 $)
48
49 =item DESCRIPTION
50
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
266 Perl?
267
268 =over
269
270 =item Where to get this document
271
272 =item How to contribute to this document
273
274 =item What will happen if you mail your Perl programming problems to the
275 authors
276
277 =back
278
279 =item Credits
280
281 =item Author and Copyright Information
282
283 =over
284
285 =item Bundled Distributions
286
287 =item Disclaimer
288
289 =back
290
291 =item Changes
292
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
295
296 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date:
297 1999/05/23 16:08:30 $)
298
299 =item DESCRIPTION
300
301 =over
302
303 =item What is Perl?
304
305 =item Who supports Perl?  Who develops it?  Why is it free?
306
307 =item Which version of Perl should I use?
308
309 =item What are perl4 and perl5?
310
311 =item What is perl6?
312
313 =item How stable is Perl?
314
315 =item Is Perl difficult to learn?
316
317 =item How does Perl compare with other languages like Java, Python, REXX,
318 Scheme, or Tcl?
319
320 =item Can I do [task] in Perl?
321
322 =item When shouldn't I program in Perl?
323
324 =item What's the difference between "perl" and "Perl"?
325
326 =item Is it a Perl program or a Perl script?
327
328 =item What is a JAPH?
329
330 =item Where can I get a list of Larry Wall witticisms?
331
332 =item How can I convince my sysadmin/supervisor/employees to use version
333 (5/5.005/Perl instead of some other language)?
334
335 =back
336
337 =item AUTHOR AND COPYRIGHT
338
339 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.31 $,
340 $Date: 1999/04/14 03:46:19 $)
341
342 =item DESCRIPTION
343
344 =over
345
346 =item What machines support Perl?  Where do I get it?
347
348 =item How can I get a binary version of Perl?
349
350 =item I don't have a C compiler on my system.  How can I compile perl?
351
352 =item I copied the Perl binary from one machine to another, but scripts
353 don't work.
354
355 =item I grabbed the sources and tried to compile but gdbm/dynamic
356 loading/malloc/linking/... failed.  How do I make it work?
357
358 =item What modules and extensions are available for Perl?  What is CPAN? 
359 What does CPAN/src/... mean?
360
361 =item Is there an ISO or ANSI certified version of Perl?
362
363 =item Where can I get information on Perl?
364
365 =item What are the Perl newsgroups on USENET?  Where do I post questions?
366
367 =item Where should I post source code?
368
369 =item Perl Books
370
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
375
376 =item Perl in Magazines
377
378 =item Perl on the Net: FTP and WWW Access
379
380 =item What mailing lists are there for perl?
381
382 =item Archives of comp.lang.perl.misc
383
384 =item Where can I buy a commercial version of Perl?
385
386 =item Where do I send bug reports?
387
388 =item What is perl.com?  
389
390 =back
391
392 =item AUTHOR AND COPYRIGHT
393
394 =head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23
395 16:08:30 $)
396
397 =item DESCRIPTION
398
399 =over
400
401 =item How do I do (anything)?
402
403 =item How can I use Perl interactively?
404
405 =item Is there a Perl shell?
406
407 =item How do I debug my Perl programs?
408
409 =item How do I profile my Perl programs?
410
411 =item How do I cross-reference my Perl programs?
412
413 =item Is there a pretty-printer (formatter) for Perl?
414
415 =item Is there a ctags for Perl?
416
417 =item Is there an IDE or Windows Perl Editor?
418
419 =item Where can I get Perl macros for vi?
420
421 =item Where can I get perl-mode for emacs?
422
423 =item How can I use curses with Perl?
424
425 =item How can I use X or Tk with Perl?
426
427 =item How can I generate simple menus without using CGI or Tk?
428
429 =item What is undump?
430
431 =item How can I make my Perl program run faster?
432
433 =item How can I make my Perl program take less memory?
434
435 =item Is it unsafe to return a pointer to local data?
436
437 =item How can I free an array or hash so my program shrinks?
438
439 =item How can I make my CGI script more efficient?
440
441 =item How can I hide the source for my Perl program?
442
443 =item How can I compile my Perl program into byte code or C?
444
445 =item How can I compile Perl into Java?
446
447 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
448
449 =item Can I write useful perl programs on the command line?
450
451 =item Why don't perl one-liners work on my DOS/Mac/VMS system?
452
453 =item Where can I learn about CGI or Web programming in Perl?
454
455 =item Where can I learn about object-oriented Perl programming?
456
457 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
458
459 =item I've read perlembed, perlguts, etc., but I can't embed perl in
460 my C program, what am I doing wrong?
461
462 =item When I tried to run my script, I got this message. What does it
463 mean?
464
465 =item What's MakeMaker?
466
467 =back
468
469 =item AUTHOR AND COPYRIGHT
470
471 =head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23
472 20:37:49 $)
473
474 =item DESCRIPTION
475
476 =item Data: Numbers
477
478 =over
479
480 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
481 numbers I should be getting (eg, 19.95)?
482
483 =item Why isn't my octal data interpreted correctly?
484
485 =item Does Perl have a round() function?  What about ceil() and floor()? 
486 Trig functions?
487
488 =item How do I convert bits into ints?
489
490 =item Why doesn't & work the way I want it to?
491
492 =item How do I multiply matrices?
493
494 =item How do I perform an operation on a series of integers?
495
496 =item How can I output Roman numerals?
497
498 =item Why aren't my random numbers random?
499
500 =back
501
502 =item Data: Dates
503
504 =over
505
506 =item How do I find the week-of-the-year/day-of-the-year?
507
508 =item How do I find the current century or millennium?
509
510 =item How can I compare two dates and find the difference?
511
512 =item How can I take a string and turn it into epoch seconds?
513
514 =item How can I find the Julian Day?
515
516 =item How do I find yesterday's date?
517
518 =item Does Perl have a year 2000 problem?  Is Perl Y2K compliant?
519
520 =back
521
522 =item Data: Strings
523
524 =over
525
526 =item How do I validate input?
527
528 =item How do I unescape a string?
529
530 =item How do I remove consecutive pairs of characters?
531
532 =item How do I expand function calls in a string?
533
534 =item How do I find matching/nesting anything?
535
536 =item How do I reverse a string?
537
538 =item How do I expand tabs in a string?
539
540 =item How do I reformat a paragraph?
541
542 =item How can I access/change the first N letters of a string?
543
544 =item How do I change the Nth occurrence of something?
545
546 =item How can I count the number of occurrences of a substring within a
547 string?
548
549 =item How do I capitalize all the words on one line?
550
551 =item How can I split a [character] delimited string except when inside
552 [character]? (Comma-separated files)
553
554 =item How do I strip blank space from the beginning/end of a string?
555
556 =item How do I pad a string with blanks or pad a number with zeroes?
557
558 =item How do I extract selected columns from a string?
559
560 =item How do I find the soundex value of a string?
561
562 =item How can I expand variables in text strings?
563
564 =item What's wrong with always quoting "$vars"?
565
566 =item Why don't my E<lt>E<lt>HERE documents work?
567
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
570 the tag
571
572 =back
573
574 =item Data: Arrays
575
576 =over
577
578 =item What is the difference between a list and an array?
579
580 =item What is the difference between $array[1] and @array[1]?
581
582 =item How can I remove duplicate elements from a list or array?
583
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
588 integers:
589
590 =item How can I tell whether a list or array contains a certain element?
591
592 =item How do I compute the difference of two arrays?  How do I compute the
593 intersection of two arrays?
594
595 =item How do I test whether two arrays or hashes are equal?
596
597 =item How do I find the first array element for which a condition is true?
598
599 =item How do I handle linked lists?
600
601 =item How do I handle circular lists?
602
603 =item How do I shuffle an array randomly?
604
605 =item How do I process/modify each element of an array?
606
607 =item How do I select a random element from an array?
608
609 =item How do I permute N elements of a list?
610
611 =item How do I sort an array by (anything)?
612
613 =item How do I manipulate arrays of bits?
614
615 =item Why does defined() return true on empty arrays and hashes?
616
617 =back
618
619 =item Data: Hashes (Associative Arrays)
620
621 =over
622
623 =item How do I process an entire hash?
624
625 =item What happens if I add or remove keys from a hash while iterating over
626 it?
627
628 =item How do I look up a hash element by value?
629
630 =item How can I know how many entries are in a hash?
631
632 =item How do I sort a hash (optionally by value instead of key)?
633
634 =item How can I always keep my hash sorted?
635
636 =item What's the difference between "delete" and "undef" with hashes?
637
638 =item Why don't my tied hashes make the defined/exists distinction?
639
640 =item How do I reset an each() operation part-way through?
641
642 =item How can I get the unique keys from two hashes?
643
644 =item How can I store a multidimensional array in a DBM file?
645
646 =item How can I make my hash remember the order I put elements into it?
647
648 =item Why does passing a subroutine an undefined element in a hash create
649 it?
650
651 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
652 array of hashes or arrays?
653
654 =item How can I use a reference as a hash key?
655
656 =back
657
658 =item Data: Misc
659
660 =over
661
662 =item How do I handle binary data correctly?
663
664 =item How do I determine whether a scalar is a number/whole/integer/float?
665
666 =item How do I keep persistent data across program calls?
667
668 =item How do I print out or copy a recursive data structure?
669
670 =item How do I define methods for every class/object?
671
672 =item How do I verify a credit card checksum?
673
674 =item How do I pack arrays of doubles or floats for XS code?
675
676 =back
677
678 =item AUTHOR AND COPYRIGHT
679
680 =head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23
681 16:08:30 $)
682
683 =item DESCRIPTION
684
685 =over
686
687 =item How do I flush/unbuffer an output filehandle?  Why must I do this?
688
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?
691
692 =item How do I count the number of lines in a file?
693
694 =item How do I make a temporary file name?
695
696 =item How can I manipulate fixed-record-length files?
697
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?
700
701 =item How can I use a filehandle indirectly?
702
703 =item How can I set up a footer format to be used with write()?
704
705 =item How can I write() into a string?
706
707 =item How can I output my numbers with commas added?
708
709 =item How can I translate tildes (~) in a filename?
710
711 =item How come when I open a file read-write it wipes it out?
712
713 =item Why do I sometimes get an "Argument list too long" when I use
714 E<lt>*E<gt>?
715
716 =item Is there a leak/bug in glob()?
717
718 =item How can I open a file with a leading "E<gt>" or trailing blanks?
719
720 =item How can I reliably rename a file?
721
722 =item How can I lock a file?
723
724 =item Why can't I just open(FH, ">file.lock")?
725
726 =item I still don't get locking.  I just want to increment the number in
727 the file.  How can I do this?
728
729 =item How do I randomly update a binary file?
730
731 =item How do I get a file's timestamp in perl?
732
733 =item How do I set a file's timestamp in perl?
734
735 =item How do I print to more than one file at once?
736
737 =item How can I read in an entire file all at once?
738
739 =item How can I read in a file by paragraphs?
740
741 =item How can I read a single character from a file?  From the keyboard?
742
743 =item How can I tell whether there's a character waiting on a filehandle?
744
745 =item How do I do a C<tail -f> in perl?
746
747 =item How do I dup() a filehandle in Perl?
748
749 =item How do I close a file descriptor by number?
750
751 =item Why can't I use "C:\temp\foo" in DOS paths?  What doesn't
752 `C:\temp\foo.exe` work?
753
754 =item Why doesn't glob("*.*") get all the files?
755
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?
758
759 =item How do I select a random line from a file?
760
761 =item Why do I get weird spaces when I print an array of lines?
762
763 =back
764
765 =item AUTHOR AND COPYRIGHT
766
767 =head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $)
768
769 =item DESCRIPTION
770
771 =over
772
773 =item How can I hope to use regular expressions without creating illegible
774 and unmaintainable code?
775
776 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
777
778 =item I'm having trouble matching over more than one line.  What's wrong?
779
780 =item How can I pull out lines between two patterns that are themselves on
781 different lines?
782
783 =item I put a regular expression into $/ but it didn't work. What's wrong?
784
785 =item How do I substitute case insensitively on the LHS, but preserving
786 case on the RHS?
787
788 =item How can I make C<\w> match national character sets?
789
790 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
791
792 =item How can I quote a variable to use in a regex?
793
794 =item What is C</o> really for?
795
796 =item How do I use a regular expression to strip C style comments from a
797 file?
798
799 =item Can I use Perl regular expressions to match balanced text?
800
801 =item What does it mean that regexes are greedy?  How can I get around it?
802
803 =item  How do I process each word on each line?
804
805 =item How can I print out a word-frequency or line-frequency summary?
806
807 =item How can I do approximate matching?
808
809 =item How do I efficiently match many regular expressions at once?
810
811 =item Why don't word-boundary searches with C<\b> work for me?
812
813 =item Why does using $&, $`, or $' slow my program down?
814
815 =item What good is C<\G> in a regular expression?
816
817 =item Are Perl regexes DFAs or NFAs?  Are they POSIX compliant?
818
819 =item What's wrong with using grep or map in a void context?
820
821 =item How can I match strings with multibyte characters?
822
823 =item How do I match a pattern that is supplied by the user?
824
825 =back
826
827 =item AUTHOR AND COPYRIGHT
828
829 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date:
830 1999/05/23 20:36:18 $)
831
832 =item DESCRIPTION
833
834 =over
835
836 =item Can I get a BNF/yacc/RE for the Perl language?
837
838 =item What are all these $@%&* punctuation signs, and how do I know when to
839 use them?
840
841 =item Do I always/never have to quote my strings or use semicolons and
842 commas?
843
844 =item How do I skip some return values?
845
846 =item How do I temporarily block warnings?
847
848 =item What's an extension?
849
850 =item Why do Perl operators have different precedence than C operators?
851
852 =item How do I declare/create a structure?
853
854 =item How do I create a module?
855
856 =item How do I create a class?
857
858 =item How can I tell if a variable is tainted?
859
860 =item What's a closure?
861
862 =item What is variable suicide and how can I prevent it?
863
864 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
865 Regex}?
866
867 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
868 Passing Methods
869
870 =item How do I create a static variable?
871
872 =item What's the difference between dynamic and lexical (static) scoping? 
873 Between local() and my()?
874
875 =item How can I access a dynamic variable while a similarly named lexical
876 is in scope?
877
878 =item What's the difference between deep and shallow binding?
879
880 =item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?
881
882 =item How do I redefine a builtin function, operator, or method?
883
884 =item What's the difference between calling a function as &foo and foo()?
885
886 =item How do I create a switch or case statement?
887
888 =item How can I catch accesses to undefined variables/functions/methods?
889
890 =item Why can't a method included in this same file be found?
891
892 =item How can I find out my current package?
893
894 =item How can I comment out a large block of perl code?
895
896 =item How do I clear a package?
897
898 =item How can I use a variable as a variable name?
899
900 =back
901
902 =item AUTHOR AND COPYRIGHT
903
904 =head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23
905 18:37:57 $)
906
907 =item DESCRIPTION
908
909 =over
910
911 =item How do I find out which operating system I'm running under?
912
913 =item How come exec() doesn't return?
914
915 =item How do I do fancy stuff with the keyboard/screen/mouse?
916
917 Keyboard, Screen, Mouse
918
919 =item How do I print something out in color?
920
921 =item How do I read just one key without waiting for a return key?
922
923 =item How do I check whether input is ready on the keyboard?
924
925 =item How do I clear the screen?
926
927 =item How do I get the screen size?
928
929 =item How do I ask the user for a password?
930
931 =item How do I read and write the serial port?
932
933 lockfiles, open mode, end of line, flushing output, non-blocking input
934
935 =item How do I decode encrypted password files?
936
937 =item How do I start a process in the background?
938
939 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
940
941 =item How do I trap control characters/signals?
942
943 =item How do I modify the shadow password file on a Unix system?
944
945 =item How do I set the time and date?
946
947 =item How can I sleep() or alarm() for under a second?
948
949 =item How can I measure time under a second?
950
951 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
952
953 =item Why doesn't my sockets program work under System V (Solaris)? What
954 does the error message "Protocol not supported" mean?
955
956 =item How can I call my system's unique C functions from Perl?
957
958 =item Where do I get the include files to do ioctl() or syscall()?
959
960 =item Why do setuid perl scripts complain about kernel problems?
961
962 =item How can I open a pipe both to and from a command?
963
964 =item Why can't I get the output of a command with system()?
965
966 =item How can I capture STDERR from an external command?
967
968 =item Why doesn't open() return an error when a pipe open fails?
969
970 =item What's wrong with using backticks in a void context?
971
972 =item How can I call backticks without shell processing?
973
974 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
975 ^Z on MS-DOS)?
976
977 =item How can I convert my shell script to perl?
978
979 =item Can I use perl to run a telnet or ftp session?
980
981 =item How can I write expect in Perl?
982
983 =item Is there a way to hide perl's command line from programs such as
984 "ps"?
985
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?
989
990 Unix
991
992 =item How do I close a process's filehandle without waiting for it to
993 complete?
994
995 =item How do I fork a daemon process?
996
997 =item How do I make my program run with sh and csh?
998
999 =item How do I find out if I'm running interactively or not?
1000
1001 =item How do I timeout a slow event?
1002
1003 =item How do I set CPU limits?
1004
1005 =item How do I avoid zombies on a Unix system?
1006
1007 =item How do I use an SQL database?
1008
1009 =item How do I make a system() exit on control-C?
1010
1011 =item How do I open a file without blocking?
1012
1013 =item How do I install a module from CPAN?
1014
1015 =item What's the difference between require and use?
1016
1017 =item How do I keep my own module/library directory?
1018
1019 =item How do I add the directory my program lives in to the module/library
1020 search path?
1021
1022 =item How do I add a directory to my include path at runtime?
1023
1024 =item What is socket.ph and where do I get it?
1025
1026 =back
1027
1028 =item AUTHOR AND COPYRIGHT
1029
1030 =head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30
1031 $)
1032
1033 =item DESCRIPTION
1034
1035 =over
1036
1037 =item My CGI script runs from the command line but not the browser.   (500
1038 Server Error)
1039
1040 =item How can I get better error messages from a CGI program?
1041
1042 =item How do I remove HTML from a string?
1043
1044 =item How do I extract URLs?
1045
1046 =item How do I download a file from the user's machine?  How do I open a
1047 file on another machine?
1048
1049 =item How do I make a pop-up menu in HTML?
1050
1051 =item How do I fetch an HTML file?
1052
1053 =item How do I automate an HTML form submission?
1054
1055 =item How do I decode or create those %-encodings on the web?
1056
1057 =item How do I redirect to another page?
1058
1059 =item How do I put a password on my web pages?
1060
1061 =item How do I edit my .htpasswd and .htgroup files with Perl?
1062
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?
1065
1066 =item How do I parse a mail header?
1067
1068 =item How do I decode a CGI form?
1069
1070 =item How do I check a valid mail address?
1071
1072 =item How do I decode a MIME/BASE64 string?
1073
1074 =item How do I return the user's mail address?
1075
1076 =item How do I send mail?
1077
1078 =item How do I read mail?
1079
1080 =item How do I find out my hostname/domainname/IP address?
1081
1082 =item How do I fetch a news article or the active newsgroups?
1083
1084 =item How do I fetch/put an FTP file?
1085
1086 =item How can I do RPC in Perl?
1087
1088 =back
1089
1090 =item AUTHOR AND COPYRIGHT
1091
1092 =head2 perldelta - what's new for perl5.006 (as of 5.005_56)
1093
1094 =item DESCRIPTION
1095
1096 =item Incompatible Changes
1097
1098 =over
1099
1100 =item Perl Source Incompatibilities
1101
1102 =item C Source Incompatibilities
1103
1104 C<PERL_POLLUTE>, C<PERL_POLLUTE_MALLOC>, C<PL_na> and C<dTHR> Issues
1105
1106 =item Compatible C Source API Changes
1107
1108 C<PATCHLEVEL> is now C<PERL_VERSION>
1109
1110 =item Binary Incompatibilities
1111
1112 =back
1113
1114 =item Core Changes
1115
1116 =over
1117
1118 =item Unicode and UTF-8 support
1119
1120 =item Lexically scoped warning categories
1121
1122 =item Binary numbers supported
1123
1124 =item syswrite() ease-of-use
1125
1126 =item 64-bit support
1127
1128 =item Better syntax checks on parenthesized unary operators
1129
1130 =item Improved C<qw//> operator
1131
1132 =item pack() format 'Z' supported
1133
1134 =item pack() format modifier '!' supported
1135
1136 =item $^X variables may now have names longer than one character
1137
1138 =back
1139
1140 =item Significant bug fixes
1141
1142 =over
1143
1144 =item E<lt>HANDLEE<gt> on empty files
1145
1146 =item C<eval '...'> improvements
1147
1148 =item Automatic flushing of output buffers
1149
1150 =back
1151
1152 =item Supported Platforms
1153
1154 =item New tests
1155
1156 =item Modules and Pragmata
1157
1158 =over
1159
1160 =item Modules
1161
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
1165
1166 =item Pragmata
1167
1168 =back
1169
1170 =item Utility Changes
1171
1172 =item Documentation Changes
1173
1174 perlopentut.pod, perlreftut.pod, perltootc.pod
1175
1176 =item New Diagnostics
1177
1178 /%s/: Unrecognized escape \\%c passed through, Unrecognized escape \\%c
1179 passed through, Missing command in piped open, defined(@array) is
1180 deprecated (and not really meaningful), defined(%hash) is deprecated (and
1181 not really meaningful)
1182
1183 =item Obsolete Diagnostics
1184
1185 =item Configuration Changes
1186
1187 =item BUGS
1188
1189 =item SEE ALSO
1190
1191 =item HISTORY
1192
1193 =head2 perldata - Perl data types
1194
1195 =item DESCRIPTION
1196
1197 =over
1198
1199 =item Variable names
1200
1201 =item Context
1202
1203 =item Scalar values
1204
1205 =item Scalar value constructors
1206
1207 =item List value constructors
1208
1209 =item Slices
1210
1211 =item Typeglobs and Filehandles
1212
1213 =back
1214
1215 =item SEE ALSO
1216
1217 =head2 perlsyn - Perl syntax
1218
1219 =item DESCRIPTION
1220
1221 =over
1222
1223 =item Declarations
1224
1225 =item Simple statements
1226
1227 =item Compound statements
1228
1229 =item Loop Control
1230
1231 =item For Loops
1232
1233 =item Foreach Loops
1234
1235 =item Basic BLOCKs and Switch Statements
1236
1237 =item Goto
1238
1239 =item PODs: Embedded Documentation
1240
1241 =item Plain Old Comments (Not!)
1242
1243 =back
1244
1245 =head2 perlop - Perl operators and precedence
1246
1247 =item SYNOPSIS
1248
1249 =item DESCRIPTION
1250
1251 =over
1252
1253 =item Terms and List Operators (Leftward)
1254
1255 =item The Arrow Operator
1256
1257 =item Auto-increment and Auto-decrement
1258
1259 =item Exponentiation
1260
1261 =item Symbolic Unary Operators
1262
1263 =item Binding Operators
1264
1265 =item Multiplicative Operators
1266
1267 =item Additive Operators
1268
1269 =item Shift Operators
1270
1271 =item Named Unary Operators
1272
1273 =item Relational Operators
1274
1275 =item Equality Operators
1276
1277 =item Bitwise And
1278
1279 =item Bitwise Or and Exclusive Or
1280
1281 =item C-style Logical And
1282
1283 =item C-style Logical Or
1284
1285 =item Range Operators
1286
1287 =item Conditional Operator
1288
1289 =item Assignment Operators
1290
1291 =item Comma Operator
1292
1293 =item List Operators (Rightward)
1294
1295 =item Logical Not
1296
1297 =item Logical And
1298
1299 =item Logical or and Exclusive Or
1300
1301 =item C Operators Missing From Perl
1302
1303 unary &, unary *, (TYPE)
1304
1305 =item Quote and Quote-like Operators
1306
1307 =item Regexp Quote-Like Operators
1308
1309 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
1310 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
1311 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cdsUC,
1312 y/SEARCHLIST/REPLACEMENTLIST/cdsUC
1313
1314 =item Gory details of parsing quoted constructs
1315
1316 Finding the end, Removal of backslashes before delimiters, Interpolation,
1317 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1318 C<``>, C<qq//>, C<qx//>, C<<file*globE<gt>>, C<?RE?>, C</RE/>, C<m/RE/>,
1319 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1320 regular expressions
1321
1322 =item I/O Operators
1323
1324 =item Constant Folding
1325
1326 =item Bitwise String Operators
1327
1328 =item Integer Arithmetic
1329
1330 =item Floating-point Arithmetic
1331
1332 =item Bigger Numbers
1333
1334 =back
1335
1336 =head2 perlre - Perl regular expressions
1337
1338 =item DESCRIPTION
1339
1340 i, m, s, x
1341
1342 =over
1343
1344 =item Regular Expressions
1345
1346 =item Extended Patterns
1347
1348 C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1349 C<(?=pattern)>, C<(?!pattern)>, C<(?E<lt>=pattern)>, C<(?<!pattern)>, C<(?{
1350 code })>, C<(?p{ code })>, C<(?E<gt>pattern)>,
1351 C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
1352
1353 =item Backtracking
1354
1355 =item Version 8 Regular Expressions
1356
1357 =item Warning on \1 vs $1
1358
1359 =item Repeated patterns matching zero-length substring
1360
1361 =item Creating custom RE engines
1362
1363 =back
1364
1365 =item BUGS
1366
1367 =item SEE ALSO
1368
1369 =head2 perlrun - how to execute the Perl interpreter
1370
1371 =item SYNOPSIS
1372
1373 =item DESCRIPTION
1374
1375 =over
1376
1377 =item #! and quoting on non-Unix systems
1378
1379 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
1380
1381 =item Location of Perl
1382
1383 =item Command Switches
1384
1385 B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<letters>,
1386 B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
1387 B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
1388 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
1389 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
1390 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
1391
1392 =back
1393
1394 =item ENVIRONMENT
1395
1396 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1397 (specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL
1398
1399 =head2 perlfunc - Perl builtin functions
1400
1401 =item DESCRIPTION
1402
1403 =over
1404
1405 =item Perl Functions by Category
1406
1407 Functions for SCALARs or strings, Regular expressions and pattern matching,
1408 Numeric functions, Functions for real @ARRAYs, Functions for list data,
1409 Functions for real %HASHes, Input and output functions, Functions for fixed
1410 length data or records, Functions for filehandles, files, or directories,
1411 Keywords related to the control flow of your perl program, Keywords related
1412 to scoping, Miscellaneous functions, Functions for processes and process
1413 groups, Keywords related to perl modules, Keywords related to classes and
1414 object-orientedness, Low-level socket functions, System V interprocess
1415 communication functions, Fetching user and group info, Fetching network
1416 info, Time-related functions, Functions new in perl5, Functions obsoleted
1417 in perl5
1418
1419 =item Portability
1420
1421 =item Alphabetical Listing of Perl Functions
1422
1423 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
1424 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1425 binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
1426 chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
1427 chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
1428 close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue
1429 BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
1430 HASH,DBNAME,MASK, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
1431 do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, each HASH, eof FILEHANDLE,
1432 eof (), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists
1433 EXPR, exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno
1434 FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline
1435 PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp
1436 PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME,
1437 gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID,
1438 getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE,
1439 getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport
1440 PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent,
1441 getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
1442 setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent,
1443 endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt
1444 SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR,
1445 goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
1446 STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1447 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last
1448 LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link
1449 OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, lock,
1450 log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST,
1451 map EXPR,LIST, mkdir FILENAME,MASK, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
1452 msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL,
1453 next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,
1454 opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package
1455 NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
1456 print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
1457 printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
1458 qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
1459 rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
1460 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
1461 readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo,
1462 ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR,
1463 reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1464 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1465 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1466 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1467 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
1468 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1469 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1470 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1471 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1472 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
1473 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1474 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1475 splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
1476 split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
1477 srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK,
1478 sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr
1479 EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST,
1480 sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS,
1481 sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH,
1482 sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST,
1483 syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite
1484 FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell FILEHANDLE,
1485 tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied VARIABLE, time,
1486 times, tr///, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR,
1487 uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef EXPR, undef, unlink
1488 LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use
1489 Module LIST, use Module, use Module VERSION LIST, use VERSION, utime LIST,
1490 values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
1491 LIST, write FILEHANDLE, write EXPR, write, y///
1492
1493 =back
1494
1495 =head2 perlvar - Perl predefined variables
1496
1497 =item DESCRIPTION
1498
1499 =over
1500
1501 =item Predefined Names
1502
1503 $ARG, $_, $E<lt>I<digits>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1504 $LAST_PAREN_MATCH, $+, @+, $MULTILINE_MATCHING, $*, input_line_number
1505 HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE
1506 EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR,
1507 $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR,
1508 $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR,
1509 $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $",
1510 $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE
1511 EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR,
1512 $FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR,
1513 $FORMAT_LINES_LEFT, $-, @-, format_name HANDLE EXPR, $FORMAT_NAME, $~,
1514 format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1515 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1516 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
1517 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1518 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1519 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1520 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
1521 $COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT,
1522 $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20,
1523 $^R, $^S, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV,
1524 @ARGV, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr}
1525
1526 =item Error Indicators
1527
1528 =item Technical Note on the Syntax of Variable Names
1529
1530 =back
1531
1532 =item BUGS
1533
1534 =head2 perlsub - Perl subroutines
1535
1536 =item SYNOPSIS
1537
1538 =item DESCRIPTION
1539
1540 =over
1541
1542 =item Private Variables via my()
1543
1544 =item Persistent Private Variables
1545
1546 =item Temporary Values via local()
1547
1548 =item Passing Symbol Table Entries (typeglobs)
1549
1550 =item When to Still Use local()
1551
1552 1. You need to give a global variable a temporary value, especially $_, 2.
1553 You need to create a local file or directory handle or a local function, 3.
1554 You want to temporarily change just one element of an array or hash
1555
1556 =item Pass by Reference
1557
1558 =item Prototypes
1559
1560 =item Constant Functions
1561
1562 =item Overriding Built-in Functions
1563
1564 =item Autoloading
1565
1566 =back
1567
1568 =item SEE ALSO
1569
1570 =head2 perlmod - Perl modules (packages and symbol tables)
1571
1572 =item DESCRIPTION
1573
1574 =over
1575
1576 =item Packages
1577
1578 =item Symbol Tables
1579
1580 =item Package Constructors and Destructors
1581
1582 =item Perl Classes
1583
1584 =item Perl Modules
1585
1586 =back
1587
1588 =item SEE ALSO
1589
1590 =head2 perlmodlib - constructing new Perl modules and finding existing ones
1591
1592 =item DESCRIPTION
1593
1594 =item THE PERL MODULE LIBRARY
1595
1596 =over
1597
1598 =item Pragmatic Modules
1599
1600 attrs, autouse, base, blib, constant, diagnostics, fields, filetest,
1601 integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, utf8,
1602 vars, vmsish, warnings
1603
1604 =item Standard Modules
1605
1606 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
1607 B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
1608 B::Showlex, B::Stackobj, B::Terse, B::Xref, Benchmark, CGI, CGI::Apache,
1609 CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Push, CGI::Switch, CPAN,
1610 CPAN::FirstTime, CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB, DB_File,
1611 Data::Dumper, Devel::Peek, Devel::SelfStubber, DirHandle, Dumpvalue,
1612 DynaLoader, English, Env, Errno, Exporter, ExtUtils::Command,
1613 ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
1614 ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
1615 ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Miniperl,
1616 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
1617 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::Compare, File::Copy,
1618 File::DosGlob, File::Find, File::Path, File::Spec, File::Spec::Functions,
1619 File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS,
1620 File::Spec::Win32, File::stat, FileCache, FileHandle, FindBin, GDBM_File,
1621 Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::Dir, IO::File,
1622 IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket,
1623 IO::Socket::INET, IO::Socket::UNIX, IPC::Msg, IPC::Open2, IPC::Open3,
1624 IPC::Semaphore, IPC::SysV, Math::BigFloat, Math::BigInt, Math::Complex,
1625 Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent,
1626 Net::servent, O, Opcode, POSIX, Pod::Html, Pod::Text, SDBM_File, Safe,
1627 Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol,
1628 Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, Term::ReadLine,
1629 Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex,
1630 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
1631 unexpand(1), Text::Wrap, Thread, Thread::Queue, Thread::Semaphore,
1632 Thread::Signal, Thread::Specific, Tie::Array, Tie::Handle, Tie::Hash,
1633 Tie::StdHash, Tie::RefHash, Tie::Scalar, Tie::StdScalar, Tie::SubstrHash,
1634 Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL,
1635 User::grent, User::pwent
1636
1637 =item Extension Modules
1638
1639 =back
1640
1641 =item CPAN
1642
1643 Language Extensions and Documentation Tools, Development Support, Operating
1644 System Interfaces, Networking, Device Control (modems) and InterProcess
1645 Communication, Data Types and Data Type Utilities, Database Interfaces,
1646 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1647 File Names, File Systems and File Locking (see also File Handles), String
1648 Processing, Language Text Processing, Parsing, and Searching, Option,
1649 Argument, Parameter, and Configuration File Processing,
1650 Internationalization and Locale, Authentication, Security, and Encryption,
1651 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1652 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1653 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1654 exceptions etc), File Handle and Input/Output Stream Utilities,
1655 Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America,
1656 South America
1657
1658 =item Modules: Creation, Use, and Abuse
1659
1660 =over
1661
1662 =item Guidelines for Module Creation
1663
1664 Do similar modules already exist in some form?, Try to design the new
1665 module to be easy to extend and reuse, Some simple style guidelines, Select
1666 what to export, Select a name for the module, Have you got it right?,
1667 README and other Additional Files, A description of the
1668 module/package/extension etc, A copyright notice - see below, Prerequisites
1669 - what else you may need to have, How to build it - possible changes to
1670 Makefile.PL etc, How to install it, Recent changes in this release,
1671 especially incompatibilities, Changes / enhancements you plan to make in
1672 the future, Adding a Copyright Notice, Give the module a
1673 version/issue/release number, How to release and distribute a module, Take
1674 care when changing a released module
1675
1676 =item Guidelines for Converting Perl 4 Library Scripts into Modules
1677
1678 There is no requirement to convert anything, Consider the implications,
1679 Make the most of the opportunity, The pl2pm utility will get you started,
1680 Adds the standard Module prologue lines, Converts package specifiers from '
1681 to ::, Converts die(...) to croak(...), Several other minor changes
1682
1683 =item Guidelines for Reusing Application Code
1684
1685 Complete applications rarely belong in the Perl Module Library, Many
1686 applications contain some Perl code that could be reused, Break-out the
1687 reusable code into one or more separate module files, Take the opportunity
1688 to reconsider and redesign the interfaces, In some cases the 'application'
1689 can then be reduced to a small
1690
1691 =back
1692
1693 =item NOTE
1694
1695 =head2 perlmodinstall - Installing CPAN Modules
1696
1697 =item DESCRIPTION
1698
1699 =over
1700
1701 =item PREAMBLE
1702
1703 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1704 module (sometimes unnecessary), B<INSTALL> the module
1705
1706 =back
1707
1708 =item HEY
1709
1710 =item AUTHOR
1711
1712 =item COPYRIGHT
1713
1714 =head2 perlform - Perl formats
1715
1716 =item DESCRIPTION
1717
1718 =over
1719
1720 =item Format Variables
1721
1722 =back
1723
1724 =item NOTES
1725
1726 =over
1727
1728 =item Footers
1729
1730 =item Accessing Formatting Internals
1731
1732 =back
1733
1734 =item WARNINGS
1735
1736 =head2 perllocale - Perl locale handling (internationalization and
1737 localization)
1738
1739 =item DESCRIPTION
1740
1741 =item PREPARING TO USE LOCALES
1742
1743 =item USING LOCALES
1744
1745 =over
1746
1747 =item The use locale pragma
1748
1749 =item The setlocale function
1750
1751 =item Finding locales
1752
1753 =item LOCALE PROBLEMS
1754
1755 =item Temporarily fixing locale problems
1756
1757 =item Permanently fixing locale problems
1758
1759 =item Permanently fixing your locale configuration
1760
1761 =item Fixing system locale configuration
1762
1763 =item The localeconv function
1764
1765 =back
1766
1767 =item LOCALE CATEGORIES
1768
1769 =over
1770
1771 =item Category LC_COLLATE: Collation
1772
1773 =item Category LC_CTYPE: Character Types
1774
1775 =item Category LC_NUMERIC: Numeric Formatting
1776
1777 =item Category LC_MONETARY: Formatting of monetary amounts
1778
1779 =item LC_TIME
1780
1781 =item Other categories
1782
1783 =back
1784
1785 =item SECURITY
1786
1787 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
1788 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
1789 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1790 B<In-memory formatting function> (sprintf()):, B<Output formatting
1791 functions> (printf() and write()):, B<Case-mapping functions> (lc(),
1792 lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
1793 (localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
1794 tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
1795 ispunct(), isspace(), isupper(),
1796 isxdigit()):
1797
1798 =item ENVIRONMENT
1799
1800 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
1801 LC_NUMERIC, LC_TIME, LANG
1802
1803 =item NOTES
1804
1805 =over
1806
1807 =item Backward compatibility
1808
1809 =item I18N:Collate obsolete
1810
1811 =item Sort speed and memory use impacts
1812
1813 =item write() and LC_NUMERIC
1814
1815 =item Freely available locale definitions
1816
1817 =item I18n and l10n
1818
1819 =item An imperfect standard
1820
1821 =back
1822
1823 =item BUGS
1824
1825 =over
1826
1827 =item Broken systems
1828
1829 =back
1830
1831 =item SEE ALSO
1832
1833 =item HISTORY
1834
1835 =head2 perlref - Perl references and nested data structures
1836
1837 =item NOTE
1838
1839 =item DESCRIPTION
1840
1841 =over
1842
1843 =item Making References
1844
1845 =item Using References
1846
1847 =item Symbolic references
1848
1849 =item Not-so-symbolic references
1850
1851 =item Pseudo-hashes: Using an array as a hash
1852
1853 =item Function Templates
1854
1855 =back
1856
1857 =item WARNING
1858
1859 =item SEE ALSO
1860
1861 =head2 perlreftut - Mark's very short tutorial about references
1862
1863 =item DESCRIPTION
1864
1865 =item Who Needs Complicated Data Structures?
1866
1867 =item The Solution
1868
1869 =item Syntax
1870
1871 =over
1872
1873 =item Making References
1874
1875 =item Using References
1876
1877 =back
1878
1879 =item An Example
1880
1881 =item Arrow Rule
1882
1883 =item Solution
1884
1885 =item The Rest
1886
1887 =item Summary
1888
1889 =item Credits
1890
1891 =over
1892
1893 =item Distribution Conditions
1894
1895 =back
1896
1897 =head2 perldsc - Perl Data Structures Cookbook
1898
1899 =item DESCRIPTION
1900
1901 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
1902 more elaborate constructs
1903
1904 =item REFERENCES
1905
1906 =item COMMON MISTAKES
1907
1908 =item CAVEAT ON PRECEDENCE
1909
1910 =item WHY YOU SHOULD ALWAYS C<use strict>
1911
1912 =item DEBUGGING
1913
1914 =item CODE EXAMPLES
1915
1916 =item ARRAYS OF ARRAYS
1917
1918 =over
1919
1920 =item Declaration of a ARRAY OF ARRAYS
1921
1922 =item Generation of a ARRAY OF ARRAYS
1923
1924 =item Access and Printing of a ARRAY OF ARRAYS
1925
1926 =back
1927
1928 =item HASHES OF ARRAYS
1929
1930 =over
1931
1932 =item Declaration of a HASH OF ARRAYS
1933
1934 =item Generation of a HASH OF ARRAYS
1935
1936 =item Access and Printing of a HASH OF ARRAYS
1937
1938 =back
1939
1940 =item ARRAYS OF HASHES
1941
1942 =over
1943
1944 =item Declaration of a ARRAY OF HASHES
1945
1946 =item Generation of a ARRAY OF HASHES
1947
1948 =item Access and Printing of a ARRAY OF HASHES
1949
1950 =back
1951
1952 =item HASHES OF HASHES
1953
1954 =over
1955
1956 =item Declaration of a HASH OF HASHES
1957
1958 =item Generation of a HASH OF HASHES
1959
1960 =item Access and Printing of a HASH OF HASHES
1961
1962 =back
1963
1964 =item MORE ELABORATE RECORDS
1965
1966 =over
1967
1968 =item Declaration of MORE ELABORATE RECORDS
1969
1970 =item Declaration of a HASH OF COMPLEX RECORDS
1971
1972 =item Generation of a HASH OF COMPLEX RECORDS
1973
1974 =back
1975
1976 =item Database Ties
1977
1978 =item SEE ALSO
1979
1980 =item AUTHOR
1981
1982 =head2 perllol - Manipulating Arrays of Arrays in Perl
1983
1984 =item DESCRIPTION
1985
1986 =item Declaration and Access of Arrays of Arrays
1987
1988 =item Growing Your Own
1989
1990 =item Access and Printing
1991
1992 =item Slices
1993
1994 =item SEE ALSO
1995
1996 =item AUTHOR
1997
1998 =head2 perltoot - Tom's object-oriented tutorial for perl
1999
2000 =item DESCRIPTION
2001
2002 =item Creating a Class
2003
2004 =over
2005
2006 =item Object Representation
2007
2008 =item Class Interface
2009
2010 =item Constructors and Instance Methods
2011
2012 =item Planning for the Future: Better Constructors
2013
2014 =item Destructors
2015
2016 =item Other Object Methods
2017
2018 =back
2019
2020 =item Class Data
2021
2022 =over
2023
2024 =item Accessing Class Data
2025
2026 =item Debugging Methods
2027
2028 =item Class Destructors
2029
2030 =item Documenting the Interface
2031
2032 =back
2033
2034 =item Aggregation
2035
2036 =item Inheritance
2037
2038 =over
2039
2040 =item Overridden Methods
2041
2042 =item Multiple Inheritance
2043
2044 =item UNIVERSAL: The Root of All Objects
2045
2046 =back
2047
2048 =item Alternate Object Representations
2049
2050 =over
2051
2052 =item Arrays as Objects
2053
2054 =item Closures as Objects
2055
2056 =back
2057
2058 =item AUTOLOAD: Proxy Methods
2059
2060 =over
2061
2062 =item Autoloaded Data Methods
2063
2064 =item Inherited Autoloaded Data Methods
2065
2066 =back
2067
2068 =item Metaclassical Tools
2069
2070 =over
2071
2072 =item Class::Struct
2073
2074 =item Data Members as Variables
2075
2076 =item NOTES
2077
2078 =item Object Terminology
2079
2080 =back
2081
2082 =item SEE ALSO
2083
2084 =item AUTHOR AND COPYRIGHT
2085
2086 =item COPYRIGHT
2087
2088 =over
2089
2090 =item Acknowledgments
2091
2092 =back
2093
2094 =head2 perltootc - Tom's OO Tutorial for Class Data in Perl
2095
2096 =item DESCRIPTION
2097
2098 =item Class Data as Package Variables
2099
2100 =over
2101
2102 =item Putting All Your Eggs in One Basket
2103
2104 =item Inheritance Concerns
2105
2106 =item The Eponymous Meta-Object
2107
2108 =item Indirect References to Class Data
2109
2110 =item Monadic Classes
2111
2112 =item Translucent Attributes
2113
2114 =back
2115
2116 =item Class Data as Lexical Variables
2117
2118 =over
2119
2120 =item Privacy and Responsibility 
2121
2122 =item File-Scoped Lexicals
2123
2124 =item More Inheritance Concerns
2125
2126 =item Locking the Door and Throwing Away the Key
2127
2128 =item Translucency Revisited
2129
2130 =back
2131
2132 =item NOTES
2133
2134 =item SEE ALSO
2135
2136 =item AUTHOR AND COPYRIGHT
2137
2138 =item ACKNOWLEDGEMENTS
2139
2140 =item HISTORY
2141
2142 =head2 perlobj - Perl objects
2143
2144 =item DESCRIPTION
2145
2146 =over
2147
2148 =item An Object is Simply a Reference
2149
2150 =item A Class is Simply a Package
2151
2152 =item A Method is Simply a Subroutine
2153
2154 =item Method Invocation
2155
2156 =item WARNING
2157
2158 =item Default UNIVERSAL methods
2159
2160 isa(CLASS), can(METHOD), VERSION( [NEED] )
2161
2162 =item Destructors
2163
2164 =item Summary
2165
2166 =item Two-Phased Garbage Collection
2167
2168 =back
2169
2170 =item SEE ALSO
2171
2172 =head2 perltie - how to hide an object class in a simple variable
2173
2174 =item SYNOPSIS
2175
2176 =item DESCRIPTION
2177
2178 =over
2179
2180 =item Tying Scalars
2181
2182 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
2183
2184 =item Tying Arrays
2185
2186 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
2187 DESTROY this
2188
2189 =item Tying Hashes
2190
2191 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
2192 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
2193 this, NEXTKEY this, lastkey, DESTROY this
2194
2195 =item Tying FileHandles
2196
2197 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
2198 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
2199
2200 =item The C<untie> Gotcha
2201
2202 =back
2203
2204 =item SEE ALSO
2205
2206 =item BUGS
2207
2208 =item AUTHOR
2209
2210 =head2 perlbot - Bag'o Object Tricks (the BOT)
2211
2212 =item DESCRIPTION
2213
2214 =item OO SCALING TIPS
2215
2216 =item INSTANCE VARIABLES
2217
2218 =item SCALAR INSTANCE VARIABLES
2219
2220 =item INSTANCE VARIABLE INHERITANCE
2221
2222 =item OBJECT RELATIONSHIPS
2223
2224 =item OVERRIDING SUPERCLASS METHODS
2225
2226 =item USING RELATIONSHIP WITH SDBM
2227
2228 =item THINKING OF CODE REUSE
2229
2230 =item CLASS CONTEXT AND THE OBJECT
2231
2232 =item INHERITING A CONSTRUCTOR
2233
2234 =item DELEGATION
2235
2236 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
2237 safe subprocesses, sockets, and semaphores)
2238
2239 =item DESCRIPTION
2240
2241 =item Signals
2242
2243 =item Named Pipes
2244
2245 =over
2246
2247 =item WARNING
2248
2249 =back
2250
2251 =item Using open() for IPC
2252
2253 =over
2254
2255 =item Filehandles
2256
2257 =item Background Processes
2258
2259 =item Complete Dissociation of Child from Parent
2260
2261 =item Safe Pipe Opens
2262
2263 =item Bidirectional Communication with Another Process
2264
2265 =item Bidirectional Communication with Yourself
2266
2267 =back
2268
2269 =item Sockets: Client/Server Communication
2270
2271 =over
2272
2273 =item Internet Line Terminators
2274
2275 =item Internet TCP Clients and Servers
2276
2277 =item Unix-Domain TCP Clients and Servers
2278
2279 =back
2280
2281 =item TCP Clients with IO::Socket
2282
2283 =over
2284
2285 =item A Simple Client
2286
2287 C<Proto>, C<PeerAddr>, C<PeerPort>
2288
2289 =item A Webget Client
2290
2291 =item Interactive Client with IO::Socket
2292
2293 =back
2294
2295 =item TCP Servers with IO::Socket
2296
2297 Proto, LocalPort, Listen, Reuse
2298
2299 =item UDP: Message Passing
2300
2301 =item SysV IPC
2302
2303 =item NOTES
2304
2305 =item BUGS
2306
2307 =item AUTHOR
2308
2309 =item SEE ALSO
2310
2311 =head2 perldbmfilter - Perl DBM Filters
2312
2313 =item SYNOPSIS
2314
2315 =item DESCRIPTION
2316
2317 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
2318 B<filter_fetch_value>
2319
2320 =over
2321
2322 =item The Filter
2323
2324 =item An Example -- the NULL termination problem.
2325
2326 =item Another Example -- Key is a C int.
2327
2328 =back
2329
2330 =item SEE ALSO
2331
2332 =item AUTHOR
2333
2334 =head2 perldebug - Perl debugging
2335
2336 =item DESCRIPTION
2337
2338 =item The Perl Debugger
2339
2340 =over
2341
2342 =item Debugger Commands
2343
2344 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
2345 [expr], E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l
2346 subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern],
2347 t, t expr, b [line] [condition], b subname [condition], b postpone subname
2348 [condition], b load filename, b compile subname, d [line], D, a [line]
2349 command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?]..,
2350 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2351 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2352 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
2353 C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
2354 C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
2355 C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ],
2356 E<lt>E<lt> command, E<gt> command, E<gt>E<gt> command, { [ command ], {{
2357 command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R,
2358 |dbcmd, ||dbcmd, command, m expr, m package
2359
2360 =item Debugger input/output
2361
2362 Prompt, Multiline commands, Stack backtrace, Listing, Frame listing
2363
2364 =item Debugging compile-time statements
2365
2366 =item Debugger Customization
2367
2368 =item Readline Support
2369
2370 =item Editor Support for Debugging
2371
2372 =item The Perl Profiler
2373
2374 =item Debugger support in perl
2375
2376 =item Debugger Internals
2377
2378 =item Other resources
2379
2380 =item BUGS
2381
2382 =back
2383
2384 =item Debugging Perl memory usage
2385
2386 =over
2387
2388 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
2389
2390 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
2391 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
2392 6144>
2393
2394 =item Example of using B<-DL> switch
2395
2396 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
2397
2398 =item B<-DL> details
2399
2400 C<!!!>, C<!!>, C<!>
2401
2402 =item Limitations of B<-DL> statistic
2403
2404 =back
2405
2406 =item Debugging regular expressions
2407
2408 =over
2409
2410 =item Compile-time output
2411
2412 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
2413 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
2414 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
2415 C<anchored(TYPE)>
2416
2417 =item Types of nodes
2418
2419 =item Run-time output
2420
2421 =back
2422
2423 =head2 perldiag - various Perl diagnostics
2424
2425 =item DESCRIPTION
2426
2427 =head2 perlsec - Perl security
2428
2429 =item DESCRIPTION
2430
2431 =over
2432
2433 =item Laundering and Detecting Tainted Data
2434
2435 =item Switches On the "#!" Line
2436
2437 =item Cleaning Up Your Path
2438
2439 =item Security Bugs
2440
2441 =item Protecting Your Programs
2442
2443 =back
2444
2445 =item SEE ALSO
2446
2447 =head2 perltrap - Perl traps for the unwary
2448
2449 =item DESCRIPTION
2450
2451 =over
2452
2453 =item Awk Traps
2454
2455 =item C Traps
2456
2457 =item Sed Traps
2458
2459 =item Shell Traps
2460
2461 =item Perl Traps
2462
2463 =item Perl4 to Perl5 Traps
2464
2465 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
2466 Traps, General data type traps, Context Traps - scalar, list contexts,
2467 Precedence Traps, General Regular Expression Traps using s///, etc,
2468 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
2469
2470 =item Discontinuance, Deprecation, and BugFix traps
2471
2472 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
2473 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
2474 Discontinuance, Discontinuance, Deprecation, Discontinuance
2475
2476 =item Parsing Traps
2477
2478 Parsing, Parsing, Parsing, Parsing
2479
2480 =item Numerical Traps
2481
2482 Numerical, Numerical, Numerical
2483
2484 =item General data type traps
2485
2486 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
2487 (Constants), (Scalars), (Variable Suicide)
2488
2489 =item Context Traps - scalar, list contexts
2490
2491 (list context), (scalar context), (scalar context), (list, builtin)
2492
2493 =item Precedence Traps
2494
2495 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
2496 Precedence
2497
2498 =item General Regular Expression Traps using s///, etc.
2499
2500 Regular Expression, Regular Expression, Regular Expression, Regular
2501 Expression, Regular Expression, Regular Expression, Regular Expression,
2502 Regular Expression
2503
2504 =item Subroutine, Signal, Sorting Traps
2505
2506 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
2507
2508 =item OS Traps
2509
2510 (SysV), (SysV)
2511
2512 =item Interpolation Traps
2513
2514 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
2515 Interpolation, Interpolation, Interpolation, Interpolation
2516
2517 =item DBM Traps
2518
2519 DBM, DBM
2520
2521 =item Unclassified Traps
2522
2523 C<require>/C<do> trap using returned value, C<split> on empty string with
2524 LIMIT specified
2525
2526 =back
2527
2528 =head2 perlport - Writing portable Perl
2529
2530 =item DESCRIPTION
2531
2532 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
2533 portable
2534
2535 =item ISSUES
2536
2537 =over
2538
2539 =item Newlines
2540
2541 =item Numbers endianness and Width
2542
2543 =item Files and Filesystems
2544
2545 =item System Interaction
2546
2547 =item Interprocess Communication (IPC)
2548
2549 =item External Subroutines (XS)
2550
2551 =item Standard Modules
2552
2553 =item Time and Date
2554
2555 =item Character sets and character encoding
2556
2557 =item Internationalisation
2558
2559 =item System Resources
2560
2561 =item Security
2562
2563 =item Style
2564
2565 =back
2566
2567 =item CPAN Testers
2568
2569 Mailing list: cpan-testers@perl.org, Testing results:
2570 C<http://www.perl.org/cpan-testers/>
2571
2572 =item PLATFORMS
2573
2574 =over
2575
2576 =item Unix
2577
2578 =item DOS and Derivatives
2579
2580 The djgpp environment for DOS, C<http://www.delorie.com/djgpp/>, The EMX
2581 environment for DOS, OS/2, etc.
2582 C<emx@iaehv.nl>,C<http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/index.
2583 html> or
2584 C<ftp://hobbes.nmsu.edu/pub/os2/dev/emx>, Build instructions for Win32,
2585 L<perlwin32>, The ActiveState Pages, C<http://www.activestate.com/>
2586
2587 =item S<Mac OS>
2588
2589 The MacPerl Pages, C<http://www.macperl.com/>, The MacPerl mailing lists,
2590 C<http://www.macperl.org/>, MacPerl Module Porters,
2591 C<http://pudge.net/mmp/>
2592
2593 =item VMS
2594
2595 L<perlvms.pod>, vmsperl list, C<majordomo@perl.org>, vmsperl on the web,
2596 C<http://www.sidhe.org/vmsperl/index.html>
2597
2598 =item VOS
2599
2600 L<README.vos>, VOS mailing list, VOS Perl on the web at
2601 C<http://ftp.stratus.com/pub/vos/vos.html>
2602
2603 =item EBCDIC Platforms
2604
2605 perl-mvs list, AS/400 Perl information at
2606 C<http://as400.rochester.ibm.com/>
2607
2608 =item Acorn RISC OS
2609
2610 =item Other perls
2611
2612 Atari, Guido Flohr's page C<http://stud.uni-sb.de/~gufl0000/>, HP 300
2613 MPE/iX  C<http://www.cccd.edu/~markb/perlix.html>, Novell Netware
2614
2615 =back
2616
2617 =item FUNCTION IMPLEMENTATIONS
2618
2619 =over
2620
2621 =item Alphabetical Listing of Perl Functions
2622
2623 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, binmode FILEHANDLE, chmod LIST, chown
2624 LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
2625 HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR,
2626 flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid,
2627 getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME,
2628 getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber
2629 NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent,
2630 getnetent, getprotoent, getservent, setpwent, setgrent, sethostent
2631 STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN,
2632 endpwent, endgrent, endhostent, endnetent, endprotoent, endservent,
2633 getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl
2634 FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat
2635 FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
2636 ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open
2637 FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2638 RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2639 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority
2640 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl
2641 ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite
2642 ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat
2643 FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
2644 FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
2645 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
2646 wait, waitpid PID,FLAGS
2647
2648 =back
2649
2650 =item CHANGES
2651
2652 v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April
2653 1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December
2654 1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August
2655 1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998
2656
2657 =item AUTHORS / CONTRIBUTORS
2658
2659 =item VERSION
2660
2661 =head2 perlstyle - Perl style guide
2662
2663 =item DESCRIPTION
2664
2665 =head2 perlpod - plain old documentation
2666
2667 =item DESCRIPTION
2668
2669 =over
2670
2671 =item Verbatim Paragraph
2672
2673 =item Command Paragraph
2674
2675 =item Ordinary Block of Text
2676
2677 =item The Intent
2678
2679 =item Embedding Pods in Perl Modules
2680
2681 =item Common Pod Pitfalls
2682
2683 =back
2684
2685 =item SEE ALSO
2686
2687 =item AUTHOR
2688
2689 =head2 perlbook - Perl book information
2690
2691 =item DESCRIPTION
2692
2693 =head2 perlembed - how to embed perl in your C program
2694
2695 =item DESCRIPTION
2696
2697 =over
2698
2699 =item PREAMBLE
2700
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?>
2703
2704 =item ROADMAP
2705
2706 =item Compiling your C program
2707
2708 =item Adding a Perl interpreter to your C program
2709
2710 =item Calling a Perl subroutine from your C program
2711
2712 =item Evaluating a Perl statement from your C program
2713
2714 =item Performing Perl pattern matches and substitutions from your C program
2715
2716 =item Fiddling with the Perl stack from your C program
2717
2718 =item Maintaining a persistent interpreter
2719
2720 =item Maintaining multiple interpreter instances
2721
2722 =item Using Perl modules, which themselves use C libraries, from your C
2723 program
2724
2725 =back
2726
2727 =item Embedding Perl under Win32
2728
2729 =item MORAL
2730
2731 =item AUTHOR
2732
2733 =item COPYRIGHT
2734
2735 =head2 perlapio - perl's IO abstraction interface.
2736
2737 =item SYNOPSIS
2738
2739 =item DESCRIPTION
2740
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()>
2751
2752 =over
2753
2754 =item Co-existence with stdio
2755
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)>
2762
2763 =back
2764
2765 =head2 perlxs - XS language reference manual
2766
2767 =item DESCRIPTION
2768
2769 =over
2770
2771 =item Introduction
2772
2773 =item On The Road
2774
2775 =item The Anatomy of an XSUB
2776
2777 =item The Argument Stack
2778
2779 =item The RETVAL Variable
2780
2781 =item The MODULE Keyword
2782
2783 =item The PACKAGE Keyword
2784
2785 =item The PREFIX Keyword
2786
2787 =item The OUTPUT: Keyword
2788
2789 =item The CODE: Keyword
2790
2791 =item The INIT: Keyword
2792
2793 =item The NO_INIT Keyword
2794
2795 =item Initializing Function Parameters
2796
2797 =item Default Parameter Values
2798
2799 =item The PREINIT: Keyword
2800
2801 =item The SCOPE: Keyword
2802
2803 =item The INPUT: Keyword
2804
2805 =item Variable-length Parameter Lists
2806
2807 =item The C_ARGS: Keyword
2808
2809 =item The PPCODE: Keyword
2810
2811 =item Returning Undef And Empty Lists
2812
2813 =item The REQUIRE: Keyword
2814
2815 =item The CLEANUP: Keyword
2816
2817 =item The BOOT: Keyword
2818
2819 =item The VERSIONCHECK: Keyword
2820
2821 =item The PROTOTYPES: Keyword
2822
2823 =item The PROTOTYPE: Keyword
2824
2825 =item The ALIAS: Keyword
2826
2827 =item The INTERFACE: Keyword
2828
2829 =item The INTERFACE_MACRO: Keyword
2830
2831 =item The INCLUDE: Keyword
2832
2833 =item The CASE: Keyword
2834
2835 =item The & Unary Operator
2836
2837 =item Inserting Comments and C Preprocessor Directives
2838
2839 =item Using XS With C++
2840
2841 =item Interface Strategy
2842
2843 =item Perl Objects And C Structures
2844
2845 =item The Typemap
2846
2847 =back
2848
2849 =item EXAMPLES
2850
2851 =item XS VERSION
2852
2853 =item AUTHOR
2854
2855 =head2 perlxstut, perlXStut - Tutorial for XSUBs
2856
2857 =item DESCRIPTION
2858
2859 =over
2860
2861 =item VERSION CAVEAT
2862
2863 =item DYNAMIC VERSUS STATIC
2864
2865 =item EXAMPLE 1
2866
2867 =item EXAMPLE 2
2868
2869 =item WHAT HAS GONE ON?
2870
2871 =item WRITING GOOD TEST SCRIPTS
2872
2873 =item EXAMPLE 3
2874
2875 =item WHAT'S NEW HERE?
2876
2877 =item INPUT AND OUTPUT PARAMETERS
2878
2879 =item THE XSUBPP COMPILER
2880
2881 =item THE TYPEMAP FILE
2882
2883 =item WARNING
2884
2885 =item EXAMPLE 4
2886
2887 =item WHAT HAS HAPPENED HERE?
2888
2889 =item SPECIFYING ARGUMENTS TO XSUBPP
2890
2891 =item THE ARGUMENT STACK
2892
2893 =item EXTENDING YOUR EXTENSION
2894
2895 =item DOCUMENTING YOUR EXTENSION
2896
2897 =item INSTALLING YOUR EXTENSION
2898
2899 =item SEE ALSO
2900
2901 =item Author
2902
2903 =item Last Changed
2904
2905 =back
2906
2907 =head2 perlguts - Perl's Internal Functions
2908
2909 =item DESCRIPTION
2910
2911 =item Variables
2912
2913 =over
2914
2915 =item Datatypes
2916
2917 =item What is an "IV"?
2918
2919 =item Working with SVs
2920
2921 =item What's Really Stored in an SV?
2922
2923 =item Working with AVs
2924
2925 =item Working with HVs
2926
2927 =item Hash API Extensions
2928
2929 =item References
2930
2931 =item Blessed References and Class Objects
2932
2933 =item Creating New Variables
2934
2935 =item Reference Counts and Mortality
2936
2937 =item Stashes and Globs
2938
2939 =item Double-Typed SVs
2940
2941 =item Magic Variables
2942
2943 =item Assigning Magic
2944
2945 =item Magic Virtual Tables
2946
2947 =item Finding Magic
2948
2949 =item Understanding the Magic of Tied Hashes and Arrays
2950
2951 =item Localizing changes
2952
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)>
2961
2962 =back
2963
2964 =item Subroutines
2965
2966 =over
2967
2968 =item XSUBs and the Argument Stack
2969
2970 =item Calling Perl Routines from within C Programs
2971
2972 =item Memory Allocation
2973
2974 =item PerlIO
2975
2976 =item Putting a C value on Perl stack
2977
2978 =item Scratchpads
2979
2980 =item Scratchpads and recursion
2981
2982 =back
2983
2984 =item Compiled code
2985
2986 =over
2987
2988 =item Code tree
2989
2990 =item Examining the tree
2991
2992 =item Compile pass 1: check routines
2993
2994 =item Compile pass 1a: constant folding
2995
2996 =item Compile pass 2: context propagation
2997
2998 =item Compile pass 3: peephole optimization
2999
3000 =back
3001
3002 =item API LISTING
3003
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,
3049 Zero
3050
3051 =item AUTHORS
3052
3053 =head2 perlcall - Perl calling conventions from C
3054
3055 =item DESCRIPTION
3056
3057 An Error Handler, An Event Driven Program
3058
3059 =item THE PERL_CALL FUNCTIONS
3060
3061 perl_call_sv, perl_call_pv, perl_call_method, perl_call_argv
3062
3063 =item FLAG VALUES
3064
3065 =over
3066
3067 =item  G_VOID
3068
3069 =item  G_SCALAR
3070
3071 =item G_ARRAY
3072
3073 =item G_DISCARD
3074
3075 =item G_NOARGS
3076
3077 =item G_EVAL
3078
3079 =item G_KEEPERR
3080
3081 =item Determining the Context
3082
3083 =back
3084
3085 =item KNOWN PROBLEMS
3086
3087 =item EXAMPLES
3088
3089 =over
3090
3091 =item No Parameters, Nothing returned
3092
3093 =item Passing Parameters
3094
3095 =item Returning a Scalar
3096
3097 =item Returning a list of values
3098
3099 =item Returning a list in a scalar context
3100
3101 =item Returning Data from Perl via the parameter list
3102
3103 =item Using G_EVAL
3104
3105 =item Using G_KEEPERR
3106
3107 =item Using perl_call_sv
3108
3109 =item Using perl_call_argv
3110
3111 =item Using perl_call_method
3112
3113 =item Using GIMME_V
3114
3115 =item Using Perl to dispose of temporaries
3116
3117 =item Strategies for storing Callback Context Information
3118
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
3121 callback
3122
3123 =item Alternate Stack Manipulation
3124
3125 =item Creating and calling an anonymous subroutine in C
3126
3127 =back
3128
3129 =item SEE ALSO
3130
3131 =item AUTHOR
3132
3133 =item DATE
3134
3135 =head2 perlhist - the Perl history records
3136
3137 =item DESCRIPTION
3138
3139 =item INTRODUCTION
3140
3141 =item THE KEEPERS OF THE PUMPKIN
3142
3143 =over
3144
3145 =item PUMPKIN?
3146
3147 =back
3148
3149 =item THE RECORDS
3150
3151 =over
3152
3153 =item SELECTED RELEASE SIZES
3154
3155 =item SELECTED PATCH SIZES
3156
3157 =back
3158
3159 =item THE KEEPERS OF THE RECORDS
3160
3161 =head1 PRAGMA DOCUMENTATION
3162
3163 =head2 attrs - set/get attributes of a subroutine
3164
3165 =item SYNOPSIS
3166
3167 =item DESCRIPTION
3168
3169 method, locked
3170
3171 =head2 re - Perl pragma to alter regular expression behaviour
3172
3173 =item SYNOPSIS
3174
3175 =item DESCRIPTION
3176
3177 =head2 attrs - set/get attributes of a subroutine
3178
3179 =item SYNOPSIS
3180
3181 =item DESCRIPTION
3182
3183 method, locked
3184
3185 =head2 autouse - postpone load of modules until a function is used
3186
3187 =item SYNOPSIS
3188
3189 =item DESCRIPTION
3190
3191 =item WARNING
3192
3193 =item AUTHOR
3194
3195 =item SEE ALSO
3196
3197 =head2 base - Establish IS-A relationship with base class at compile time
3198
3199 =item SYNOPSIS
3200
3201 =item DESCRIPTION
3202
3203 =item HISTORY
3204
3205 =item SEE ALSO
3206
3207 =head2 blib - Use MakeMaker's uninstalled version of a package
3208
3209 =item SYNOPSIS
3210
3211 =item DESCRIPTION
3212
3213 =item BUGS
3214
3215 =item AUTHOR
3216
3217 =head2 caller - inherit pragmatic attributes from the context of the caller
3218
3219 =item SYNOPSIS
3220
3221 =item DESCRIPTION
3222
3223 encoding
3224
3225 =head2 constant - Perl pragma to declare constants
3226
3227 =item SYNOPSIS
3228
3229 =item DESCRIPTION
3230
3231 =item NOTES
3232
3233 =item TECHNICAL NOTE
3234
3235 =item BUGS
3236
3237 =item AUTHOR
3238
3239 =item COPYRIGHT
3240
3241 =head2 diagnostics - Perl compiler pragma to force verbose warning
3242 diagnostics
3243
3244 =item SYNOPSIS
3245
3246 =item DESCRIPTION
3247
3248 =over
3249
3250 =item The C<diagnostics> Pragma
3251
3252 =item The I<splain> Program
3253
3254 =back
3255
3256 =item EXAMPLES
3257
3258 =item INTERNALS
3259
3260 =item BUGS
3261
3262 =item AUTHOR
3263
3264 =head2 fields - compile-time class fields
3265
3266 =item SYNOPSIS
3267
3268 =item DESCRIPTION
3269
3270 =item SEE ALSO
3271
3272 =head2 filetest - Perl pragma to control the filetest permission operators
3273
3274 =item SYNOPSIS
3275
3276     $can_perhaps_read = -r "file";      # use the mode bits
3277     {
3278         use filetest 'access';          # intuit harder
3279         $can_really_read = -r "file";
3280     }
3281     $can_perhaps_read = -r "file";      # use the mode bits again
3282
3283 =item DESCRIPTION
3284
3285 =over
3286
3287 =item subpragma access
3288
3289 =back
3290
3291 =head2 integer - Perl pragma to compute arithmetic in integer instead of
3292 double
3293
3294 =item SYNOPSIS
3295
3296 =item DESCRIPTION
3297
3298 =head2 less - perl pragma to request less of something from the compiler
3299
3300 =item SYNOPSIS
3301
3302 =item DESCRIPTION
3303
3304 =head2 lib - manipulate @INC at compile time
3305
3306 =item SYNOPSIS
3307
3308 =item DESCRIPTION
3309
3310 =over
3311
3312 =item ADDING DIRECTORIES TO @INC
3313
3314 =item DELETING DIRECTORIES FROM @INC
3315
3316 =item RESTORING ORIGINAL @INC
3317
3318 =back
3319
3320 =item SEE ALSO
3321
3322 =item AUTHOR
3323
3324 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
3325 operations
3326
3327 =item SYNOPSIS
3328
3329 =item DESCRIPTION
3330
3331 =head2 ops - Perl pragma to restrict unsafe operations when compiling
3332
3333 =item SYNOPSIS  
3334
3335 =item DESCRIPTION
3336
3337 =item SEE ALSO
3338
3339 =head2 overload - Package for overloading perl operations
3340
3341 =item SYNOPSIS
3342
3343 =item DESCRIPTION
3344
3345 =over
3346
3347 =item Declaration of overloaded functions
3348
3349 =item Calling Conventions for Binary Operations
3350
3351 FALSE, TRUE, C<undef>
3352
3353 =item Calling Conventions for Unary Operations
3354
3355 =item Calling Conventions for Mutators
3356
3357 C<++> and C<-->, C<x=> and other assignment versions
3358
3359 =item Overloadable Operations
3360
3361 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
3362 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
3363 and numeric conversion>, I<Iteration>, I<Dereferencing>, I<Special>
3364
3365 =item Inheritance and overloading
3366
3367 Strings as values of C<use overload> directive, Overloading of an operation
3368 is inherited by derived classes
3369
3370 =back
3371
3372 =item SPECIAL SYMBOLS FOR C<use overload>
3373
3374 =over
3375
3376 =item Last Resort
3377
3378 =item Fallback 
3379
3380 C<undef>, TRUE, defined, but FALSE
3381
3382 =item Copy Constructor
3383
3384 B<Example>
3385
3386 =back
3387
3388 =item MAGIC AUTOGENERATION
3389
3390 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
3391 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
3392 I<Concatenation>, I<Comparison operations>, I<Iterator>, I<Dereferencing>,
3393 I<Copy operator>
3394
3395 =item Losing overloading
3396
3397 =item Run-time Overloading
3398
3399 =item Public functions
3400
3401 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
3402
3403 =item Overloading constants
3404
3405 integer, float, binary, q, qr
3406
3407 =item IMPLEMENTATION
3408
3409 =item Metaphor clash
3410
3411 =item Cookbook
3412
3413 =over
3414
3415 =item Two-face scalars
3416
3417 =item Two-face references
3418
3419 =item Symbolic calculator
3420
3421 =item I<Really> symbolic calculator
3422
3423 =back
3424
3425 =item AUTHOR
3426
3427 =item DIAGNOSTICS
3428
3429 =item BUGS
3430
3431 =head2 re - Perl pragma to alter regular expression behaviour
3432
3433 =item SYNOPSIS
3434
3435 =item DESCRIPTION
3436
3437 =head2 sigtrap - Perl pragma to enable simple signal handling
3438
3439 =item SYNOPSIS
3440
3441 =item DESCRIPTION
3442
3443 =item OPTIONS
3444
3445 =over
3446
3447 =item SIGNAL HANDLERS
3448
3449 B<stack-trace>, B<die>, B<handler> I<your-handler>
3450
3451 =item SIGNAL LISTS
3452
3453 B<normal-signals>, B<error-signals>, B<old-interface-signals>
3454
3455 =item OTHER
3456
3457 B<untrapped>, B<any>, I<signal>, I<number>
3458
3459 =back
3460
3461 =item EXAMPLES
3462
3463 =head2 strict - Perl pragma to restrict unsafe constructs
3464
3465 =item SYNOPSIS
3466
3467 =item DESCRIPTION
3468
3469 C<strict refs>, C<strict vars>, C<strict subs>
3470
3471 =head2 subs - Perl pragma to predeclare sub names
3472
3473 =item SYNOPSIS
3474
3475 =item DESCRIPTION
3476
3477 =head2 utf8 - Perl pragma to turn on UTF-8 and Unicode support
3478
3479 =item SYNOPSIS
3480
3481 =item DESCRIPTION
3482
3483 =item CAVEATS
3484
3485 =head2 vars - Perl pragma to predeclare global variable names
3486
3487 =item SYNOPSIS
3488
3489 =item DESCRIPTION
3490
3491 =head2 warnings - Perl pragma to control optional warnings
3492
3493 =item SYNOPSIS
3494
3495 =item DESCRIPTION
3496
3497 C<warning deprecated>
3498
3499 =head1 MODULE DOCUMENTATION
3500
3501 =head2 AnyDBM_File - provide framework for multiple DBMs
3502
3503 =item SYNOPSIS
3504
3505 =item DESCRIPTION
3506
3507 =over
3508
3509 =item DBM Comparisons
3510
3511 [0], [1], [2], [3]
3512
3513 =back
3514
3515 =item SEE ALSO
3516
3517 =head2 AutoLoader - load subroutines only on demand
3518
3519 =item SYNOPSIS
3520
3521 =item DESCRIPTION
3522
3523 =over
3524
3525 =item Subroutine Stubs
3526
3527 =item Using B<AutoLoader>'s AUTOLOAD Subroutine
3528
3529 =item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
3530
3531 =item Package Lexicals
3532
3533 =item B<AutoLoader> vs. B<SelfLoader>
3534
3535 =back
3536
3537 =item CAVEATS
3538
3539 =item SEE ALSO
3540
3541 =head2 AutoSplit - split a package for autoloading
3542
3543 =item SYNOPSIS
3544
3545 =item DESCRIPTION
3546
3547 $keep, $check, $modtime
3548
3549 =over
3550
3551 =item Multiple packages
3552
3553 =back
3554
3555 =item DIAGNOSTICS
3556
3557 =head2 B - The Perl Compiler
3558
3559 =item SYNOPSIS
3560
3561 =item DESCRIPTION
3562
3563 =item OVERVIEW OF CLASSES
3564
3565 =over
3566
3567 =item SV-RELATED CLASSES
3568
3569 =item B::SV METHODS
3570
3571 REFCNT, FLAGS
3572
3573 =item B::IV METHODS
3574
3575 IV, IVX, needs64bits, packiv
3576
3577 =item B::NV METHODS
3578
3579 NV, NVX
3580
3581 =item B::RV METHODS
3582
3583 RV
3584
3585 =item B::PV METHODS
3586
3587 PV
3588
3589 =item B::PVMG METHODS
3590
3591 MAGIC, SvSTASH
3592
3593 =item B::MAGIC METHODS
3594
3595 MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
3596
3597 =item B::PVLV METHODS
3598
3599 TARGOFF, TARGLEN, TYPE, TARG
3600
3601 =item B::BM METHODS
3602
3603 USEFUL, PREVIOUS, RARE, TABLE
3604
3605 =item B::GV METHODS
3606
3607 NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT,
3608 FLAGS
3609
3610 =item B::IO METHODS
3611
3612 LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
3613 BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
3614
3615 =item B::AV METHODS
3616
3617 FILL, MAX, OFF, ARRAY, AvFLAGS
3618
3619 =item B::CV METHODS
3620
3621 STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY,
3622 CvFLAGS
3623
3624 =item B::HV METHODS
3625
3626 FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
3627
3628 =item OP-RELATED CLASSES
3629
3630 =item B::OP METHODS
3631
3632 next, sibling, ppaddr, desc, targ, type, seq, flags, private
3633
3634 =item B::UNOP METHOD
3635
3636 first
3637
3638 =item B::BINOP METHOD
3639
3640 last
3641
3642 =item B::LOGOP METHOD
3643
3644 other
3645
3646 =item B::LISTOP METHOD
3647
3648 children
3649
3650 =item B::PMOP METHODS
3651
3652 pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
3653
3654 =item B::SVOP METHOD
3655
3656 sv
3657
3658 =item B::GVOP METHOD
3659
3660 gv
3661
3662 =item B::PVOP METHOD
3663
3664 pv
3665
3666 =item B::LOOP METHODS
3667
3668 redoop, nextop, lastop
3669
3670 =item B::COP METHODS
3671
3672 label, stash, filegv, cop_seq, arybase, line
3673
3674 =back
3675
3676 =item FUNCTIONS EXPORTED BY C<B>
3677
3678 main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes,
3679 sv_no, amagic_generation, walkoptree(OP, METHOD), walkoptree_debug(DEBUG),
3680 walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM),
3681 hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names
3682
3683 =item AUTHOR
3684
3685 =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
3686 bytecode
3687
3688 =item SYNOPSIS
3689
3690 =item DESCRIPTION
3691
3692 =item AUTHOR
3693
3694 =head2 B::Assembler - Assemble Perl bytecode
3695
3696 =item SYNOPSIS
3697
3698 =item DESCRIPTION
3699
3700 =item AUTHOR
3701
3702 =head2 B::Bblock - Walk basic blocks
3703
3704 =item SYNOPSIS
3705
3706 =item DESCRIPTION
3707
3708 =item AUTHOR
3709
3710 =head2 B::Bytecode - Perl compiler's bytecode backend
3711
3712 =item SYNOPSIS
3713
3714 =item DESCRIPTION
3715
3716 =item OPTIONS
3717
3718 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3719 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3720 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3721
3722 =item EXAMPLES
3723
3724 =item BUGS
3725
3726 =item AUTHOR
3727
3728 =head2 B::C - Perl compiler's C backend
3729
3730 =item SYNOPSIS
3731
3732 =item DESCRIPTION
3733
3734 =item OPTIONS
3735
3736 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
3737 B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>
3738
3739 =item EXAMPLES
3740
3741 =item BUGS
3742
3743 =item AUTHOR
3744
3745 =head2 B::CC - Perl compiler's optimized C translation backend
3746
3747 =item SYNOPSIS
3748
3749 =item DESCRIPTION
3750
3751 =item OPTIONS
3752
3753 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
3754 B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
3755 B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
3756
3757 =item EXAMPLES
3758
3759 =item BUGS
3760
3761 =item DIFFERENCES
3762
3763 =over
3764
3765 =item Loops
3766
3767 =item Context of ".."
3768
3769 =item Arithmetic
3770
3771 =item Deprecated features
3772
3773 =back
3774
3775 =item AUTHOR
3776
3777 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
3778
3779 =item SYNOPSIS
3780
3781 =item DESCRIPTION
3782
3783 =item AUTHOR
3784
3785 =head2 B::Deparse - Perl compiler backend to produce perl code
3786
3787 =item SYNOPSIS
3788
3789 =item DESCRIPTION
3790
3791 =item OPTIONS
3792
3793 B<-l>, B<-p>, B<-q>, B<-u>I<PACKAGE>, B<-s>I<LETTERS>, B<C>
3794
3795 =item BUGS
3796
3797 =item AUTHOR
3798
3799 =head2 B::Disassembler - Disassemble Perl bytecode
3800
3801 =item SYNOPSIS
3802
3803 =item DESCRIPTION
3804
3805 =item AUTHOR
3806
3807 =head2 B::Lint - Perl lint
3808
3809 =item SYNOPSIS
3810
3811 =item DESCRIPTION
3812
3813 =item OPTIONS AND LINT CHECKS
3814
3815 B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
3816 B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
3817
3818 =item NON LINT-CHECK OPTIONS
3819
3820 B<-u Package>
3821
3822 =item BUGS
3823
3824 =item AUTHOR
3825
3826 =head2 B::O, O - Generic interface to Perl Compiler backends
3827
3828 =item SYNOPSIS
3829
3830 =item DESCRIPTION
3831
3832 =item CONVENTIONS
3833
3834 =item IMPLEMENTATION
3835
3836 =item AUTHOR
3837
3838 =head2 B::Showlex - Show lexical variables used in functions or files
3839
3840 =item SYNOPSIS
3841
3842 =item DESCRIPTION
3843
3844 =item AUTHOR
3845
3846 =head2 B::Stackobj - Helper module for CC backend
3847
3848 =item SYNOPSIS
3849
3850 =item DESCRIPTION
3851
3852 =item AUTHOR
3853
3854 =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
3855
3856 =item SYNOPSIS
3857
3858 =item DESCRIPTION
3859
3860 =item AUTHOR
3861
3862 =head2 B::Xref - Generates cross reference reports for Perl programs
3863
3864 =item SYNOPSIS
3865
3866 =item DESCRIPTION
3867
3868 =item OPTIONS
3869
3870 C<-oFILENAME>, C<-r>, C<-D[tO]>
3871
3872 =item BUGS
3873
3874 =item AUTHOR
3875
3876 =head2 Bblock, B::Bblock - Walk basic blocks
3877
3878 =item SYNOPSIS
3879
3880 =item DESCRIPTION
3881
3882 =item AUTHOR
3883
3884 =head2 Benchmark - benchmark running times of code
3885
3886 =item SYNOPSIS
3887
3888 =item DESCRIPTION
3889
3890 =over
3891
3892 =item Methods
3893
3894 new, debug
3895
3896 =item Standard Exports
3897
3898 timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
3899 timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timesum (
3900 T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] )
3901
3902 =item Optional Exports
3903
3904 clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( )
3905
3906 =back
3907
3908 =item NOTES
3909
3910 =item INHERITANCE
3911
3912 =item CAVEATS
3913
3914 =item AUTHORS
3915
3916 =item MODIFICATION HISTORY
3917
3918 =head2 ByteLoader - load byte compiled perl code
3919
3920 =item SYNOPSIS
3921
3922 =item DESCRIPTION
3923
3924 =item AUTHOR
3925
3926 =item SEE ALSO
3927
3928 =head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend
3929
3930 =item SYNOPSIS
3931
3932 =item DESCRIPTION
3933
3934 =item OPTIONS
3935
3936 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3937 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3938 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3939
3940 =item EXAMPLES
3941
3942 =item BUGS
3943
3944 =item AUTHOR
3945
3946 =head2 CGI - Simple Common Gateway Interface Class
3947
3948 =item SYNOPSIS
3949
3950 =item ABSTRACT
3951
3952 =item DESCRIPTION
3953
3954 =over
3955
3956 =item PROGRAMMING STYLE
3957
3958 =item CALLING CGI.PM ROUTINES
3959
3960 1. Use another name for the argument, if one is available.  Forexample,
3961 -value is an alias for -values, 2. Change the capitalization, e.g. -Values,
3962 3. Put quotes around the argument name, e.g. '-values'
3963
3964 =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
3965
3966 =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
3967
3968 =item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
3969
3970 =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
3971
3972 =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
3973
3974 =item SETTING THE VALUE(S) OF A NAMED PARAMETER:
3975
3976 =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
3977
3978 =item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
3979
3980 =item DELETING A PARAMETER COMPLETELY:
3981
3982 =item DELETING ALL PARAMETERS:
3983
3984 =item DIRECT ACCESS TO THE PARAMETER LIST:
3985
3986 =item FETCHING THE PARAMETER LIST AS A HASH:
3987
3988 =item SAVING THE STATE OF THE SCRIPT TO A FILE:
3989
3990 =item RETRIEVING CGI ERRORS
3991
3992 =item USING THE FUNCTION-ORIENTED INTERFACE
3993
3994 B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
3995 B<:standard>, B<:all>
3996
3997 =item PRAGMAS
3998
3999 -any, -compile, -nph, -newstyle_urls, -autoload, -no_debug,
4000 -private_tempfiles
4001
4002 =item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS
4003
4004 1. start_table() (generates a <TABLE> tag), 2. end_table() (generates a
4005 </TABLE> tag), 3. start_ul() (generates a <UL> tag), 4. end_ul() (generates
4006 a </UL> tag)
4007
4008 =back
4009
4010 =item GENERATING DYNAMIC DOCUMENTS
4011
4012 =over
4013
4014 =item CREATING A STANDARD HTTP HEADER:
4015
4016 =item GENERATING A REDIRECTION HEADER
4017
4018 =item CREATING THE HTML DOCUMENT HEADER
4019
4020 B<Parameters:>, 4, 5, 6..
4021
4022 =item ENDING THE HTML DOCUMENT:
4023
4024 =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
4025
4026 =item OBTAINING THE SCRIPT'S URL
4027
4028 B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
4029 (B<-query_string>)
4030
4031 =item MIXING POST AND URL PARAMETERS
4032
4033 =back
4034
4035 =item CREATING STANDARD HTML ELEMENTS:
4036
4037 =over
4038
4039 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS
4040
4041 =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
4042
4043 =item HTML SHORTCUTS AND LIST INTERPOLATION
4044
4045 =item NON-STANDARD HTML SHORTCUTS
4046
4047 =item PRETTY-PRINTING HTML
4048
4049 =back
4050
4051 =item CREATING FILL-OUT FORMS:
4052
4053 =over
4054
4055 =item CREATING AN ISINDEX TAG
4056
4057 =item STARTING AND ENDING A FORM
4058
4059 B<application/x-www-form-urlencoded>, B<multipart/form-data>
4060
4061 =item CREATING A TEXT FIELD
4062
4063 B<Parameters>
4064
4065 =item CREATING A BIG TEXT FIELD
4066
4067 =item CREATING A PASSWORD FIELD
4068
4069 =item CREATING A FILE UPLOAD FIELD
4070
4071 B<Parameters>
4072
4073 =item CREATING A POPUP MENU
4074
4075 =item CREATING A SCROLLING LIST
4076
4077 B<Parameters:>
4078
4079 =item CREATING A GROUP OF RELATED CHECKBOXES
4080
4081 B<Parameters:>
4082
4083 =item CREATING A STANDALONE CHECKBOX
4084
4085 B<Parameters:>
4086
4087 =item CREATING A RADIO BUTTON GROUP
4088
4089 B<Parameters:>
4090
4091 =item CREATING A SUBMIT BUTTON 
4092
4093 B<Parameters:>
4094
4095 =item CREATING A RESET BUTTON
4096
4097 =item CREATING A DEFAULT BUTTON
4098
4099 =item CREATING A HIDDEN FIELD
4100
4101 B<Parameters:>
4102
4103 =item CREATING A CLICKABLE IMAGE BUTTON
4104
4105 B<Parameters:>, 3.The third option (-align, optional) is an alignment type,
4106 and may be
4107 TOP, BOTTOM or MIDDLE
4108
4109 =item CREATING A JAVASCRIPT ACTION BUTTON
4110
4111 =back
4112
4113 =item HTTP COOKIES
4114
4115 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag,
4116 B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure>
4117
4118 =item WORKING WITH FRAMES
4119
4120 1. Create a <Frameset> document, 2. Specify the destination for the
4121 document in the HTTP header, 3. Specify the destination for the document in
4122 the <FORM> tag
4123
4124 =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS
4125
4126 =item DEBUGGING
4127
4128 =over
4129
4130 =item DUMPING OUT ALL THE NAME/VALUE PAIRS
4131
4132 =back
4133
4134 =item FETCHING ENVIRONMENT VARIABLES
4135
4136 B<Accept()>, B<raw_cookie()>, B<user_agent()>, B<path_info()>,
4137 B<path_translated()>, B<remote_host()>, B<script_name()>Return the script
4138 name as a partial URL, for self-refering
4139 scripts, B<referer()>, B<auth_type ()>, B<server_name ()>, B<virtual_host
4140 ()>, B<server_software ()>, B<remote_user ()>, B<user_name ()>,
4141 B<request_method()>, B<content_type()>, B<http()>, B<https()>
4142
4143 =item USING NPH SCRIPTS
4144
4145 In the B<use> statement, By calling the B<nph()> method:, By using B<-nph>
4146 parameters in the B<header()> and B<redirect()>  statements:
4147
4148 =item Server Push
4149
4150 multipart_init()     
4151   multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end()
4152
4153 =item Avoiding Denial of Service Attacks
4154
4155 B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script
4156 basis>, B<2. Globally for all scripts>
4157
4158 =item COMPATIBILITY WITH CGI-LIB.PL
4159
4160 =item AUTHOR INFORMATION
4161
4162 =item CREDITS
4163
4164 Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor
4165 (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell
4166 (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg
4167 (jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick
4168 (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis
4169 (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen
4170 (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim
4171 MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks
4172 (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed
4173 Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug
4174 MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org),
4175 ...and many many more..
4176
4177 =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
4178
4179 =item BUGS
4180
4181 =item SEE ALSO
4182
4183 =head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API
4184
4185 =item SYNOPSIS
4186
4187 =item DESCRIPTION
4188
4189 =item NOTE 1
4190
4191 =item NOTE 2
4192
4193 =item SEE ALSO
4194
4195 =item AUTHOR
4196
4197 =head2 CGI::Carp, B<CGI::Carp> - CGI routines for writing to the HTTPD (or
4198 other) error log
4199
4200 =item SYNOPSIS
4201
4202 =item DESCRIPTION
4203
4204 =item REDIRECTING ERROR MESSAGES
4205
4206 =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW
4207
4208 =over
4209
4210 =item Changing the default message
4211
4212 =back
4213
4214 =item CHANGE LOG
4215
4216 =item AUTHORS
4217
4218 =item SEE ALSO
4219
4220 =head2 CGI::Cookie - Interface to Netscape Cookies
4221
4222 =item SYNOPSIS
4223
4224 =item DESCRIPTION
4225
4226 =item USING CGI::Cookie
4227
4228 B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag>
4229
4230 =over
4231
4232 =item Creating New Cookies
4233
4234 =item Sending the Cookie to the Browser
4235
4236 =item Recovering Previous Cookies
4237
4238 =item Manipulating Cookies
4239
4240 B<name()>, B<value()>, B<domain()>, B<path()>, B<expires()>
4241
4242 =back
4243
4244 =item AUTHOR INFORMATION
4245
4246 =item BUGS
4247
4248 =item SEE ALSO
4249
4250 =head2 CGI::Fast - CGI Interface for Fast CGI
4251
4252 =item SYNOPSIS
4253
4254 =item DESCRIPTION
4255
4256 =item OTHER PIECES OF THE PUZZLE
4257
4258 =item WRITING FASTCGI PERL SCRIPTS
4259
4260 =item INSTALLING FASTCGI SCRIPTS
4261
4262 =item USING FASTCGI SCRIPTS AS CGI SCRIPTS
4263
4264 =item CAVEATS
4265
4266 =item AUTHOR INFORMATION
4267
4268 =item BUGS
4269
4270 =item SEE ALSO
4271
4272 =head2 CGI::Push - Simple Interface to Server Push
4273
4274 =item SYNOPSIS
4275
4276 =item DESCRIPTION
4277
4278 =item USING CGI::Push
4279
4280 -next_page, -last_page, -type, -delay, -cookie, -target, -expires
4281
4282 =over
4283
4284 =item Heterogeneous Pages
4285
4286 =item Changing the Page Delay on the Fly
4287
4288 =back
4289
4290 =item INSTALLING CGI::Push SCRIPTS
4291
4292 =item AUTHOR INFORMATION
4293
4294 =item BUGS
4295
4296 =item SEE ALSO
4297
4298 =head2 CGI::Switch - Try more than one constructors and return the first
4299 object available
4300
4301 =item SYNOPSIS
4302
4303 =item DESCRIPTION
4304
4305 =item SEE ALSO
4306
4307 =item AUTHOR
4308
4309 =head2 CPAN - query, download and build perl modules from CPAN sites
4310
4311 =item SYNOPSIS
4312
4313 =item DESCRIPTION
4314
4315 =over
4316
4317 =item Interactive Mode
4318
4319 Searching for authors, bundles, distribution files and modules, make, test,
4320 install, clean  modules or distributions, readme, look module or
4321 distribution, Signals
4322
4323 =item CPAN::Shell
4324
4325 =item autobundle
4326
4327 =item recompile
4328
4329 =item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
4330
4331 =item ProgrammerE<39>s interface
4332
4333 expand($type,@things), Programming Examples
4334
4335 =item Methods in the four Classes
4336
4337 =item Cache Manager
4338
4339 =item Bundles
4340
4341 =item Prerequisites
4342
4343 =item Finding packages and VERSION
4344
4345 =item Debugging
4346
4347 =item Floppy, Zip, Offline Mode
4348
4349 =back
4350
4351 =item CONFIGURATION
4352
4353 o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
4354 E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
4355 [shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
4356 E<lt>listE<gt>
4357
4358 =over
4359
4360 =item Note on urllist parameter's format
4361
4362 =item urllist parameter has CD-ROM support
4363
4364 =back
4365
4366 =item SECURITY
4367
4368 =item EXPORT
4369
4370 =item POPULATE AN INSTALLATION WITH LOTS OF MODULES
4371
4372 =item WORKING WITH CPAN.pm BEHIND FIREWALLS
4373
4374 http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
4375
4376 =item BUGS
4377
4378 =item AUTHOR
4379
4380 =item SEE ALSO
4381
4382 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
4383
4384 =item SYNOPSIS
4385
4386 =item DESCRIPTION
4387
4388 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
4389 module
4390
4391 =item SYNOPSIS
4392
4393 =item DESCRIPTION
4394
4395 =item  SEE ALSO
4396
4397 =head2 Carp, carp    - warn of errors (from perspective of caller)
4398
4399 =item SYNOPSIS
4400
4401 =item DESCRIPTION
4402
4403 =over
4404
4405 =item Forcing a Stack Trace
4406
4407 =back
4408
4409 =item BUGS
4410
4411 =head2 Class::Struct - declare struct-like datatypes as Perl classes
4412
4413 =item SYNOPSIS
4414
4415 =item DESCRIPTION
4416
4417 =over
4418
4419 =item The C<struct()> function
4420
4421 =item Element Types and Accessor Methods
4422
4423 Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or
4424 C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>)
4425
4426 =item Initializing with C<new>
4427
4428 =back
4429
4430 =item EXAMPLES
4431
4432 Example 1, Example 2, Example 3
4433
4434 =item Author and Modification History
4435
4436 =head2 Config - access Perl configuration information
4437
4438 =item SYNOPSIS
4439
4440 =item DESCRIPTION
4441
4442 myconfig(), config_sh(), config_vars(@names)
4443
4444 =item EXAMPLE
4445
4446 =item WARNING
4447
4448 =item GLOSSARY
4449
4450 =over
4451
4452 =item _
4453
4454 C<_a>, C<_exe>, C<_o>
4455
4456 =item a
4457
4458 C<afs>, C<alignbytes>, C<ansi2knr>, C<aphostname>, C<apiversion>, C<ar>,
4459 C<archlib>, C<archlibexp>, C<archname64>, C<archname>, C<archobjs>, C<awk>
4460
4461 =item b
4462
4463 C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>, C<byacc>, C<byteorder>
4464
4465 =item c
4466
4467 C<c>, C<castflags>, C<cat>, C<cc>, C<cccdlflags>, C<ccdlflags>, C<ccflags>,
4468 C<ccsymbols>, C<cf_by>, C<cf_email>, C<cf_time>, C<chgrp>, C<chmod>,
4469 C<chown>, C<clocktype>, C<comm>, C<compress>, C<contains>, C<cp>, C<cpio>,
4470 C<cpp>, C<cpp_stuff>, C<cppccsymbols>, C<cppflags>, C<cpplast>,
4471 C<cppminus>, C<cpprun>, C<cppstdin>, C<cppsymbols>, C<crosscompile>,
4472 C<cryptlib>, C<csh>
4473
4474 =item d
4475
4476 C<d_access>, C<d_accessx>, C<d_alarm>, C<d_archlib>, C<d_attribut>,
4477 C<d_bcmp>, C<d_bcopy>, C<d_bsd>, C<d_bsdgetpgrp>, C<d_bsdsetpgrp>,
4478 C<d_bzero>, C<d_casti32>, C<d_castneg>, C<d_charvspr>, C<d_chown>,
4479 C<d_chroot>, C<d_chsize>, C<d_closedir>, C<d_cmsghdr_s>, C<d_const>,
4480 C<d_crypt>, C<d_csh>, C<d_cuserid>, C<d_dbl_dig>, C<d_dbmclose64>,
4481 C<d_dbminit64>, C<d_delete64>, C<d_difftime>, C<d_dirent64_s>,
4482 C<d_dirnamlen>, C<d_dlerror>, C<d_dlopen>, C<d_dlsymun>, C<d_dosuid>,
4483 C<d_drand48proto>, C<d_dup2>, C<d_eaccess>, C<d_endgrent>, C<d_endhent>,
4484 C<d_endnent>, C<d_endpent>, C<d_endpwent>, C<d_endsent>, C<d_eofnblk>,
4485 C<d_eunice>, C<d_fchmod>, C<d_fchown>, C<d_fcntl>, C<d_fd_macros>,
4486 C<d_fd_set>, C<d_fds_bits>, C<d_fetch64>, C<d_fgetpos64>, C<d_fgetpos>,
4487 C<d_firstkey64>, C<d_flexfnam>, C<d_flock64_s>, C<d_flock>, C<d_fopen64>,
4488 C<d_fork>, C<d_fpathconf>, C<d_freopen64>, C<d_fseek64>, C<d_fseeko64>,
4489 C<d_fseeko>, C<d_fsetpos64>, C<d_fsetpos>, C<d_fstat64>, C<d_fstatfs>,
4490 C<d_fstatvfs>, C<d_ftell64>, C<d_ftello64>, C<d_ftello>, C<d_ftime>,
4491 C<d_ftruncate64>, C<d_Gconvert>, C<d_getgrent>, C<d_getgrps>,
4492 C<d_gethbyaddr>, C<d_gethbyname>, C<d_gethent>, C<d_gethname>,
4493 C<d_gethostprotos>, C<d_getlogin>, C<d_getmntent>, C<d_getnbyaddr>,
4494 C<d_getnbyname>, C<d_getnent>, C<d_getnetprotos>, C<d_getpbyname>,
4495 C<d_getpbynumber>, C<d_getpent>, C<d_getpgid>, C<d_getpgrp2>, C<d_getpgrp>,
4496 C<d_getppid>, C<d_getprior>, C<d_getprotoprotos>, C<d_getpwent>,
4497 C<d_getsbyname>, C<d_getsbyport>, C<d_getsent>, C<d_getservprotos>,
4498 C<d_gettimeod>, C<d_gnulibc>, C<d_grpasswd>, C<d_hasmntopt>, C<d_htonl>,
4499 C<d_index>, C<d_inetaton>, C<d_ino64_t>, C<d_int64t>, C<d_iovec_s>,
4500 C<d_isascii>, C<d_killpg>, C<d_lchown>, C<d_link>, C<d_llseek>,
4501 C<d_locconv>, C<d_lockf64>, C<d_lockf>, C<d_longdbl>, C<d_longlong>,
4502 C<d_lseek64>, C<d_lstat64>, C<d_lstat>, C<d_madvise>, C<d_mblen>,
4503 C<d_mbstowcs>, C<d_mbtowc>, C<d_memchr>, C<d_memcmp>, C<d_memcpy>,
4504 C<d_memmove>, C<d_memset>, C<d_mkdir>, C<d_mkfifo>, C<d_mktime>, C<d_mmap>,
4505 C<d_mprotect>, C<d_msg>, C<d_msg_ctrunc>, C<d_msg_dontroute>, C<d_msg_oob>,
4506 C<d_msg_peek>, C<d_msg_proxy>, C<d_msgctl>, C<d_msgget>, C<d_msghdr_s>,
4507 C<d_msgrcv>, C<d_msgsnd>, C<d_msync>, C<d_munmap>, C<d_mymalloc>,
4508 C<d_nextkey64>, C<d_nice>, C<d_off64_t>, C<d_offset_t>,
4509 C<d_old_pthread_create_joinable>, C<d_oldpthreads>, C<d_oldsock>,
4510 C<d_open3>, C<d_open64>, C<d_opendir64>, C<d_pathconf>, C<d_pause>,
4511 C<d_phostname>, C<d_pipe>, C<d_poll>, C<d_portable>, C<d_pthread_yield>,
4512 C<d_pwage>, C<d_pwchange>, C<d_pwclass>, C<d_pwcomment>, C<d_pwexpire>,
4513 C<d_pwgecos>, C<d_pwpasswd>, C<d_pwquota>, C<d_readdir64>, C<d_readdir>,
4514 C<d_readlink>, C<d_readv>, C<d_recvmsg>, C<d_rename>, C<d_rewinddir>,
4515 C<d_rmdir>, C<d_safebcpy>, C<d_safemcpy>, C<d_sanemcmp>, C<d_sched_yield>,
4516 C<d_scm_rights>, C<d_seekdir64>, C<d_seekdir>, C<d_select>, C<d_sem>,
4517 C<d_semctl>, C<d_semctl_semid_ds>, C<d_semctl_semun>, C<d_semget>,
4518 C<d_semop>, C<d_sendmsg>, C<d_setegid>, C<d_seteuid>, C<d_setgrent>,
4519 C<d_setgrps>, C<d_sethent>, C<d_setlinebuf>, C<d_setlocale>, C<d_setnent>,
4520 C<d_setpent>, C<d_setpgid>, C<d_setpgrp2>, C<d_setpgrp>, C<d_setprior>,
4521 C<d_setpwent>, C<d_setregid>, C<d_setresgid>, C<d_setresuid>,
4522 C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>, C<d_setsid>,
4523 C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>, C<d_shmatprototype>,
4524 C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>, C<d_sigsetjmp>,
4525 C<d_socket>, C<d_sockpair>, C<d_stat64>, C<d_statblks>, C<d_statfs>,
4526 C<d_statfsflags>, C<d_statvfs>, C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>,
4527 C<d_stdio_stream_array>, C<d_stdiobase>, C<d_stdstdio>, C<d_store64>,
4528 C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>, C<d_strerror>,
4529 C<d_strtod>, C<d_strtol>, C<d_strtoul>, C<d_strxfrm>, C<d_suidsafe>,
4530 C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>,
4531 C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir64>, C<d_telldir>,
4532 C<d_telldirproto>, C<d_time>, C<d_times>, C<d_tmpfile64>, C<d_truncate64>,
4533 C<d_truncate>, C<d_tzname>, C<d_umask>, C<d_uname>, C<d_union_semun>,
4534 C<d_vfork>, C<d_void_closedir>, C<d_voidsig>, C<d_voidtty>, C<d_volatile>,
4535 C<d_vprintf>, C<d_wait4>, C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>,
4536 C<d_writev>, C<d_xenix>, C<date>, C<db_hashtype>, C<db_prefixtype>,
4537 C<defvoidused>, C<direntrytype>, C<dlext>, C<dlsrc>, C<doublesize>,
4538 C<drand01>, C<dynamic_ext>
4539
4540 =item e
4541
4542 C<eagain>, C<ebcdic>, C<echo>, C<egrep>, C<emacs>, C<eunicefix>,
4543 C<exe_ext>, C<expr>, C<extensions>
4544
4545 =item f
4546
4547 C<fflushall>, C<fflushNULL>, C<find>, C<firstmakefile>, C<flex>,
4548 C<fpostype>, C<freetype>, C<full_ar>, C<full_csh>, C<full_sed>
4549
4550 =item g
4551
4552 C<gccversion>, C<gidtype>, C<glibpth>, C<grep>, C<groupcat>, C<groupstype>,
4553 C<gzip>
4554
4555 =item h
4556
4557 C<h_fcntl>, C<h_sysfile>, C<hint>, C<hostcat>, C<huge>
4558
4559 =item i
4560
4561 C<i_arpainet>, C<i_bsdioctl>, C<i_db>, C<i_dbm>, C<i_dirent>, C<i_dld>,
4562 C<i_dlfcn>, C<i_fcntl>, C<i_float>, C<i_gdbm>, C<i_grp>, C<i_inttypes>,
4563 C<i_limits>, C<i_locale>, C<i_machcthr>, C<i_malloc>, C<i_math>,
4564 C<i_memory>, C<i_mntent>, C<i_ndbm>, C<i_netdb>, C<i_neterrno>,
4565 C<i_netinettcp>, C<i_niin>, C<i_poll>, C<i_pthread>, C<i_pwd>,
4566 C<i_rpcsvcdbm>, C<i_sfio>, C<i_sgtty>, C<i_stdarg>, C<i_stddef>,
4567 C<i_stdlib>, C<i_string>, C<i_sysaccess>, C<i_sysdir>, C<i_sysfile>,
4568 C<i_sysfilio>, C<i_sysin>, C<i_sysioctl>, C<i_sysmman>, C<i_sysmount>,
4569 C<i_sysndir>, C<i_sysparam>, C<i_sysresrc>, C<i_syssecrt>, C<i_sysselct>,
4570 C<i_syssockio>, C<i_sysstat>, C<i_sysstatvfs>, C<i_systime>, C<i_systimek>,
4571 C<i_systimes>, C<i_systypes>, C<i_sysuio>, C<i_sysun>, C<i_syswait>,
4572 C<i_termio>, C<i_termios>, C<i_time>, C<i_unistd>, C<i_utime>, C<i_values>,
4573 C<i_varargs>, C<i_varhdr>, C<i_vfork>, C<ignore_versioned_solibs>,
4574 C<incpath>, C<inews>, C<installarchlib>, C<installbin>, C<installman1dir>,
4575 C<installman3dir>, C<installprivlib>, C<installscript>, C<installsitearch>,
4576 C<installsitelib>, C<installusrbinperl>, C<intsize>
4577
4578 =item k
4579
4580 C<known_extensions>, C<ksh>
4581
4582 =item l
4583
4584 C<large>, C<ld>, C<lddlflags>, C<ldflags>, C<less>, C<lib_ext>, C<libc>,
4585 C<libperl>, C<libpth>, C<libs>, C<libswanted>, C<line>, C<lint>,
4586 C<lkflags>, C<ln>, C<lns>, C<locincpth>, C<loclibpth>, C<longdblsize>,
4587 C<longlongsize>, C<longsize>, C<lp>, C<lpr>, C<ls>, C<lseeksize>,
4588 C<lseektype>
4589
4590 =item m
4591
4592 C<mail>, C<mailx>, C<make>, C<make_set_make>, C<mallocobj>, C<mallocsrc>,
4593 C<malloctype>, C<man1dir>, C<man1direxp>, C<man1ext>, C<man3dir>,
4594 C<man3direxp>, C<man3ext>
4595
4596 =item M
4597
4598 C<Mcc>, C<medium>, C<mips_type>, C<mkdir>, C<mmaptype>, C<models>,
4599 C<modetype>, C<more>, C<multiarch>, C<mv>, C<myarchname>, C<mydomain>,
4600 C<myhostname>, C<myuname>
4601
4602 =item n
4603
4604 C<n>, C<netdb_hlen_type>, C<netdb_host_type>, C<netdb_name_type>,
4605 C<netdb_net_type>, C<nm>, C<nm_opt>, C<nm_so_opt>, C<nonxs_ext>, C<nroff>
4606
4607 =item o
4608
4609 C<o_nonblock>, C<obj_ext>, C<old_pthread_create_joinable>, C<optimize>,
4610 C<orderlib>, C<osname>, C<osvers>
4611
4612 =item p
4613
4614 C<package>, C<pager>, C<passcat>, C<patchlevel>, C<path_sep>, C<perl>,
4615 C<perladmin>, C<perlpath>, C<pg>, C<phostname>, C<pidtype>, C<plibpth>,
4616 C<pmake>, C<pr>, C<prefix>, C<prefixexp>, C<privlib>, C<privlibexp>,
4617 C<prototype>, C<ptrsize>
4618
4619 =item r
4620
4621 C<randbits>, C<randfunc>, C<randseedtype>, C<ranlib>, C<rd_nodata>, C<rm>,
4622 C<rmail>, C<runnm>
4623
4624 =item s
4625
4626 C<sched_yield>, C<scriptdir>, C<scriptdirexp>, C<sed>, C<seedfunc>,
4627 C<selectminbits>, C<selecttype>, C<sendmail>, C<sh>, C<shar>, C<sharpbang>,
4628 C<shmattype>, C<shortsize>, C<shrpenv>, C<shsharp>, C<sig_count>,
4629 C<sig_name>, C<sig_name_init>, C<sig_num>, C<sig_num_init>, C<signal_t>,
4630 C<sitearch>, C<sitearchexp>, C<sitelib>, C<sitelibexp>, C<sizetype>,
4631 C<sleep>, C<smail>, C<small>, C<so>, C<sockethdr>, C<socketlib>, C<sort>,
4632 C<spackage>, C<spitshell>, C<split>, C<src>, C<ssizetype>, C<startperl>,
4633 C<startsh>, C<static_ext>, C<stdchar>, C<stdio_base>, C<stdio_bufsiz>,
4634 C<stdio_cnt>, C<stdio_filbuf>, C<stdio_ptr>, C<stdio_stream_array>,
4635 C<strings>, C<submit>, C<subversion>, C<sysman>
4636
4637 =item t
4638
4639 C<tail>, C<tar>, C<tbl>, C<tee>, C<test>, C<timeincl>, C<timetype>,
4640 C<touch>, C<tr>, C<trnl>, C<troff>
4641
4642 =item u
4643
4644 C<uidtype>, C<uname>, C<uniq>, C<use64bits>, C<usedl>, C<usemultiplicity>,
4645 C<usemymalloc>, C<usenm>, C<useopcode>, C<useperlio>, C<useposix>,
4646 C<usesfio>, C<useshrplib>, C<usethreads>, C<usevfork>, C<usrinc>, C<uuname>
4647
4648 =item v
4649
4650 C<version>, C<vi>, C<voidflags>
4651
4652 =item x
4653
4654 C<xlibpth>
4655
4656 =item z
4657
4658 C<zcat>, C<zip>
4659
4660 =back
4661
4662 =item NOTE
4663
4664 =head2 Cwd, getcwd - get pathname of current working directory
4665
4666 =item SYNOPSIS
4667
4668 =item DESCRIPTION
4669
4670 =head2 DB - programmatic interface to the Perl debugging API (draft,
4671 subject to
4672 change)
4673
4674 =item SYNOPSIS
4675
4676 =item DESCRIPTION
4677
4678 =over
4679
4680 =item Global Variables
4681
4682  $DB::sub,  %DB::sub,  $DB::single,  $DB::signal,  $DB::trace,  @DB::args, 
4683 @DB::dbline,  %DB::dbline,  $DB::package,  $DB::filename,  $DB::subname, 
4684 $DB::lineno
4685
4686 =item API Methods
4687
4688 CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'),
4689 CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done()
4690
4691 =item Client Callback Methods
4692
4693 CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(),
4694 CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(),
4695 CLIENT->output(LIST)
4696
4697 =back
4698
4699 =item BUGS
4700
4701 =item AUTHOR
4702
4703 =head2 DB_File - Perl5 access to Berkeley DB version 1.x
4704
4705 =item SYNOPSIS
4706
4707 =item DESCRIPTION
4708
4709 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
4710
4711 =over
4712
4713 =item Using DB_File with Berkeley DB version 2
4714
4715 =item Interface to Berkeley DB
4716
4717 =item Opening a Berkeley DB Database File
4718
4719 =item Default Parameters
4720
4721 =item In Memory Databases
4722
4723 =back
4724
4725 =item DB_HASH
4726
4727 =over
4728
4729 =item A Simple Example
4730
4731 =back
4732
4733 =item DB_BTREE
4734
4735 =over
4736
4737 =item Changing the BTREE sort order
4738
4739 =item Handling Duplicate Keys 
4740
4741 =item The get_dup() Method
4742
4743 =item The find_dup() Method
4744
4745 =item The del_dup() Method
4746
4747 =item Matching Partial Keys 
4748
4749 =back
4750
4751 =item DB_RECNO
4752
4753 =over
4754
4755 =item The 'bval' Option
4756
4757 =item A Simple Example
4758
4759 =item Extra RECNO Methods
4760
4761 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
4762 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
4763
4764 =item Another Example
4765
4766 =back
4767
4768 =item THE API INTERFACE
4769
4770 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
4771 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
4772 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
4773 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
4774
4775 =item HINTS AND TIPS 
4776
4777 =over
4778
4779 =item Locking Databases
4780
4781 =item Sharing Databases With C Applications
4782
4783 =item The untie() Gotcha
4784
4785 =back
4786
4787 =item COMMON QUESTIONS
4788
4789 =over
4790
4791 =item Why is there Perl source in my database?
4792
4793 =item How do I store complex data structures with DB_File?
4794
4795 =item What does "Invalid Argument" mean?
4796
4797 =item What does "Bareword 'DB_File' not allowed" mean? 
4798
4799 =back
4800
4801 =item HISTORY
4802
4803 =item BUGS
4804
4805 =item AVAILABILITY
4806
4807 =item COPYRIGHT
4808
4809 =item SEE ALSO
4810
4811 =item AUTHOR
4812
4813 =head2 Data::Dumper - stringified perl data structures, suitable for both
4814 printing and C<eval>
4815
4816 =item SYNOPSIS
4817
4818 =item DESCRIPTION
4819
4820 =over
4821
4822 =item Methods
4823
4824 I<PACKAGE>->new(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dump  I<or> 
4825 I<PACKAGE>->Dump(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dumpxs  I<or> 
4826 I<PACKAGE>->Dumpxs(I<ARRAYREF [>, I<ARRAYREF]>),
4827 I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>),
4828 I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset
4829
4830 =item Functions
4831
4832 Dumper(I<LIST>), DumperX(I<LIST>)
4833
4834 =item Configuration Variables or Methods
4835
4836 $Data::Dumper::Indent  I<or>  I<$OBJ>->Indent(I<[NEWVAL]>),
4837 $Data::Dumper::Purity  I<or>  I<$OBJ>->Purity(I<[NEWVAL]>),
4838 $Data::Dumper::Pad  I<or>  I<$OBJ>->Pad(I<[NEWVAL]>),
4839 $Data::Dumper::Varname  I<or>  I<$OBJ>->Varname(I<[NEWVAL]>),
4840 $Data::Dumper::Useqq  I<or>  I<$OBJ>->Useqq(I<[NEWVAL]>),
4841 $Data::Dumper::Terse  I<or>  I<$OBJ>->Terse(I<[NEWVAL]>),
4842 $Data::Dumper::Freezer  I<or>  $I<OBJ>->Freezer(I<[NEWVAL]>),
4843 $Data::Dumper::Toaster  I<or>  $I<OBJ>->Toaster(I<[NEWVAL]>),
4844 $Data::Dumper::Deepcopy  I<or>  $I<OBJ>->Deepcopy(I<[NEWVAL]>),
4845 $Data::Dumper::Quotekeys  I<or>  $I<OBJ>->Quotekeys(I<[NEWVAL]>),
4846 $Data::Dumper::Bless  I<or>  $I<OBJ>->Bless(I<[NEWVAL]>)
4847
4848 =item Exports
4849
4850 Dumper
4851
4852 =back
4853
4854 =item EXAMPLES
4855
4856 =item BUGS
4857
4858 =item AUTHOR
4859
4860 =item VERSION
4861
4862 =item SEE ALSO
4863
4864 =head2 Devel::Peek - A data debugging tool for the XS programmer
4865
4866 =item SYNOPSIS
4867
4868 =item DESCRIPTION
4869
4870 =item EXAMPLES
4871
4872 =over
4873
4874 =item A simple scalar string
4875
4876 =item A simple scalar number
4877
4878 =item A simple scalar with an extra reference
4879
4880 =item A reference to a simple scalar
4881
4882 =item A reference to an array
4883
4884 =item A reference to a hash
4885
4886 =item Dumping a large array or hash
4887
4888 =item A reference to an SV which holds a C pointer
4889
4890 =item A reference to a subroutine
4891
4892 =back
4893
4894 =item EXPORTS
4895
4896 =item BUGS
4897
4898 =item AUTHOR
4899
4900 =item SEE ALSO
4901
4902 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
4903
4904 =item SYNOPSIS
4905
4906 =item DESCRIPTION
4907
4908 =head2 DirHandle - supply object methods for directory handles
4909
4910 =item SYNOPSIS
4911
4912 =item DESCRIPTION
4913
4914 =head2 Dumpvalue - provides screen dump of Perl data.
4915
4916 =item SYNOPSYS
4917
4918 =item DESCRIPTION
4919
4920 =over
4921
4922 =item Creation
4923
4924 C<arrayDepth>, C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>,
4925 C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<tick>, C<HighBit>,
4926 C<printUndef>, C<UsageOnly>, unctrl, subdump, bareStringify, quoteHighBit,
4927 stopDbSignal
4928
4929 =item Methods
4930
4931 dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump,
4932 veryCompact, set, get
4933
4934 =back
4935
4936 =head2 DynaLoader - Dynamically load C libraries into Perl code
4937
4938 =item SYNOPSIS
4939
4940 =item DESCRIPTION
4941
4942 @dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs,
4943 @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(),
4944 dl_load_file(), dl_loadflags(), dl_find_symbol(),
4945 dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(),
4946 bootstrap()
4947
4948 =item AUTHOR
4949
4950 =head2 English - use nice English (or awk) names for ugly punctuation
4951 variables
4952
4953 =item SYNOPSIS
4954
4955 =item DESCRIPTION
4956
4957 =head2 Env - perl module that imports environment variables
4958
4959 =item SYNOPSIS
4960
4961 =item DESCRIPTION
4962
4963 =item AUTHOR
4964
4965 =head2 Errno - System errno constants
4966
4967 =item SYNOPSIS
4968
4969 =item DESCRIPTION
4970
4971 =item AUTHOR
4972
4973 =item COPYRIGHT
4974
4975 =head2 Exporter - Implements default import method for modules
4976
4977 =item SYNOPSIS
4978
4979 =item DESCRIPTION
4980
4981 =over
4982
4983 =item Selecting What To Export
4984
4985 =item Specialised Import Lists
4986
4987 =item Exporting without using Export's import method
4988
4989 =item Module Version Checking
4990
4991 =item Managing Unknown Symbols
4992
4993 =item Tag Handling Utility Functions
4994
4995 =back
4996
4997 =head2 ExtUtils::Command - utilities to replace common UNIX commands in
4998 Makefiles etc.
4999
5000 =item SYNOPSIS
5001
5002 =item DESCRIPTION
5003
5004 cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv
5005 source... destination, cp source... destination, chmod mode files.., mkpath
5006 directory.., test_f file
5007
5008 =item BUGS
5009
5010 =item SEE ALSO 
5011
5012 =item AUTHOR
5013
5014 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
5015
5016 =item SYNOPSIS
5017
5018 =item DESCRIPTION
5019
5020 =item @EXPORT
5021
5022 =item FUNCTIONS
5023
5024 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
5025 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
5026
5027 =item EXAMPLES
5028
5029 =item SEE ALSO
5030
5031 =item AUTHOR
5032
5033 =head2 ExtUtils::Install - install files from here to there
5034
5035 =item SYNOPSIS
5036
5037 =item DESCRIPTION
5038
5039 =head2 ExtUtils::Installed - Inventory management of installed modules
5040
5041 =item SYNOPSIS
5042
5043 =item DESCRIPTION
5044
5045 =item USAGE
5046
5047 =item FUNCTIONS
5048
5049 new(), modules(), files(), directories(), directory_tree(), validate(),
5050 packlist(), version()
5051
5052 =item EXAMPLE
5053
5054 =item AUTHOR
5055
5056 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
5057
5058 =item SYNOPSIS
5059
5060 =item DESCRIPTION
5061
5062 For static extensions, For dynamic extensions, For dynamic extensions
5063
5064 =over
5065
5066 =item EXTRALIBS
5067
5068 =item LDLOADLIBS and LD_RUN_PATH
5069
5070 =item BSLOADLIBS
5071
5072 =back
5073
5074 =item PORTABILITY
5075
5076 =over
5077
5078 =item VMS implementation
5079
5080 =item Win32 implementation
5081
5082 =back
5083
5084 =item SEE ALSO
5085
5086 =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in
5087 ExtUtils::MakeMaker
5088
5089 =item SYNOPSIS
5090
5091 =item DESCRIPTION
5092
5093 canonpath, cflags, manifypods, perl_archive
5094
5095 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
5096 ExtUtils::MakeMaker
5097
5098 =item SYNOPSIS
5099
5100 =item DESCRIPTION
5101
5102 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
5103
5104 =item SYNOPSIS
5105
5106 =item DESCRIPTION
5107
5108 =item METHODS
5109
5110 =over
5111
5112 =item Preloaded methods
5113
5114 canonpath, catdir, catfile, curdir, rootdir, updir
5115
5116 =item SelfLoaded methods
5117
5118 c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
5119 const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
5120 dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
5121 dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
5122 extliblist, file_name_is_absolute, find_perl
5123
5124 =item Methods to actually produce chunks of text for the Makefile
5125
5126 fixin, force (o), guess_name, has_link_code, init_dirscan, init_main,
5127 init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir,
5128 macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command,
5129 maybe_command_in_dirs, needs_linking (o), nicetext, parse_version,
5130 parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd,
5131 perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize
5132 (o), postamble (o), prefixify, processPL (o), realclean (o),
5133 replace_manpage_separator, static (o), static_lib (o), staticmake (o),
5134 subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
5135 (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
5136 writedoc, xs_c (o), xs_cpp (o), xs_o (o), perl_archive, export_list
5137
5138 =back
5139
5140 =item SEE ALSO
5141
5142 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
5143 ExtUtils::MakeMaker
5144
5145 =item SYNOPSIS
5146
5147 =item DESCRIPTION
5148
5149 =over
5150
5151 =item Methods always loaded
5152
5153 eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
5154 rootdir (override), updir (override)
5155
5156 =item SelfLoaded methods
5157
5158 guess_name (override), find_perl (override), path (override), maybe_command
5159 (override), maybe_command_in_dirs (override), perl_script (override),
5160 file_name_is_absolute (override), replace_manpage_separator, init_others
5161 (override), constants (override), cflags (override), const_cccmd
5162 (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
5163 (override), xsubpp_version (override), tools_other (override), dist
5164 (override), c_o (override), xs_c (override), xs_o (override), top_targets
5165 (override), dlsyms (override), dynamic_lib (override), dynamic_bs
5166 (override), static_lib (override), manifypods (override), processPL
5167 (override), installbin (override), subdir_x (override), clean (override),
5168 realclean (override), dist_basics (override), dist_core (override),
5169 dist_dir (override), dist_test (override), install (override), perldepend
5170 (override), makefile (override), test (override), test_via_harness
5171 (override), test_via_script (override), makeaperl (override), nicetext
5172 (override)
5173
5174 =back
5175
5176 =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in
5177 ExtUtils::MakeMaker
5178
5179 =item SYNOPSIS
5180
5181 =item DESCRIPTION
5182
5183 catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o),
5184 canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit
5185 (override), tools_other (o), xs_o (o), top_targets (o), manifypods (o),
5186 dist_ci (o), dist_core (o), pasthru (o)
5187
5188 =head2 ExtUtils::MakeMaker - create an extension Makefile
5189
5190 =item SYNOPSIS
5191
5192 =item DESCRIPTION
5193
5194 =over
5195
5196 =item How To Write A Makefile.PL
5197
5198 =item Default Makefile Behaviour
5199
5200 =item make test
5201
5202 =item make testdb
5203
5204 =item make install
5205
5206 =item PREFIX and LIB attribute
5207
5208 =item AFS users
5209
5210 =item Static Linking of a new Perl Binary
5211
5212 =item Determination of Perl Library and Installation Locations
5213
5214 =item Which architecture dependent directory?
5215
5216 =item Using Attributes and Parameters
5217
5218 AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG,
5219 CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT,
5220 EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, IMPORTS, INC,
5221 INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
5222 INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITEARCH,
5223 INSTALLSITELIB, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
5224 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE,
5225 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
5226 NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
5227 PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM,
5228 PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX,
5229 PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG,
5230 XS_VERSION
5231
5232 =item Additional lowercase attributes
5233
5234 clean, depend, dist, dynamic_lib, linkext, macro, realclean, test,
5235 tool_autosplit
5236
5237 =item Overriding MakeMaker Methods
5238
5239 =item Hintsfile support
5240
5241 =item Distribution Support
5242
5243    make distcheck,    make skipcheck,    make distclean,    make manifest, 
5244   make distdir,    make tardist,    make dist,    make uutardist,    make
5245 shdist,    make zipdist,    make ci
5246
5247 =item Disabling an extension
5248
5249 =back
5250
5251 =item ENVIRONMENT
5252
5253 PERL_MM_OPT
5254
5255 =item SEE ALSO
5256
5257 =item AUTHORS
5258
5259 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
5260
5261 =item SYNOPSIS
5262
5263 =item DESCRIPTION
5264
5265 =item MANIFEST.SKIP
5266
5267 =item EXPORT_OK
5268
5269 =item GLOBAL VARIABLES
5270
5271 =item DIAGNOSTICS
5272
5273 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
5274 C<Added to MANIFEST:> I<file>
5275
5276 =item SEE ALSO
5277
5278 =item AUTHOR
5279
5280 =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
5281
5282 =item SYNOPSIS
5283
5284 =item DESCRIPTION
5285
5286 =item SEE ALSO
5287
5288 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
5289
5290 =item SYNOPSIS
5291
5292 =item DESCRIPTION
5293
5294 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
5295 extension
5296
5297 =item SYNOPSIS
5298
5299 =item DESCRIPTION
5300
5301 DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME
5302
5303 =item AUTHOR
5304
5305 =item REVISION
5306
5307 =head2 ExtUtils::Packlist - manage .packlist files
5308
5309 =item SYNOPSIS
5310
5311 =item DESCRIPTION
5312
5313 =item USAGE
5314
5315 =item FUNCTIONS
5316
5317 new(), read(), write(), validate(), packlist_file()
5318
5319 =item EXAMPLE
5320
5321 =item AUTHOR
5322
5323 =head2 ExtUtils::testlib - add blib/* directories to @INC
5324
5325 =item SYNOPSIS
5326
5327 =item DESCRIPTION
5328
5329 =head2 Fatal - replace functions with equivalents which succeed or die
5330
5331 =item SYNOPSIS
5332
5333 =item DESCRIPTION
5334
5335 =item AUTHOR
5336
5337 =head2 Fcntl - load the C Fcntl.h defines
5338
5339 =item SYNOPSIS
5340
5341 =item DESCRIPTION
5342
5343 =item NOTE
5344
5345 =item EXPORTED SYMBOLS
5346
5347 =head2 File::Basename, fileparse - split a pathname into pieces
5348
5349 =item SYNOPSIS
5350
5351 =item DESCRIPTION
5352
5353 fileparse_set_fstype, fileparse
5354
5355 =item EXAMPLES
5356
5357 C<basename>, C<dirname>
5358
5359 =head2 File::CheckTree, validate - run many filetest checks on a tree
5360
5361 =item SYNOPSIS
5362
5363 =item DESCRIPTION
5364
5365 =head2 File::Compare - Compare files or filehandles
5366
5367 =item SYNOPSIS
5368
5369 =item DESCRIPTION
5370
5371 =item RETURN
5372
5373 =item AUTHOR
5374
5375 =head2 File::Copy - Copy files or filehandles
5376
5377 =item SYNOPSIS
5378
5379 =item DESCRIPTION
5380
5381 =over
5382
5383 =item Special behaviour if C<syscopy> is defined (OS/2, VMS and Win32)
5384
5385 rmscopy($from,$to[,$date_flag])
5386
5387 =back
5388
5389 =item RETURN
5390
5391 =item AUTHOR
5392
5393 =head2 File::DosGlob - DOS like globbing and then some
5394
5395 =item SYNOPSIS
5396
5397 =item DESCRIPTION
5398
5399 =item EXPORTS (by request only)
5400
5401 =item BUGS
5402
5403 =item AUTHOR
5404
5405 =item HISTORY
5406
5407 =item SEE ALSO
5408
5409 =head2 File::Find, find - traverse a file tree
5410
5411 =item SYNOPSIS
5412
5413 =item DESCRIPTION
5414
5415 =item BUGS
5416
5417 =head2 File::Path - create or remove a series of directories
5418
5419 =item SYNOPSIS
5420
5421 =item DESCRIPTION
5422
5423 =item AUTHORS
5424
5425 =head2 File::Spec - portably perform operations on file names
5426
5427 =item SYNOPSIS
5428
5429 =item DESCRIPTION
5430
5431 =item SEE ALSO
5432
5433 =item AUTHORS
5434
5435 =head2 File::Spec::Functions - portably perform operations on file names
5436
5437 =item SYNOPSIS
5438
5439 =item DESCRIPTION
5440
5441 =over
5442
5443 =item Exports
5444
5445 =back
5446
5447 =item SEE ALSO
5448
5449 =head2 File::Spec::Mac - File::Spec for MacOS
5450
5451 =item SYNOPSIS
5452
5453 =item DESCRIPTION
5454
5455 =item METHODS
5456
5457 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5458 file_name_is_absolute, path
5459
5460 =item SEE ALSO
5461
5462 =head2 File::Spec::OS2 - methods for OS/2 file specs
5463
5464 =item SYNOPSIS
5465
5466 =item DESCRIPTION
5467
5468 =head2 File::Spec::Unix - methods used by File::Spec
5469
5470 =item SYNOPSIS
5471
5472 =item DESCRIPTION
5473
5474 =item METHODS
5475
5476 canonpath, catdir, catfile, curdir, devnull, rootdir, tmpdir, updir,
5477 no_upwards, file_name_is_absolute, path, join, splitpath, splitdir,
5478 catpath, abs2rel, rel2abs
5479
5480 =item SEE ALSO
5481
5482 =head2 File::Spec::VMS - methods for VMS file specs
5483
5484 =item SYNOPSIS
5485
5486 =item DESCRIPTION
5487
5488 =over
5489
5490 =item Methods always loaded
5491
5492 catdir, catfile, curdir (override), devnull (override), rootdir (override),
5493 tmpdir (override), updir (override), path (override), file_name_is_absolute
5494 (override)
5495
5496 =back
5497
5498 =item SEE ALSO
5499
5500 =head2 File::Spec::Win32 - methods for Win32 file specs
5501
5502 =item SYNOPSIS
5503
5504 =item DESCRIPTION
5505
5506 devnull, tmpdir, catfile, canonpath, splitpath, splitdir, catpath, abs2rel,
5507 rel2abs
5508
5509 =item SEE ALSO
5510
5511 =head2 File::stat - by-name interface to Perl's built-in stat() functions
5512
5513 =item SYNOPSIS
5514
5515 =item DESCRIPTION
5516
5517 =item NOTE
5518
5519 =item AUTHOR
5520
5521 =head2 FileCache - keep more files open than the system permits
5522
5523 =item SYNOPSIS
5524
5525 =item DESCRIPTION
5526
5527 =item BUGS
5528
5529 =head2 FileHandle - supply object methods for filehandles
5530
5531 =item SYNOPSIS
5532
5533 =item DESCRIPTION
5534
5535 $fh->print, $fh->printf, $fh->getline, $fh->getlines
5536
5537 =item SEE ALSO
5538
5539 =head2 FindBin - Locate directory of original perl script
5540
5541 =item SYNOPSIS
5542
5543 =item DESCRIPTION
5544
5545 =item EXPORTABLE VARIABLES
5546
5547 =item KNOWN BUGS
5548
5549 =item AUTHORS
5550
5551 =item COPYRIGHT
5552
5553 =head2 GDBM_File - Perl5 access to the gdbm library.
5554
5555 =item SYNOPSIS
5556
5557 =item DESCRIPTION
5558
5559 =item AVAILABILITY
5560
5561 =item BUGS
5562
5563 =item SEE ALSO
5564
5565 =head2 Getopt::Long, GetOptions - extended processing of command line
5566 options
5567
5568 =item SYNOPSIS
5569
5570 =item DESCRIPTION
5571
5572 !, +, :s, :i, :f
5573
5574 =over
5575
5576 =item Linkage specification
5577
5578 =item Aliases and abbreviations
5579
5580 =item Non-option call-back routine
5581
5582 =item Option starters
5583
5584 =item Return values and Errors
5585
5586 =back
5587
5588 =item COMPATIBILITY
5589
5590 =item EXAMPLES
5591
5592 =item CONFIGURATION OPTIONS
5593
5594 default, auto_abbrev, getopt_compat, require_order, permute, bundling
5595 (default: reset), bundling_override (default: reset), ignore_case 
5596 (default: set), ignore_case_always (default: reset), pass_through (default:
5597 reset), prefix, prefix_pattern, debug (default: reset)
5598
5599 =item OTHER USEFUL VARIABLES
5600