4 perltoc - perl documentation table of contents
8 This page provides a brief table of contents for the rest of the Perl
9 documentation set. It is meant to be scanned quickly or grepped
10 through to locate the proper section you're looking for.
12 =head1 BASIC DOCUMENTATION
14 =head2 perl - Practical Extraction and Report Language
20 Many usability enhancements, Simplified grammar, Lexical scoping,
21 Arbitrarily nested data structures, Modularity and reusability,
22 Object-oriented programming, Embeddable and Extensible, POSIX compliant,
23 Package constructors and destructors, Multiple simultaneous DBM
24 implementations, Subroutine definitions may now be autoloaded, Regular
25 expression enhancements, Innumerable Unbundled Modules, Compilability
41 =head2 perlfaq - frequently asked questions about Perl ($Date: 1998/07/20
46 perlfaq: Structural overview of the FAQ, L<perlfaq1>: General Questions
47 About Perl, L<perlfaq2>: Obtaining and Learning about Perl, L<perlfaq3>:
48 Programming Tools, L<perlfaq4>: Data Manipulation, L<perlfaq5>: Files and
49 Formats, L<perlfaq6>: Regexps, L<perlfaq7>: General Perl Language Issues,
50 L<perlfaq8>: System Interaction, L<perlfaq9>: Networking
54 =item Where to get this document
56 =item How to contribute to this document
58 =item What will happen if you mail your Perl programming problems to the
65 =item Author and Copyright Information
69 =item Bundled Distributions
77 24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version,
78 Initial Release: 11/March/97
80 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.14 $, $Date:
81 1998/06/14 22:15:25 $)
89 =item Who supports Perl? Who develops it? Why is it free?
91 =item Which version of Perl should I use?
93 =item What are perl4 and perl5?
95 =item How stable is Perl?
97 =item Is Perl difficult to learn?
99 =item How does Perl compare with other languages like Java, Python, REXX,
102 =item Can I do [task] in Perl?
104 =item When shouldn't I program in Perl?
106 =item What's the difference between "perl" and "Perl"?
108 =item Is it a Perl program or a Perl script?
110 =item What is a JAPH?
112 =item Where can I get a list of Larry Wall witticisms?
114 =item How can I convince my sysadmin/supervisor/employees to use version
115 (5/5.004/Perl instead of some other language)?
119 =item AUTHOR AND COPYRIGHT
121 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.24 $,
122 $Date: 1998/07/20 23:40:28 $)
128 =item What machines support Perl? Where do I get it?
130 =item How can I get a binary version of Perl?
132 =item I don't have a C compiler on my system. How can I compile perl?
134 =item I copied the Perl binary from one machine to another, but scripts
137 =item I grabbed the sources and tried to compile but gdbm/dynamic
138 loading/malloc/linking/... failed. How do I make it work?
140 =item What modules and extensions are available for Perl? What is CPAN?
141 What does CPAN/src/... mean?
143 =item Is there an ISO or ANSI certified version of Perl?
145 =item Where can I get information on Perl?
147 =item What are the Perl newsgroups on USENET? Where do I post questions?
149 =item Where should I post source code?
153 References, Tutorials
154 *Learning Perl [2nd edition]
155 by Randal L. Schwartz and Tom Christiansen, Task-Oriented, Special Topics
157 =item Perl in Magazines
159 =item Perl on the Net: FTP and WWW Access
161 =item What mailing lists are there for perl?
163 MacPerl, Perl5-Porters, NTPerl, Perl-Packrats
165 =item Archives of comp.lang.perl.misc
167 =item Where can I buy a commercial version of Perl?
169 =item Where do I send bug reports?
171 =item What is perl.com? perl.org? The Perl Institute?
173 =item How do I learn about object-oriented Perl programming?
177 =item AUTHOR AND COPYRIGHT
179 =head2 perlfaq3 - Programming Tools ($Revision: 1.28 $, $Date: 1998/07/16
186 =item How do I do (anything)?
188 =item How can I use Perl interactively?
190 =item Is there a Perl shell?
192 =item How do I debug my Perl programs?
194 =item How do I profile my Perl programs?
196 =item How do I cross-reference my Perl programs?
198 =item Is there a pretty-printer (formatter) for Perl?
200 =item Is there a ctags for Perl?
202 =item Where can I get Perl macros for vi?
204 =item Where can I get perl-mode for emacs?
206 =item How can I use curses with Perl?
208 =item How can I use X or Tk with Perl?
210 =item How can I generate simple menus without using CGI or Tk?
212 =item What is undump?
214 =item How can I make my Perl program run faster?
216 =item How can I make my Perl program take less memory?
218 =item Is it unsafe to return a pointer to local data?
220 =item How can I free an array or hash so my program shrinks?
222 =item How can I make my CGI script more efficient?
224 =item How can I hide the source for my Perl program?
226 =item How can I compile my Perl program into byte code or C?
228 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
230 =item Can I write useful perl programs on the command line?
232 =item Why don't perl one-liners work on my DOS/Mac/VMS system?
234 =item Where can I learn about CGI or Web programming in Perl?
236 =item Where can I learn about object-oriented Perl programming?
238 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
240 =item I've read perlembed, perlguts, etc., but I can't embed perl in
241 my C program, what am I doing wrong?
243 =item When I tried to run my script, I got this message. What does it
246 =item What's MakeMaker?
250 =item AUTHOR AND COPYRIGHT
252 =head2 perlfaq4 - Data Manipulation ($Revision: 1.25 $, $Date: 1998/07/16
261 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
262 numbers I should be getting (eg, 19.95)?
264 =item Why isn't my octal data interpreted correctly?
266 =item Does perl have a round function? What about ceil() and floor()?
269 =item How do I convert bits into ints?
271 =item How do I multiply matrices?
273 =item How do I perform an operation on a series of integers?
275 =item How can I output Roman numerals?
277 =item Why aren't my random numbers random?
285 =item How do I find the week-of-the-year/day-of-the-year?
287 =item How can I compare two dates and find the difference?
289 =item How can I take a string and turn it into epoch seconds?
291 =item How can I find the Julian Day?
293 =item Does Perl have a year 2000 problem? Is Perl Y2K compliant?
301 =item How do I validate input?
303 =item How do I unescape a string?
305 =item How do I remove consecutive pairs of characters?
307 =item How do I expand function calls in a string?
309 =item How do I find matching/nesting anything?
311 =item How do I reverse a string?
313 =item How do I expand tabs in a string?
315 =item How do I reformat a paragraph?
317 =item How can I access/change the first N letters of a string?
319 =item How do I change the Nth occurrence of something?
321 =item How can I count the number of occurrences of a substring within a
324 =item How do I capitalize all the words on one line?
326 =item How can I split a [character] delimited string except when inside
327 [character]? (Comma-separated files)
329 =item How do I strip blank space from the beginning/end of a string?
331 =item How do I extract selected columns from a string?
333 =item How do I find the soundex value of a string?
335 =item How can I expand variables in text strings?
337 =item What's wrong with always quoting "$vars"?
339 =item Why don't my <<HERE documents work?
341 1. There must be no space after the << part, 2. There (probably) should be
342 a semicolon at the end, 3. You can't (easily) have any space in front of
351 =item What is the difference between $array[1] and @array[1]?
353 =item How can I extract just the unique elements of an array?
355 a) If @in is sorted, and you want @out to be sorted:(this assumes all true
356 values in the array), b) If you don't know whether @in is sorted:, c) Like
357 (b), but @in contains only small integers:, d) A way to do (b) without any
358 loops or greps:, e) Like (d), but @in contains only small positive
361 =item How can I tell whether a list or array contains a certain element?
363 =item How do I compute the difference of two arrays? How do I compute the
364 intersection of two arrays?
366 =item How do I find the first array element for which a condition is true?
368 =item How do I handle linked lists?
370 =item How do I handle circular lists?
372 =item How do I shuffle an array randomly?
374 =item How do I process/modify each element of an array?
376 =item How do I select a random element from an array?
378 =item How do I permute N elements of a list?
380 =item How do I sort an array by (anything)?
382 =item How do I manipulate arrays of bits?
384 =item Why does defined() return true on empty arrays and hashes?
388 =item Data: Hashes (Associative Arrays)
392 =item How do I process an entire hash?
394 =item What happens if I add or remove keys from a hash while iterating over
397 =item How do I look up a hash element by value?
399 =item How can I know how many entries are in a hash?
401 =item How do I sort a hash (optionally by value instead of key)?
403 =item How can I always keep my hash sorted?
405 =item What's the difference between "delete" and "undef" with hashes?
407 =item Why don't my tied hashes make the defined/exists distinction?
409 =item How do I reset an each() operation part-way through?
411 =item How can I get the unique keys from two hashes?
413 =item How can I store a multidimensional array in a DBM file?
415 =item How can I make my hash remember the order I put elements into it?
417 =item Why does passing a subroutine an undefined element in a hash create
420 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
421 array of hashes or arrays?
423 =item How can I use a reference as a hash key?
431 =item How do I handle binary data correctly?
433 =item How do I determine whether a scalar is a number/whole/integer/float?
435 =item How do I keep persistent data across program calls?
437 =item How do I print out or copy a recursive data structure?
439 =item How do I define methods for every class/object?
441 =item How do I verify a credit card checksum?
445 =item AUTHOR AND COPYRIGHT
447 =head2 perlfaq5 - Files and Formats ($Revision: 1.24 $, $Date: 1998/07/05
454 =item How do I flush/unbuffer an output filehandle? Why must I do this?
456 =item How do I change one line in a file/delete a line in a file/insert a
457 line in the middle of a file/append to the beginning of a file?
459 =item How do I count the number of lines in a file?
461 =item How do I make a temporary file name?
463 =item How can I manipulate fixed-record-length files?
465 =item How can I make a filehandle local to a subroutine? How do I pass
466 filehandles between subroutines? How do I make an array of filehandles?
468 =item How can I use a filehandle indirectly?
470 =item How can I set up a footer format to be used with write()?
472 =item How can I write() into a string?
474 =item How can I output my numbers with commas added?
476 =item How can I translate tildes (~) in a filename?
478 =item How come when I open a file read-write it wipes it out?
480 =item Why do I sometimes get an "Argument list too long" when I use <*>?
482 =item Is there a leak/bug in glob()?
484 =item How can I open a file with a leading "E<gt>" or trailing blanks?
486 =item How can I reliably rename a file?
488 =item How can I lock a file?
490 =item What can't I just open(FH, ">file.lock")?
492 =item I still don't get locking. I just want to increment the number in
493 the file. How can I do this?
495 =item How do I randomly update a binary file?
497 =item How do I get a file's timestamp in perl?
499 =item How do I set a file's timestamp in perl?
501 =item How do I print to more than one file at once?
503 =item How can I read in a file by paragraphs?
505 =item How can I read a single character from a file? From the keyboard?
507 =item How can I tell if there's a character waiting on a filehandle?
509 =item How do I do a C<tail -f> in perl?
511 =item How do I dup() a filehandle in Perl?
513 =item How do I close a file descriptor by number?
515 =item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
516 `C:\temp\foo.exe` work?
518 =item Why doesn't glob("*.*") get all the files?
520 =item Why does Perl let me delete read-only files? Why does C<-i> clobber
521 protected files? Isn't this a bug in Perl?
523 =item How do I select a random line from a file?
527 =item AUTHOR AND COPYRIGHT
529 =head2 perlfaq6 - Regexps ($Revision: 1.22 $, $Date: 1998/07/16 14:01:07 $)
535 =item How can I hope to use regular expressions without creating illegible
536 and unmaintainable code?
538 Comments Outside the Regexp, Comments Inside the Regexp, Different
541 =item I'm having trouble matching over more than one line. What's wrong?
543 =item How can I pull out lines between two patterns that are themselves on
546 =item I put a regular expression into $/ but it didn't work. What's wrong?
548 =item How do I substitute case insensitively on the LHS, but preserving
551 =item How can I make C<\w> match national character sets?
553 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
555 =item How can I quote a variable to use in a regexp?
557 =item What is C</o> really for?
559 =item How do I use a regular expression to strip C style comments from a
562 =item Can I use Perl regular expressions to match balanced text?
564 =item What does it mean that regexps are greedy? How can I get around it?
566 =item How do I process each word on each line?
568 =item How can I print out a word-frequency or line-frequency summary?
570 =item How can I do approximate matching?
572 =item How do I efficiently match many regular expressions at once?
574 =item Why don't word-boundary searches with C<\b> work for me?
576 =item Why does using $&, $`, or $' slow my program down?
578 =item What good is C<\G> in a regular expression?
580 =item Are Perl regexps DFAs or NFAs? Are they POSIX compliant?
582 =item What's wrong with using grep or map in a void context?
584 =item How can I match strings with multibyte characters?
588 =item AUTHOR AND COPYRIGHT
590 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.21 $, $Date:
591 1998/06/22 15:20:07 $)
597 =item Can I get a BNF/yacc/RE for the Perl language?
599 =item What are all these $@%* punctuation signs, and how do I know when to
602 =item Do I always/never have to quote my strings or use semicolons and
605 =item How do I skip some return values?
607 =item How do I temporarily block warnings?
609 =item What's an extension?
611 =item Why do Perl operators have different precedence than C operators?
613 =item How do I declare/create a structure?
615 =item How do I create a module?
617 =item How do I create a class?
619 =item How can I tell if a variable is tainted?
621 =item What's a closure?
623 =item What is variable suicide and how can I prevent it?
625 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
628 Passing Variables and Functions, Passing Filehandles, Passing Regexps,
631 =item How do I create a static variable?
633 =item What's the difference between dynamic and lexical (static) scoping?
634 Between local() and my()?
636 =item How can I access a dynamic variable while a similarly named lexical
639 =item What's the difference between deep and shallow binding?
641 =item Why doesn't "my($foo) = <FILE>;" work right?
643 =item How do I redefine a builtin function, operator, or method?
645 =item What's the difference between calling a function as &foo and foo()?
647 =item How do I create a switch or case statement?
649 =item How can I catch accesses to undefined variables/functions/methods?
651 =item Why can't a method included in this same file be found?
653 =item How can I find out my current package?
655 =item How can I comment out a large block of perl code?
659 =item AUTHOR AND COPYRIGHT
661 =head2 perlfaq8 - System Interaction ($Revision: 1.25 $, $Date: 1998/07/05
668 =item How do I find out which operating system I'm running under?
670 =item How come exec() doesn't return?
672 =item How do I do fancy stuff with the keyboard/screen/mouse?
674 Keyboard, Screen, Mouse
676 =item How do I print something out in color?
678 =item How do I read just one key without waiting for a return key?
680 =item How do I check whether input is ready on the keyboard?
682 =item How do I clear the screen?
684 =item How do I get the screen size?
686 =item How do I ask the user for a password?
688 =item How do I read and write the serial port?
690 lockfiles, open mode, end of line, flushing output, non-blocking input
692 =item How do I decode encrypted password files?
694 =item How do I start a process in the background?
696 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
698 =item How do I trap control characters/signals?
700 =item How do I modify the shadow password file on a Unix system?
702 =item How do I set the time and date?
704 =item How can I sleep() or alarm() for under a second?
706 =item How can I measure time under a second?
708 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
710 =item Why doesn't my sockets program work under System V (Solaris)? What
711 does the error message "Protocol not supported" mean?
713 =item How can I call my system's unique C functions from Perl?
715 =item Where do I get the include files to do ioctl() or syscall()?
717 =item Why do setuid perl scripts complain about kernel problems?
719 =item How can I open a pipe both to and from a command?
721 =item Why can't I get the output of a command with system()?
723 =item How can I capture STDERR from an external command?
725 =item Why doesn't open() return an error when a pipe open fails?
727 =item What's wrong with using backticks in a void context?
729 =item How can I call backticks without shell processing?
731 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
734 =item How can I convert my shell script to perl?
736 =item Can I use perl to run a telnet or ftp session?
738 =item How can I write expect in Perl?
740 =item Is there a way to hide perl's command line from programs such as
743 =item I {changed directory, modified my environment} in a perl script. How
744 come the change disappeared when I exited the script? How do I get my
745 changes to be visible?
749 =item How do I close a process's filehandle without waiting for it to
752 =item How do I fork a daemon process?
754 =item How do I make my program run with sh and csh?
756 =item How do I find out if I'm running interactively or not?
758 =item How do I timeout a slow event?
760 =item How do I set CPU limits?
762 =item How do I avoid zombies on a Unix system?
764 =item How do I use an SQL database?
766 =item How do I make a system() exit on control-C?
768 =item How do I open a file without blocking?
770 =item How do I install a CPAN module?
772 =item What's the difference between require and use?
774 =item How do I keep my own module/library directory?
776 =item How do I add the directory my program lives in to the module/library
779 =item How do I add a directory to my include path at runtime?
783 =item AUTHOR AND COPYRIGHT
785 =head2 perlfaq9 - Networking ($Revision: 1.20 $, $Date: 1998/06/22 18:31:09
792 =item My CGI script runs from the command line but not the browser. (500
795 =item How can I get better error messages from a CGI program?
797 =item How do I remove HTML from a string?
799 =item How do I extract URLs?
801 =item How do I download a file from the user's machine? How do I open a
802 file on another machine?
804 =item How do I make a pop-up menu in HTML?
806 =item How do I fetch an HTML file?
808 =item How do I automate an HTML form submission?
810 =item How do I decode or create those %-encodings on the web?
812 =item How do I redirect to another page?
814 =item How do I put a password on my web pages?
816 =item How do I edit my .htpasswd and .htgroup files with Perl?
818 =item How do I make sure users can't enter values into a form that cause my
819 CGI script to do bad things?
821 =item How do I parse a mail header?
823 =item How do I decode a CGI form?
825 =item How do I check a valid mail address?
827 =item How do I decode a MIME/BASE64 string?
829 =item How do I return the user's mail address?
831 =item How do I send mail?
833 =item How do I read mail?
835 =item How do I find out my hostname/domainname/IP address?
837 =item How do I fetch a news article or the active newsgroups?
839 =item How do I fetch/put an FTP file?
841 =item How can I do RPC in Perl?
845 =item AUTHOR AND COPYRIGHT
847 =head2 perldelta - what's new for perl5.005
851 =item About the new versioning system
853 =item Incompatible Changes
857 =item WARNING: This version is not binary compatible with Perl 5.004.
859 =item Default installation structure has changed
861 =item Perl Source Compatibility
863 =item C Source Compatibility
865 Core sources now require ANSI C compiler, All Perl global variables must
866 now be referenced with an explicit prefix, Enabling threads has source
869 =item Binary Compatibility
871 =item Security fixes may affect compatibility
873 =item Relaxed new mandatory warnings introduced in 5.004
887 =item Regular Expressions
889 Many new and improved optimizations, Many bug fixes, New regular expression
890 constructs, New operator for precompiled regular expressions, Other
891 improvements, Incompatible changes
893 =item Improved malloc()
895 =item Quicksort is internally implemented
897 =item Reliable signals
899 =item Reliable stack pointers
901 =item More generous treatment of carriage returns
905 =item Better support for multiple interpreters
907 =item Behavior of local() on array and hash elements is now well-defined
909 =item C<%!> is transparently tied to the L<Errno> module
911 =item Pseudo-hashes are supported
913 =item C<EXPR foreach EXPR> is supported
915 =item Keywords can be globally overridden
917 =item C<$^E> is meaningful on Win32
919 =item C<foreach (1..1000000)> optimized
921 =item C<Foo::> can be used as implicitly quoted package name
923 =item C<exists $Foo::{Bar::}> tests existence of a package
925 =item Better locale support
927 =item Experimental support for 64-bit platforms
929 =item prototype() returns useful results on builtins
931 =item Extended support for exception handling
933 =item Re-blessing in DESTROY() supported for chaining DESTROY() methods
935 =item All C<printf> format conversions are handled internally
937 =item New C<INIT> keyword
939 =item New C<lock> keyword
941 =item New C<qr//> operator
943 =item C<our> is now a reserved word
945 =item Tied arrays are now fully supported
947 =item Tied handles support is better
949 =item 4th argument to substr
951 =item Negative LENGTH argument to splice
953 =item Magic lvalues are now more magical
955 =item E<lt>E<gt> now reads in records
959 =item Supported Platforms
965 =item Changes in existing support
969 =item Modules and Pragmata
975 B, Data::Dumper, Errno, File::Spec, ExtUtils::Installed,
976 ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle,
977 Thread, attrs, fields, re
979 =item Changes in existing modules
981 CGI, POSIX, DB_File, MakeMaker, CPAN, Cwd, Benchmark
985 =item Utility Changes
987 =item Documentation Changes
989 =item New Diagnostics
991 Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index
992 while coercing array into hash, Bareword "%s" refers to nonexistent
993 package, Can't call method "%s" on an undefined value, Can't coerce array
994 into hash, Can't goto subroutine from an eval-string, Can't localize
995 pseudo-hash element, Can't use %%! because Errno.pm is not available,
996 Cannot find an opnumber for "%s", Character class syntax [. .] is reserved
997 for future extensions, Character class syntax [: :] is reserved for future
998 extensions, Character class syntax [= =] is reserved for future extensions,
999 %s: Eval-group in insecure regular expression, %s: Eval-group not allowed,
1000 use re 'eval', %s: Eval-group not allowed at run time, Explicit blessing to
1001 '' (assuming package main), Illegal hex digit ignored, No such array field,
1002 No such field "%s" in variable %s of type %s, Out of memory during
1003 ridiculously large request, Range iterator outside integer range, Recursive
1004 inheritance detected while looking for method '%s' in package '%s',
1005 Reference found where even-sized list expected, Undefined value assigned to
1006 typeglob, Use of reserved word "%s" is deprecated, perl: warning: Setting
1009 =item Obsolete Diagnostics
1011 Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open
1020 =head2 perldata - Perl data types
1026 =item Variable names
1032 =item Scalar value constructors
1034 =item List value constructors
1036 =item Typeglobs and Filehandles
1040 =head2 perlsyn - Perl syntax
1048 =item Simple statements
1050 =item Compound statements
1058 =item Basic BLOCKs and Switch Statements
1062 =item PODs: Embedded Documentation
1064 =item Plain Old Comments (Not!)
1068 =head2 perlop - Perl operators and precedence
1076 =item Terms and List Operators (Leftward)
1078 =item The Arrow Operator
1080 =item Auto-increment and Auto-decrement
1082 =item Exponentiation
1084 =item Symbolic Unary Operators
1086 =item Binding Operators
1088 =item Multiplicative Operators
1090 =item Additive Operators
1092 =item Shift Operators
1094 =item Named Unary Operators
1096 =item Relational Operators
1098 =item Equality Operators
1102 =item Bitwise Or and Exclusive Or
1104 =item C-style Logical And
1106 =item C-style Logical Or
1108 =item Range Operators
1110 =item Conditional Operator
1112 =item Assignment Operators
1114 =item Comma Operator
1116 =item List Operators (Rightward)
1122 =item Logical or and Exclusive Or
1124 =item C Operators Missing From Perl
1126 unary &, unary *, (TYPE)
1128 =item Quote and Quote-like Operators
1130 =item Regexp Quote-Like Operators
1132 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
1133 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
1134 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
1135 y/SEARCHLIST/REPLACEMENTLIST/cds
1137 =item Gory details of parsing quoted constructs
1139 Finding the end, Removal of backslashes before delimiters, Interpolation,
1140 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1141 C<``>, C<qq//>, C<qx//>, C<<file*globE<gt>>, C<?RE?>, C</RE/>, C<m/RE/>,
1142 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1147 =item Constant Folding
1149 =item Bitwise String Operators
1151 =item Integer Arithmetic
1153 =item Floating-point Arithmetic
1155 =item Bigger Numbers
1159 =head2 perlre - Perl regular expressions
1167 =item Regular Expressions
1169 C<(?#text)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, C<(?=pattern)>,
1170 C<(?!pattern)>, C<(?E<lt>=pattern)>, C<(?<!pattern)>, C<(?{ code })>,
1171 C<(?E<gt>pattern)>, C<(?(condition)yes-pattern|no-pattern)>,
1172 C<(?(condition)yes-pattern)>, C<(?imsx-imsx)>
1176 =item Version 8 Regular Expressions
1178 =item WARNING on \1 vs $1
1180 =item Repeated patterns matching zero-length substring
1182 =item Creating custom RE engines
1188 =head2 perlrun - how to execute the Perl interpreter
1196 =item #! and quoting on non-Unix systems
1198 OS/2, MS-DOS, Win95/NT, Macintosh
1200 =item Location of Perl
1204 B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<letters>,
1205 B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
1206 B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
1207 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
1208 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
1209 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
1215 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1216 (specific to WIN32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL
1218 =head2 perlfunc - Perl builtin functions
1224 =item Perl Functions by Category
1226 Functions for SCALARs or strings, Regular expressions and pattern matching,
1227 Numeric functions, Functions for real @ARRAYs, Functions for list data,
1228 Functions for real %HASHes, Input and output functions, Functions for fixed
1229 length data or records, Functions for filehandles, files, or directories,
1230 Keywords related to the control flow of your perl program, Keywords related
1231 to scoping, Miscellaneous functions, Functions for processes and process
1232 groups, Keywords related to perl modules, Keywords related to classes and
1233 object-orientedness, Low-level socket functions, System V interprocess
1234 communication functions, Fetching user and group info, Fetching network
1235 info, Time-related functions, Functions new in perl5, Functions obsoleted
1238 =item Alphabetical Listing of Perl Functions
1240 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
1241 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1242 binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
1243 chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
1244 chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
1245 close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue
1246 BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
1247 HASH,DBNAME,MODE, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
1248 do SUBROUTINE(LIST), do EXPR, dump LABEL, each HASH, eof FILEHANDLE, eof
1249 (), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR,
1250 exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno
1251 FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline
1252 PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp
1253 PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME,
1254 gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID,
1255 getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE,
1256 getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport
1257 PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent,
1258 getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
1259 setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent,
1260 endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt
1261 SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR,
1262 goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
1263 STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1264 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last
1265 LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link
1266 OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, log
1267 EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST, map
1268 EXPR,LIST, mkdir FILENAME,MODE, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
1269 ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL, next, no
1270 Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE, opendir
1271 DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package
1272 NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
1273 print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
1274 printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
1275 qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
1276 rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
1277 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
1278 readlink, readpipe EXPR, recv SOCKET,SCALAR,LEN,FLAGS, redo LABEL, redo,
1279 ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR,
1280 reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1281 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1282 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1283 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1284 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
1285 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1286 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1287 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1288 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1289 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
1290 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1291 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1292 splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
1293 split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
1294 srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK,
1295 sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr
1296 EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST,
1297 sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS,
1298 sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH,
1299 sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST,
1300 syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite
1301 FILEHANDLE,SCALAR,LENGTH, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
1302 VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
1303 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
1304 ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
1305 TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module LIST, use
1306 Module, use Module VERSION LIST, use VERSION, utime LIST, values HASH, vec
1307 EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn LIST, write
1308 FILEHANDLE, write EXPR, write, y///
1312 =head2 perlvar - Perl predefined variables
1318 =item Predefined Names
1320 $ARG, $_, $E<lt>I<digits>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1321 $LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE
1322 EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR,
1323 $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH,
1324 $|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
1325 output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\,
1326 $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
1327 format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%,
1328 format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=,
1329 format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE
1330 EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1331 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1332 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
1333 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1334 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1335 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1336 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
1337 $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $^M,
1338 $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, $^R, $^S,
1339 $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC,
1340 @_, %INC, %ENV $ENV{expr}, %SIG $SIG{expr}
1342 =item Error Indicators
1346 =head2 perlsub - Perl subroutines
1354 =item Private Variables via C<my()>
1356 =item Peristent Private Variables
1358 =item Temporary Values via local()
1360 =item Passing Symbol Table Entries (typeglobs)
1362 =item When to Still Use local()
1364 1. You need to give a global variable a temporary value, especially C<$_>,
1365 2. You need to create a local file or directory handle or a local function,
1366 3. You want to temporarily change just one element of an array or hash
1368 =item Pass by Reference
1372 =item Constant Functions
1374 =item Overriding Builtin Functions
1382 =head2 perlmod - Perl modules (packages and symbol tables)
1392 =item Package Constructors and Destructors
1402 =head2 perlmodlib - constructing new Perl modules and finding existing ones
1406 =item THE PERL MODULE LIBRARY
1410 =item Pragmatic Modules
1412 use autouse MODULE => qw(sub1 sub2 sub3), blib, diagnostics, integer, less,
1413 lib, locale, ops, overload, re, sigtrap, strict, subs, vmsish, vars
1415 =item Standard Modules
1417 AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime,
1418 CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB_File, Devel::SelfStubber,
1419 DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed,
1420 ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix,
1421 ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest,
1422 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal,
1423 Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy,
1424 File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin,
1425 GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File,
1426 IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2,
1427 IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig,
1428 NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent,
1429 Net::servent, Opcode, Pod::Text, POSIX, SDBM_File, Safe, Search::Dict,
1430 SelectSaver, SelfLoader, Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog,
1431 Term::Cap, Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev,
1432 Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash,
1433 Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime,
1434 Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent
1436 =item Extension Modules
1442 Language Extensions and Documentation Tools, Development Support, Operating
1443 System Interfaces, Networking, Device Control (modems) and InterProcess
1444 Communication, Data Types and Data Type Utilities, Database Interfaces,
1445 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1446 File Names, File Systems and File Locking (see also File Handles), String
1447 Processing, Language Text Processing, Parsing, and Searching, Option,
1448 Argument, Parameter, and Configuration File Processing,
1449 Internationalization and Locale, Authentication, Security, and Encryption,
1450 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1451 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1452 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1453 exceptions etc), File Handle and Input/Output Stream Utilities,
1454 Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America,
1457 =item Modules: Creation, Use, and Abuse
1461 =item Guidelines for Module Creation
1463 Do similar modules already exist in some form?, Try to design the new
1464 module to be easy to extend and reuse, Some simple style guidelines, Select
1465 what to export, Select a name for the module, Have you got it right?,
1466 README and other Additional Files, A description of the
1467 module/package/extension etc, A copyright notice - see below, Prerequisites
1468 - what else you may need to have, How to build it - possible changes to
1469 Makefile.PL etc, How to install it, Recent changes in this release,
1470 especially incompatibilities, Changes / enhancements you plan to make in
1471 the future, Adding a Copyright Notice, Give the module a
1472 version/issue/release number, How to release and distribute a module, Take
1473 care when changing a released module
1475 =item Guidelines for Converting Perl 4 Library Scripts into Modules
1477 There is no requirement to convert anything, Consider the implications,
1478 Make the most of the opportunity, The pl2pm utility will get you started,
1479 Adds the standard Module prologue lines, Converts package specifiers from '
1480 to ::, Converts die(...) to croak(...), Several other minor changes
1482 =item Guidelines for Reusing Application Code
1484 Complete applications rarely belong in the Perl Module Library, Many
1485 applications contain some Perl code that could be reused, Break-out the
1486 reusable code into one or more separate module files, Take the opportunity
1487 to reconsider and redesign the interfaces, In some cases the 'application'
1488 can then be reduced to a small
1494 =head2 perlmodinstall - Installing CPAN Modules
1502 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1503 module (sometimes unnecessary), B<INSTALL> the module
1513 =head2 perlform - Perl formats
1519 =item Format Variables
1529 =item Accessing Formatting Internals
1535 =head2 perllocale - Perl locale handling (internationalization and
1540 =item PREPARING TO USE LOCALES
1546 =item The use locale pragma
1548 =item The setlocale function
1550 =item Finding locales
1552 =item LOCALE PROBLEMS
1554 =item Temporarily fixing locale problems
1556 =item Permanently fixing locale problems
1558 =item Permanently fixing your locale configuration
1560 =item Permanently fixing system locale configuration
1562 =item The localeconv function
1566 =item LOCALE CATEGORIES
1570 =item Category LC_COLLATE: Collation
1572 =item Category LC_CTYPE: Character Types
1574 =item Category LC_NUMERIC: Numeric Formatting
1576 =item Category LC_MONETARY: Formatting of monetary amounts
1580 =item Other categories
1586 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
1587 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
1588 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1589 B<In-memory formatting function> (sprintf()):, B<Output formatting
1590 functions> (printf() and write()):, B<Case-mapping functions> (lc(),
1591 lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
1592 (localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
1593 tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
1594 ispunct(), isspace(), isupper(),
1599 PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC,
1606 =item Backward compatibility
1608 =item I18N:Collate obsolete
1610 =item Sort speed and memory use impacts
1612 =item write() and LC_NUMERIC
1614 =item Freely available locale definitions
1618 =item An imperfect standard
1626 =item Broken systems
1634 =head2 perlref - Perl references and nested data structures
1640 =item Making References
1642 =item Using References
1644 =item Symbolic references
1646 =item Not-so-symbolic references
1648 =item Pseudo-hashes: Using an array as a hash
1650 =item Function Templates
1658 =head2 perldsc - Perl Data Structures Cookbook
1662 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
1663 more elaborate constructs
1667 =item COMMON MISTAKES
1669 =item CAVEAT ON PRECEDENCE
1671 =item WHY YOU SHOULD ALWAYS C<use strict>
1677 =item LISTS OF LISTS
1681 =item Declaration of a LIST OF LISTS
1683 =item Generation of a LIST OF LISTS
1685 =item Access and Printing of a LIST OF LISTS
1689 =item HASHES OF LISTS
1693 =item Declaration of a HASH OF LISTS
1695 =item Generation of a HASH OF LISTS
1697 =item Access and Printing of a HASH OF LISTS
1701 =item LISTS OF HASHES
1705 =item Declaration of a LIST OF HASHES
1707 =item Generation of a LIST OF HASHES
1709 =item Access and Printing of a LIST OF HASHES
1713 =item HASHES OF HASHES
1717 =item Declaration of a HASH OF HASHES
1719 =item Generation of a HASH OF HASHES
1721 =item Access and Printing of a HASH OF HASHES
1725 =item MORE ELABORATE RECORDS
1729 =item Declaration of MORE ELABORATE RECORDS
1731 =item Declaration of a HASH OF COMPLEX RECORDS
1733 =item Generation of a HASH OF COMPLEX RECORDS
1743 =head2 perllol, perlLoL - Manipulating Lists of Lists in Perl
1747 =item Declaration and Access of Lists of Lists
1749 =item Growing Your Own
1751 =item Access and Printing
1759 =head2 perltoot - Tom's object-oriented tutorial for perl
1763 =item Creating a Class
1767 =item Object Representation
1769 =item Class Interface
1771 =item Constructors and Instance Methods
1773 =item Planning for the Future: Better Constructors
1777 =item Other Object Methods
1785 =item Accessing Class Data
1787 =item Debugging Methods
1789 =item Class Destructors
1791 =item Documenting the Interface
1801 =item Overridden Methods
1803 =item Multiple Inheritance
1805 =item UNIVERSAL: The Root of All Objects
1809 =item Alternate Object Representations
1813 =item Arrays as Objects
1815 =item Closures as Objects
1819 =item AUTOLOAD: Proxy Methods
1823 =item Autoloaded Data Methods
1825 =item Inherited Autoloaded Data Methods
1829 =item Metaclassical Tools
1835 =item Data Members as Variables
1839 =item Object Terminology
1845 =item AUTHOR AND COPYRIGHT
1851 =item Acknowledgments
1855 =head2 perlobj - Perl objects
1861 =item An Object is Simply a Reference
1863 =item A Class is Simply a Package
1865 =item A Method is Simply a Subroutine
1867 =item Method Invocation
1869 =item Default UNIVERSAL methods
1871 isa(CLASS), can(METHOD), VERSION( [NEED] )
1879 =item Two-Phased Garbage Collection
1885 =head2 perltie - how to hide an object class in a simple variable
1895 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
1899 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
1904 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
1905 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
1906 this, NEXTKEY this, lastkey, DESTROY this
1908 =item Tying FileHandles
1910 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
1911 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
1913 =item The C<untie> Gotcha
1923 =head2 perlbot - Bag'o Object Tricks (the BOT)
1927 =item OO SCALING TIPS
1929 =item INSTANCE VARIABLES
1931 =item SCALAR INSTANCE VARIABLES
1933 =item INSTANCE VARIABLE INHERITANCE
1935 =item OBJECT RELATIONSHIPS
1937 =item OVERRIDING SUPERCLASS METHODS
1939 =item USING RELATIONSHIP WITH SDBM
1941 =item THINKING OF CODE REUSE
1943 =item CLASS CONTEXT AND THE OBJECT
1945 =item INHERITING A CONSTRUCTOR
1949 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1950 safe subprocesses, sockets, and semaphores)
1964 =item Using open() for IPC
1970 =item Background Processes
1972 =item Complete Dissociation of Child from Parent
1974 =item Safe Pipe Opens
1976 =item Bidirectional Communication with Another Process
1978 =item Bidirectional Communication with Yourself
1982 =item Sockets: Client/Server Communication
1986 =item Internet Line Terminators
1988 =item Internet TCP Clients and Servers
1990 =item Unix-Domain TCP Clients and Servers
1994 =item TCP Clients with IO::Socket
1998 =item A Simple Client
2000 C<Proto>, C<PeerAddr>, C<PeerPort>
2002 =item A Webget Client
2004 =item Interactive Client with IO::Socket
2008 =item TCP Servers with IO::Socket
2010 Proto, LocalPort, Listen, Reuse
2012 =item UDP: Message Passing
2024 =head2 perldebug - Perl debugging
2028 =item The Perl Debugger
2032 =item Debugger Commands
2034 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
2035 [expr], E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l
2036 subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern],
2037 t, t expr, b [line] [condition], b subname [condition], b postpone subname
2038 [condition], b load filename, b compile subname, d [line], D, a [line]
2039 command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?]..,
2040 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2041 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2042 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
2043 C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
2044 C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
2045 C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ],
2046 E<lt>E<lt> command, E<gt> command, E<gt>E<gt> command, { [ command ], {{
2047 command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R,
2048 |dbcmd, ||dbcmd, command, m expr, m package
2050 =item Debugger input/output
2052 Prompt, Multiline commands, Stack backtrace, Listing, Frame listing
2054 =item Debugging compile-time statements
2056 =item Debugger Customization
2058 =item Readline Support
2060 =item Editor Support for Debugging
2062 =item The Perl Profiler
2064 =item Debugger support in perl
2066 =item Debugger Internals
2068 =item Other resources
2074 =item Debugging Perl memory usage
2078 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
2080 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
2081 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
2084 =item Example of using B<-DL> switch
2086 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
2088 =item B<-DL> details
2092 =item Limitations of B<-DL> statistic
2096 =item Debugging regular expressions
2100 =item Compile-time output
2102 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
2103 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
2104 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
2107 =item Types of nodes
2109 =item Run-time output
2113 =head2 perldiag - various Perl diagnostics
2117 =head2 perlsec - Perl security
2123 =item Laundering and Detecting Tainted Data
2125 =item Switches On the "#!" Line
2127 =item Cleaning Up Your Path
2131 =item Protecting Your Programs
2137 =head2 perltrap - Perl traps for the unwary
2153 =item Perl4 to Perl5 Traps
2155 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
2156 Traps, General data type traps, Context Traps - scalar, list contexts,
2157 Precedence Traps, General Regular Expression Traps using s///, etc,
2158 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
2160 =item Discontinuance, Deprecation, and BugFix traps
2162 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
2163 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
2164 Discontinuance, Discontinuance, Deprecation, Discontinuance
2168 Parsing, Parsing, Parsing, Parsing
2170 =item Numerical Traps
2172 Numerical, Numerical, Numerical
2174 =item General data type traps
2176 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
2177 (Constants), (Scalars), (Variable Suicide)
2179 =item Context Traps - scalar, list contexts
2181 (list context), (scalar context), (scalar context), (list, builtin)
2183 =item Precedence Traps
2185 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
2188 =item General Regular Expression Traps using s///, etc.
2190 Regular Expression, Regular Expression, Regular Expression, Regular
2191 Expression, Regular Expression, Regular Expression, Regular Expression,
2194 =item Subroutine, Signal, Sorting Traps
2196 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
2202 =item Interpolation Traps
2204 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
2205 Interpolation, Interpolation, Interpolation, Interpolation
2211 =item Unclassified Traps
2213 C<require>/C<do> trap using returned value, C<split> on empty string with
2218 =head2 perlport - Writing portable Perl
2222 Not all Perl programs have to be portable, The vast majority of Perl B<is>
2233 =item System Interaction
2235 =item Interprocess Communication (IPC)
2237 =item External Subroutines (XS)
2239 =item Standard Modules
2243 =item System Resources
2253 Mailing list: cpan-testers@perl.org, Testing results:
2254 C<http://www.connect.net/gbarr/cpan-test/>
2262 =item DOS and Derivatives
2264 The djgpp environment for DOS, C<http://www.delorie.com/djgpp/>, The EMX
2265 environment for DOS, OS/2, etc.
2266 C<emx@iaehv.nl>,C<http://www.juge.com/bbs/Hobb.19.html>, Build instructions
2267 for Win32, L<perlwin32>, The ActiveState Pages,
2268 C<http://www.activestate.com/>
2272 The MacPerl Pages, C<http://www.ptf.com/macperl/>, The MacPerl mailing
2273 list, C<mac-perl-request@iis.ee.ethz.ch>
2277 L<perlvms.pod>, vmsperl list, C<vmsperl-request@newman.upenn.edu>, vmsperl
2278 on the web, C<http://www.sidhe.org/vmsperl/index.html>
2280 =item EBCDIC Platforms
2282 perl-mvs list, AS/400 Perl information at C<http://as400.rochester.ibm.com>
2286 Atari, Guido Flohr's page C<http://stud.uni-sb.de/~gufl0000/>, HP 300
2287 MPE/iX C<http://www.cccd.edu/~markb/perlix.html>, Novell Netware
2291 =item FUNCTION IMPLEMENTATIONS
2295 =item Alphabetical Listing of Perl Functions
2297 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, binmode FILEHANDLE, chmod LIST, chown
2298 LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
2299 HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR,
2300 flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid,
2301 getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME,
2302 getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber
2303 NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent,
2304 getnetent, getprotoent, getservent, setpwent, setgrent, sethostent
2305 STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN,
2306 endpwent, endgrent, endhostent, endnetent, endprotoent, endservent,
2307 getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl
2308 FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat
2309 FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
2310 ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open
2311 FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2312 RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2313 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority
2314 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl
2315 ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite
2316 ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat
2317 FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, system
2318 LIST, times, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR,
2319 umask, utime LIST, wait, waitpid PID,FLAGS
2323 =item AUTHORS / CONTRIBUTORS
2327 =head2 perlstyle - Perl style guide
2331 =head2 perlpod - plain old documentation
2337 =item Verbatim Paragraph
2339 =item Command Paragraph
2341 =item Ordinary Block of Text
2345 =item Embedding Pods in Perl Modules
2347 =item Common Pod Pitfalls
2355 =head2 perlbook - Perl book information
2359 =head2 perlembed - how to embed perl in your C program
2367 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
2368 Perl?>, B<Use C from C?>, B<Use Perl from C?>
2372 =item Compiling your C program
2374 =item Adding a Perl interpreter to your C program
2376 =item Calling a Perl subroutine from your C program
2378 =item Evaluating a Perl statement from your C program
2380 =item Performing Perl pattern matches and substitutions from your C program
2382 =item Fiddling with the Perl stack from your C program
2384 =item Maintaining a persistent interpreter
2386 =item Maintaining multiple interpreter instances
2388 =item Using Perl modules, which themselves use C libraries, from your C
2393 =item Embedding Perl under Win32
2401 =head2 perlapio - perl's IO abstraction interface.
2407 B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
2408 B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
2409 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
2410 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
2411 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
2412 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
2413 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
2414 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
2415 B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
2416 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
2420 =item Co-existence with stdio
2422 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
2423 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
2424 B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
2425 B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
2426 B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
2427 B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
2431 =head2 perlxs - XS language reference manual
2441 =item The Anatomy of an XSUB
2443 =item The Argument Stack
2445 =item The RETVAL Variable
2447 =item The MODULE Keyword
2449 =item The PACKAGE Keyword
2451 =item The PREFIX Keyword
2453 =item The OUTPUT: Keyword
2455 =item The CODE: Keyword
2457 =item The INIT: Keyword
2459 =item The NO_INIT Keyword
2461 =item Initializing Function Parameters
2463 =item Default Parameter Values
2465 =item The PREINIT: Keyword
2467 =item The SCOPE: Keyword
2469 =item The INPUT: Keyword
2471 =item Variable-length Parameter Lists
2473 =item The C_ARGS: Keyword
2475 =item The PPCODE: Keyword
2477 =item Returning Undef And Empty Lists
2479 =item The REQUIRE: Keyword
2481 =item The CLEANUP: Keyword
2483 =item The BOOT: Keyword
2485 =item The VERSIONCHECK: Keyword
2487 =item The PROTOTYPES: Keyword
2489 =item The PROTOTYPE: Keyword
2491 =item The ALIAS: Keyword
2493 =item The INTERFACE: Keyword
2495 =item The INTERFACE_MACRO: Keyword
2497 =item The INCLUDE: Keyword
2499 =item The CASE: Keyword
2501 =item The & Unary Operator
2503 =item Inserting Comments and C Preprocessor Directives
2505 =item Using XS With C++
2507 =item Interface Strategy
2509 =item Perl Objects And C Structures
2521 =head2 perlxstut, perlXStut - Tutorial for XSUBs
2527 =item VERSION CAVEAT
2529 =item DYNAMIC VERSUS STATIC
2535 =item WHAT HAS GONE ON?
2537 =item WRITING GOOD TEST SCRIPTS
2541 =item WHAT'S NEW HERE?
2543 =item INPUT AND OUTPUT PARAMETERS
2545 =item THE XSUBPP COMPILER
2547 =item THE TYPEMAP FILE
2553 =item WHAT HAS HAPPENED HERE?
2555 =item SPECIFYING ARGUMENTS TO XSUBPP
2557 =item THE ARGUMENT STACK
2559 =item EXTENDING YOUR EXTENSION
2561 =item DOCUMENTING YOUR EXTENSION
2563 =item INSTALLING YOUR EXTENSION
2573 =head2 perlguts - Perl's Internal Functions
2583 =item What is an "IV"?
2585 =item Working with SVs
2587 =item What's Really Stored in an SV?
2589 =item Working with AVs
2591 =item Working with HVs
2593 =item Hash API Extensions
2597 =item Blessed References and Class Objects
2599 =item Creating New Variables
2601 =item Reference Counts and Mortality
2603 =item Stashes and Globs
2605 =item Double-Typed SVs
2607 =item Magic Variables
2609 =item Assigning Magic
2611 =item Magic Virtual Tables
2615 =item Understanding the Magic of Tied Hashes and Arrays
2617 =item Localizing changes
2619 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
2620 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEFREEOP(OP
2621 *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>, C<SAVEDELETE(HV *hv, char
2622 *key, I32 length)>, C<SAVEDESTRUCTOR(f,p)>, C<SAVESTACK_POS()>, C<SV*
2623 save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>,
2624 C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>,
2625 C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void
2626 save_hptr(HV **hptr)>
2634 =item XSUBs and the Argument Stack
2636 =item Calling Perl Routines from within C Programs
2638 =item Memory Allocation
2642 =item Putting a C value on Perl stack
2646 =item Scratchpads and recursion
2656 =item Examining the tree
2658 =item Compile pass 1: check routines
2660 =item Compile pass 1a: constant folding
2662 =item Compile pass 2: context propagation
2664 =item Compile pass 3: peephole optimization
2670 av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push,
2671 av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH,
2672 PL_DBsingle, PL_DBsub, PL_DBtrace, dMARK, dORIGMARK, PL_dowarn, dSP,
2673 dXSARGS, dXSI32, do_binmode, ENTER, EXTEND, fbm_compile, fbm_instr,
2674 FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, GIMME_V, G_NOARGS, G_SCALAR,
2675 gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, G_VOID, gv_stashpv,
2676 gv_stashsv, GvSV, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY,
2677 HeSVKEY_force, HeSVKEY_set, HeVAL, hv_clear, hv_delayfree_ent, hv_delete,
2678 hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent,
2679 hv_free_ent, hv_iterinit, hv_iterkey, hv_iterkeysv, hv_iternext,
2680 hv_iternextsv, hv_iterval, hv_magic, HvNAME, hv_store, hv_store_ent,
2681 hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, items, ix,
2682 LEAVE, looks_like_number, MARK, mg_clear, mg_copy, mg_find, mg_free,
2683 mg_get, mg_len, mg_magical, mg_set, Move, PL_na, New, newAV, Newc,
2684 newCONSTSUB, newHV, newRV_inc, newRV_noinc, NEWSV, newSViv, newSVnv,
2685 newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, newXS, newXSproto, Newz,
2686 Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc,
2687 perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv,
2688 perl_construct, perl_destruct, perl_eval_sv, perl_eval_pv, perl_free,
2689 perl_get_av, perl_get_cv, perl_get_hv, perl_get_sv, perl_parse,
2690 perl_require_pv, perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi,
2691 PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, RETVAL, safefree,
2692 safemalloc, saferealloc, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ,
2693 strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless,
2694 sv_catpv, sv_catpv_mg, sv_catpvn, sv_catpvn_mg, sv_catpvf, sv_catpvf_mg,
2695 sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, SvCUR, SvCUR_set, sv_dec,
2696 sv_derived_from, sv_derived_from, SvEND, sv_eq, SvGETMAGIC, SvGROW,
2697 sv_grow, sv_inc, sv_insert, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only, SvIOKp,
2698 sv_isa, sv_isobject, SvIV, SvIVX, SvLEN, sv_len, sv_magic, sv_mortalcopy,
2699 sv_newmortal, SvNIOK, SvNIOK_off, SvNIOKp, PL_sv_no, SvNOK, SvNOK_off,
2700 SvNOK_on, SvNOK_only, SvNOKp, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOK_off,
2701 SvPOK_on, SvPOK_only, SvPOKp, SvPV, SvPV_force, SvPVX, SvREFCNT,
2702 SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSETMAGIC,
2703 sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv, sv_setpv_mg,
2704 sv_setpviv, sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpvf,
2705 sv_setpvf_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn,
2706 SvSetSV, SvSetSV_nosteal, sv_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg,
2707 SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SVt_IV, SVt_PV,
2708 SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, SvTYPE, svtype,
2709 PL_sv_undef, sv_unref, SvUPGRADE, sv_upgrade, sv_usepvn, sv_usepvn_mg,
2710 sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale),
2711 sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), SvUV,
2712 SvUVX, PL_sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp,
2713 XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO,
2714 XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV,
2715 XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK,
2720 =head2 perlcall - Perl calling conventions from C
2724 An Error Handler, An Event Driven Program
2726 =item THE PERL_CALL FUNCTIONS
2728 B<perl_call_sv>, B<perl_call_pv>, B<perl_call_method>, B<perl_call_argv>
2748 =item Determining the Context
2752 =item KNOWN PROBLEMS
2758 =item No Parameters, Nothing returned
2760 =item Passing Parameters
2762 =item Returning a Scalar
2764 =item Returning a list of values
2766 =item Returning a list in a scalar context
2768 =item Returning Data from Perl via the parameter list
2772 =item Using G_KEEPERR
2774 =item Using perl_call_sv
2776 =item Using perl_call_argv
2778 =item Using perl_call_method
2782 =item Using Perl to dispose of temporaries
2784 =item Strategies for storing Callback Context Information
2786 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
2787 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
2790 =item Alternate Stack Manipulation
2792 =item Creating and calling an anonymous subroutine in C
2802 =head2 perlhist - the Perl history records
2808 =item THE KEEPERS OF THE PUMPKIN
2820 =item SELECTED RELEASE SIZES
2822 =item SELECTED PATCH SIZES
2826 =item THE KEEPERS OF THE RECORDS
2828 =head1 PRAGMA DOCUMENTATION
2830 =head2 attrs - set/get attributes of a subroutine
2838 =head2 re - Perl pragma to alter regular expression behaviour
2844 =head2 autouse - postpone load of modules until a function is used
2856 =head2 base - Establish IS-A relationship with base class at compile time
2864 =head2 blib - Use MakeMaker's uninstalled version of a package
2874 =head2 constant - Perl pragma to declare constants
2882 =item TECHNICAL NOTE
2890 =head2 diagnostics - Perl compiler pragma to force verbose warning
2899 =item The C<diagnostics> Pragma
2901 =item The I<splain> Program
2913 =head2 fields - compile-time class fields
2921 =head2 integer - Perl pragma to compute arithmetic in integer instead of
2928 =head2 less - perl pragma to request less of something from the compiler
2934 =head2 lib - manipulate @INC at compile time
2942 =item ADDING DIRECTORIES TO @INC
2944 =item DELETING DIRECTORIES FROM @INC
2946 =item RESTORING ORIGINAL @INC
2954 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
2961 =head2 overload - Package for overloading perl operations
2965 =item CAVEAT SCRIPTOR
2971 =item Declaration of overloaded functions
2973 =item Calling Conventions for Binary Operations
2975 FALSE, TRUE, C<undef>
2977 =item Calling Conventions for Unary Operations
2979 =item Overloadable Operations
2981 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
2982 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
2983 and numeric conversion>, I<Special>
2985 =item Inheritance and overloading
2987 Strings as values of C<use overload> directive, Overloading of an operation
2988 is inherited by derived classes
2992 =item SPECIAL SYMBOLS FOR C<use overload>
3000 C<undef>, TRUE, defined, but FALSE
3002 =item Copy Constructor
3008 =item MAGIC AUTOGENERATION
3010 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
3011 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
3012 I<Concatenation>, I<Comparison operations>, I<Copy operator>
3016 =item Run-time Overloading
3018 =item Public functions
3020 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
3022 =item Overloading constants
3024 integer, float, binary, q, qr
3026 =item IMPLEMENTATION
3034 =head2 sigtrap - Perl pragma to enable simple signal handling
3044 =item SIGNAL HANDLERS
3046 B<stack-trace>, B<die>, B<handler> I<your-handler>
3050 B<normal-signals>, B<error-signals>, B<old-interface-signals>
3054 B<untrapped>, B<any>, I<signal>, I<number>
3060 =head2 strict - Perl pragma to restrict unsafe constructs
3066 C<strict refs>, C<strict vars>, C<strict subs>
3068 =head2 subs - Perl pragma to predeclare sub names
3074 =head2 vars - Perl pragma to predeclare global variable names
3080 =head1 MODULE DOCUMENTATION
3082 =head2 AnyDBM_File - provide framework for multiple DBMs
3090 =item DBM Comparisons
3098 =head2 AutoLoader - load subroutines only on demand
3106 =item Subroutine Stubs
3108 =item Using B<AutoLoader>'s AUTOLOAD Subroutine
3110 =item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
3112 =item Package Lexicals
3114 =item B<AutoLoader> vs. B<SelfLoader>
3122 =head2 AutoSplit - split a package for autoloading
3128 $keep, $check, $modtime
3132 =item Multiple packages
3138 =head2 B - The Perl Compiler
3144 =item OVERVIEW OF CLASSES
3148 =item SV-RELATED CLASSES
3156 IV, IVX, needs64bits, packiv
3170 =item B::PVMG METHODS
3174 =item B::MAGIC METHODS
3176 MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
3178 =item B::PVLV METHODS
3180 TARGOFF, TARGLEN, TYPE, TARG
3184 USEFUL, PREVIOUS, RARE, TABLE
3188 NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT,
3193 LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
3194 BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
3198 FILL, MAX, OFF, ARRAY, AvFLAGS
3202 STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY
3206 FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
3208 =item OP-RELATED CLASSES
3212 next, sibling, ppaddr, desc, targ, type, seq, flags, private
3214 =item B::UNOP METHOD
3218 =item B::BINOP METHOD
3222 =item B::LOGOP METHOD
3226 =item B::CONDOP METHODS
3230 =item B::LISTOP METHOD
3234 =item B::PMOP METHODS
3236 pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
3238 =item B::SVOP METHOD
3242 =item B::GVOP METHOD
3246 =item B::PVOP METHOD
3250 =item B::LOOP METHODS
3252 redoop, nextop, lastop
3254 =item B::COP METHODS
3256 label, stash, filegv, cop_seq, arybase, line
3260 =item FUNCTIONS EXPORTED BY C<B>
3262 main_cv, main_root, main_start, comppadlist, sv_undef, sv_yes, sv_no,
3263 walkoptree(OP, METHOD), walkoptree_debug(DEBUG), walksymtable(SYMREF,
3264 METHOD, RECURSE), svref_2object(SV), ppname(OPNUM), hash(STR), cast_I32(I),
3265 minus_c, cstring(STR), class(OBJ), threadsv_names, byteload_fh(FILEHANDLE)
3269 =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
3278 =head2 B::Assembler - Assemble Perl bytecode
3286 =head2 B::Bblock - Walk basic blocks
3294 =head2 B::Bytecode - Perl compiler's bytecode backend
3302 B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3303 B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3304 B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3310 =head2 B::C - Perl compiler's C backend
3318 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
3319 B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>
3327 =head2 B::CC - Perl compiler's optimized C translation backend
3335 B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
3336 B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
3337 B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
3349 =item Context of ".."
3353 =item Deprecated features
3359 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
3367 =head2 B::Deparse - Perl compiler backend to produce perl code
3375 B<-p>, B<-u>I<PACKAGE>, B<-l>, B<-s>I<LETTERS>, B<C>
3381 =head2 B::Disassembler - Disassemble Perl bytecode
3389 =head2 B::Lint - Perl lint
3395 =item OPTIONS AND LINT CHECKS
3397 B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
3398 B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
3400 =item NON LINT-CHECK OPTIONS
3408 =head2 B::O, O - Generic interface to Perl Compiler backends
3416 =item IMPLEMENTATION
3420 =head2 B::Showlex - Show lexical variables used in functions or files
3428 =head2 B::Stackobj - Helper module for CC backend
3436 =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
3444 =head2 B::Xref - Generates cross reference reports for Perl programs
3452 C<-oFILENAME>, C<-r>, C<-D[tO]>
3458 =head2 Benchmark - benchmark running times of code
3470 =item Standard Exports
3472 timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
3473 timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr (
3474 TIMEDIFF, [ STYLE, [ FORMAT ] ] )
3476 =item Optional Exports
3478 clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( )
3490 =item MODIFICATION HISTORY
3492 =head2 CGI - Simple Common Gateway Interface Class
3502 =item PROGRAMMING STYLE
3504 =item CALLING CGI.PM ROUTINES
3506 1. Use another name for the argument, if one is available. Forexample,
3507 -value is an alias for -values, 2. Change the capitalization, e.g. -Values,
3508 3. Put quotes around the argument name, e.g. '-values'
3510 =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
3512 =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
3514 =item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
3516 =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
3518 =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
3520 =item SETTING THE VALUE(S) OF A NAMED PARAMETER:
3522 =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
3524 =item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
3526 =item DELETING A PARAMETER COMPLETELY:
3528 =item DELETING ALL PARAMETERS:
3530 =item DIRECT ACCESS TO THE PARAMETER LIST:
3532 =item SAVING THE STATE OF THE SCRIPT TO A FILE:
3534 =item USING THE FUNCTION-ORIENTED INTERFACE
3536 B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
3537 B<:standard>, B<:all>
3541 -any, -compile, -nph, -autoload, -no_debug, -private_tempfiles
3545 =item GENERATING DYNAMIC DOCUMENTS
3549 =item CREATING A STANDARD HTTP HEADER:
3551 =item GENERATING A REDIRECTION HEADER
3553 =item CREATING THE HTML DOCUMENT HEADER
3555 B<Parameters:>, 4, 5, 6..
3557 =item ENDING THE HTML DOCUMENT:
3559 =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
3561 =item OBTAINING THE SCRIPT'S URL
3563 B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
3568 =item CREATING STANDARD HTML ELEMENTS:
3572 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS
3574 =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
3576 =item HTML SHORTCUTS AND LIST INTERPOLATION
3578 =item NON-STANDARD HTML SHORTCUTS
3582 =item CREATING FILL-OUT FORMS:
3586 =item CREATING AN ISINDEX TAG
3588 =item STARTING AND ENDING A FORM
3590 B<application/x-www-form-urlencoded>, B<multipart/form-data>
3592 =item CREATING A TEXT FIELD
3596 =item CREATING A BIG TEXT FIELD
3598 =item CREATING A PASSWORD FIELD
3600 =item CREATING A FILE UPLOAD FIELD
3604 =item CREATING A POPUP MENU
3606 =item CREATING A SCROLLING LIST
3610 =item CREATING A GROUP OF RELATED CHECKBOXES
3614 =item CREATING A STANDALONE CHECKBOX
3618 =item CREATING A RADIO BUTTON GROUP
3622 =item CREATING A SUBMIT BUTTON
3626 =item CREATING A RESET BUTTON
3628 =item CREATING A DEFAULT BUTTON
3630 =item CREATING A HIDDEN FIELD
3634 =item CREATING A CLICKABLE IMAGE BUTTON
3636 B<Parameters:>, 3.The third option (-align, optional) is an alignment type,
3638 TOP, BOTTOM or MIDDLE
3640 =item CREATING A JAVASCRIPT ACTION BUTTON
3644 =item NETSCAPE COOKIES
3646 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag,
3647 B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure>
3649 =item WORKING WITH NETSCAPE FRAMES
3651 1. Create a <Frameset> document, 2. Specify the destination for the
3652 document in the HTTP header, 3. Specify the destination for the document in
3655 =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS
3661 =item DUMPING OUT ALL THE NAME/VALUE PAIRS
3665 =item FETCHING ENVIRONMENT VARIABLES
3667 B<accept()>, B<raw_cookie()>, B<user_agent()>, B<path_info()>,
3668 B<path_translated()>, B<remote_host()>, B<script_name()>Return the script
3669 name as a partial URL, for self-refering
3670 scripts, B<referer()>, B<auth_type ()>, B<server_name ()>, B<virtual_host
3671 ()>, B<server_software ()>, B<remote_user ()>, B<user_name ()>,
3674 =item USING NPH SCRIPTS
3676 In the B<use> statement, By calling the B<nph()> method:, By using B<-nph>
3677 parameters in the B<header()> and B<redirect()> statements:
3682 multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end()
3684 =item Avoiding Denial of Service Attacks
3686 B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script
3687 basis>, B<2. Globally for all scripts>
3689 =item COMPATIBILITY WITH CGI-LIB.PL
3691 =item AUTHOR INFORMATION
3695 Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor
3696 (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell
3697 (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg
3698 (jh@axis.se), Laurent Delfosse (delfosse@csgrad1.cs.wvu.edu), Richard
3699 Resnick (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony
3700 Curtis (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom
3701 Christiansen (tchrist@convex.com), Andreas Koenig
3702 (k@franz.ww.TU-Berlin.DE), Tim MacKenzie (Tim.MacKenzie@fulcrum.com.au),
3703 Kevin B. Hendricks (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen
3704 (joyfire@inxpress.net), Ed Jordan (ed@fidalgo.net), David Alan Pisoni
3705 (david@cnation.com), Doug MacEachern (dougm@opengroup.org), Robin Houston
3706 (robin@oneworld.org), ...and many many more..
3708 =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
3714 =head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API
3728 =head2 CGI::Carp, B<CGI::Carp> - CGI routines for writing to the HTTPD (or
3735 =item REDIRECTING ERROR MESSAGES
3737 =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW
3741 =item Changing the default message
3751 =head2 CGI::Cookie - Interface to Netscape Cookies
3757 =item USING CGI::Cookie
3759 B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag>
3763 =item Creating New Cookies
3765 =item Sending the Cookie to the Browser
3767 =item Recovering Previous Cookies
3769 =item Manipulating Cookies
3771 B<name()>, B<value()>, B<domain()>, B<path()>, B<expires()>
3775 =item AUTHOR INFORMATION
3781 =head2 CGI::Fast - CGI Interface for Fast CGI
3787 =item OTHER PIECES OF THE PUZZLE
3789 =item WRITING FASTCGI PERL SCRIPTS
3791 =item INSTALLING FASTCGI SCRIPTS
3793 =item USING FASTCGI SCRIPTS AS CGI SCRIPTS
3797 =item AUTHOR INFORMATION
3803 =head2 CGI::Push - Simple Interface to Server Push
3809 =item USING CGI::Push
3811 -next_page, -last_page, -type, -delay, -cookie, -target, -expires
3815 =item Heterogeneous Pages
3817 =item Changing the Page Delay on the Fly
3821 =item INSTALLING CGI::Push SCRIPTS
3825 =item AUTHOR INFORMATION
3831 =head2 CGI::Switch - Try more than one constructors and return the first
3842 =head2 CPAN - query, download and build perl modules from CPAN sites
3850 =item Interactive Mode
3852 Searching for authors, bundles, distribution files and modules, make, test,
3853 install, clean modules or distributions, readme, look module or
3854 distribution, Signals
3862 =item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
3864 =item ProgrammerE<39>s interface
3866 expand($type,@things), Programming Examples
3868 =item Methods in the four
3876 =item Finding packages and VERSION
3880 =item Floppy, Zip, and all that Jazz
3886 o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
3887 E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
3888 [shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
3893 =item CD-ROM support
3907 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
3913 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
3922 =head2 Carp, carp - warn of errors (from perspective of caller)
3930 =item Forcing a Stack Trace
3934 =head2 Class::Struct - declare struct-like datatypes as Perl classes
3942 =item The C<struct()> function
3944 =item Element Types and Accessor Methods
3946 Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or
3947 C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>)
3953 Example 1, Example 2
3955 =item Author and Modification History
3957 =head2 Cwd, getcwd - get pathname of current working directory
3963 =head2 DB_File - Perl5 access to Berkeley DB version 1.x
3969 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
3973 =item Using DB_File with Berkeley DB version 2
3975 =item Interface to Berkeley DB
3977 =item Opening a Berkeley DB Database File
3979 =item Default Parameters
3981 =item In Memory Databases
3989 =item A Simple Example
3997 =item Changing the BTREE sort order
3999 =item Handling Duplicate Keys
4001 =item The get_dup() Method
4003 =item Matching Partial Keys
4011 =item The 'bval' Option
4013 =item A Simple Example
4017 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
4018 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
4020 =item Another Example
4024 =item THE API INTERFACE
4026 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
4027 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
4028 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
4029 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
4031 =item HINTS AND TIPS
4035 =item Locking Databases
4037 =item Sharing Databases With C Applications
4039 =item The untie() Gotcha
4043 =item COMMON QUESTIONS
4047 =item Why is there Perl source in my database?
4049 =item How do I store complex data structures with DB_File?
4051 =item What does "Invalid Argument" mean?
4053 =item What does "Bareword 'DB_File' not allowed" mean?
4069 =head2 Data::Dumper - stringified perl data structures, suitable for both
4070 printing and C<eval>
4080 I<PACKAGE>->new(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dump I<or>
4081 I<PACKAGE>->Dump(I<ARRAYREF [>, I<ARRAYREF]>), I<$OBJ>->Dumpxs I<or>
4082 I<PACKAGE>->Dumpxs(I<ARRAYREF [>, I<ARRAYREF]>),
4083 I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>),
4084 I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset
4088 Dumper(I<LIST>), DumperX(I<LIST>)
4090 =item Configuration Variables or Methods
4092 $Data::Dumper::Indent I<or> I<$OBJ>->Indent(I<[NEWVAL]>),
4093 $Data::Dumper::Purity I<or> I<$OBJ>->Purity(I<[NEWVAL]>),
4094 $Data::Dumper::Pad I<or> I<$OBJ>->Pad(I<[NEWVAL]>),
4095 $Data::Dumper::Varname I<or> I<$OBJ>->Varname(I<[NEWVAL]>),
4096 $Data::Dumper::Useqq I<or> I<$OBJ>->Useqq(I<[NEWVAL]>),
4097 $Data::Dumper::Terse I<or> I<$OBJ>->Terse(I<[NEWVAL]>),
4098 $Data::Dumper::Freezer I<or> $I<OBJ>->Freezer(I<[NEWVAL]>),
4099 $Data::Dumper::Toaster I<or> $I<OBJ>->Toaster(I<[NEWVAL]>),
4100 $Data::Dumper::Deepcopy I<or> $I<OBJ>->Deepcopy(I<[NEWVAL]>),
4101 $Data::Dumper::Quotekeys I<or> $I<OBJ>->Quotekeys(I<[NEWVAL]>),
4102 $Data::Dumper::Bless I<or> $I<OBJ>->Bless(I<[NEWVAL]>)
4120 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
4126 =head2 DirHandle - supply object methods for directory handles
4132 =head2 English - use nice English (or awk) names for ugly punctuation
4139 =head2 Env - perl module that imports environment variables
4147 =head2 Exporter - Implements default import method for modules
4155 =item Selecting What To Export
4157 =item Specialised Import Lists
4159 =item Exporting without using Export's import method
4161 =item Module Version Checking
4163 =item Managing Unknown Symbols
4165 =item Tag Handling Utility Functions
4169 =head2 ExtUtils::Command - utilities to replace common UNIX commands in
4176 cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv
4177 source... destination, cp source... destination, chmod mode files.., mkpath
4178 directory.., test_f file
4186 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
4196 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
4197 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
4205 =head2 ExtUtils::Install - install files from here to there
4211 =head2 ExtUtils::Installed - Inventory management of installed modules
4221 new(), modules(), files(), directories(), directory_tree(), validate(),
4222 packlist(), version()
4228 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
4234 For static extensions, For dynamic extensions, For dynamic extensions
4240 =item LDLOADLIBS and LD_RUN_PATH
4250 =item VMS implementation
4252 =item Win32 implementation
4258 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
4265 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
4275 =item Preloaded methods
4277 canonpath, catdir, catfile, curdir, rootdir, updir
4279 =item SelfLoaded methods
4281 c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
4282 const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
4283 dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
4284 dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
4285 extliblist, file_name_is_absolute, find_perl
4287 =item Methods to actually produce chunks of text for the Makefile
4289 fixin, force (o), guess_name, has_link_code, init_dirscan, init_main,
4290 init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir,
4291 macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command,
4292 maybe_command_in_dirs, needs_linking (o), nicetext, parse_version,
4293 parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd,
4294 perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize
4295 (o), postamble (o), prefixify, processPL (o), realclean (o),
4296 replace_manpage_separator, static (o), static_lib (o), staticmake (o),
4297 subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
4298 (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
4299 writedoc, xs_c (o), xs_o (o), perl_archive, export_list
4305 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
4314 =item Methods always loaded
4316 eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
4317 rootdir (override), updir (override)
4319 =item SelfLoaded methods
4321 guess_name (override), find_perl (override), path (override), maybe_command
4322 (override), maybe_command_in_dirs (override), perl_script (override),
4323 file_name_is_absolute (override), replace_manpage_separator, init_others
4324 (override), constants (override), cflags (override), const_cccmd
4325 (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
4326 (override), xsubpp_version (override), tools_other (override), dist
4327 (override), c_o (override), xs_c (override), xs_o (override), top_targets
4328 (override), dlsyms (override), dynamic_lib (override), dynamic_bs
4329 (override), static_lib (override), manifypods (override), processPL
4330 (override), installbin (override), subdir_x (override), clean (override),
4331 realclean (override), dist_basics (override), dist_core (override),
4332 dist_dir (override), dist_test (override), install (override), perldepend
4333 (override), makefile (override), test (override), test_via_harness
4334 (override), test_via_script (override), makeaperl (override), nicetext
4339 =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in
4346 catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o),
4347 canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit
4348 (override), tools_other (o), xs_o (o), top_targets (o), manifypods (o),
4349 dist_ci (o), dist_core (o), pasthru (o)
4351 =head2 ExtUtils::MakeMaker - create an extension Makefile
4359 =item How To Write A Makefile.PL
4361 =item Default Makefile Behaviour
4369 =item PREFIX and LIB attribute
4373 =item Static Linking of a new Perl Binary
4375 =item Determination of Perl Library and Installation Locations
4377 =item Which architecture dependent directory?
4379 =item Using Attributes and Parameters
4381 C, CCFLAGS, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS,
4382 EXCLUDE_EXT, EXE_FILES, NO_VC, FIRST_MAKEFILE, FULLPERL, H, IMPORTS, INC,
4383 INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
4384 INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITELIB,
4385 INSTALLSITEARCH, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
4386 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIBPERL_A, LIB, LIBS, LINKTYPE,
4387 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
4388 NEEDS_LINKING, NOECHO, NORECURS, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
4389 PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM,
4390 PMLIBDIRS, PREFIX, PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS,
4391 XSOPT, XSPROTOARG, XS_VERSION
4393 =item Additional lowercase attributes
4395 clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean,
4398 =item Overriding MakeMaker Methods
4400 =item Hintsfile support
4402 =item Distribution Support
4404 make distcheck, make skipcheck, make distclean, make manifest,
4405 make distdir, make tardist, make dist, make uutardist, make
4406 shdist, make zipdist, make ci
4408 =item Disabling an extension
4416 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
4426 =item GLOBAL VARIABLES
4430 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
4431 C<Added to MANIFEST:> I<file>
4437 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
4443 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
4450 NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE
4456 =head2 ExtUtils::Packlist - manage .packlist files
4466 new(), read(), write(), validate(), packlist_file()
4472 =head2 ExtUtils::testlib - add blib/* directories to @INC
4478 =head2 Fatal - replace functions with equivalents which succeed or die
4486 =head2 Fcntl - load the C Fcntl.h defines
4494 =item EXPORTED SYMBOLS
4496 =head2 File::Basename, fileparse - split a pathname into pieces
4502 fileparse_set_fstype, fileparse
4506 C<basename>, C<dirname>
4508 =head2 File::CheckTree, validate - run many filetest checks on a tree
4514 =head2 File::Compare - Compare files or filehandles
4524 =head2 File::Copy - Copy files or filehandles
4532 =item Special behavior if C<syscopy> is defined (VMS and OS/2)
4534 rmscopy($from,$to[,$date_flag])
4542 =head2 File::DosGlob - DOS like globbing and then some
4548 =item EXPORTS (by request only)
4558 =head2 File::Find, find - traverse a file tree
4566 =head2 File::Path - create or remove a series of directories
4576 =head2 File::Spec - portably perform operations on file names
4586 =head2 File::Spec::Mac - File::Spec for MacOS
4594 canonpath, catdir, catfile, curdir, rootdir, updir, file_name_is_absolute,
4599 =head2 File::Spec::OS2 - methods for OS/2 file specs
4605 =head2 File::Spec::Unix - methods used by File::Spec
4613 canonpath, catdir, catfile, curdir, rootdir, updir, no_upwards,
4614 file_name_is_absolute, path, join, nativename
4618 =head2 File::Spec::VMS - methods for VMS file specs
4626 =item Methods always loaded
4628 catdir, catfile, curdir (override), rootdir (override), updir (override),
4629 path (override), file_name_is_absolute (override)
4633 =head2 File::Spec::Win32 - methods for Win32 file specs
4641 =head2 File::stat - by-name interface to Perl's built-in stat() functions
4651 =head2 FileCache - keep more files open than the system permits
4659 =head2 FileHandle - supply object methods for filehandles
4665 $fh->print, $fh->printf, $fh->getline, $fh->getlines
4669 =head2 FindBin - Locate directory of original perl script
4675 =item EXPORTABLE VARIABLES
4685 =head2 GDBM_File - Perl5 access to the gdbm library.
4697 =head2 Getopt::Long, GetOptions - extended processing of command line
4708 =item Linkage specification
4710 =item Aliases and abbreviations
4712 =item Non-option call-back routine
4714 =item Option starters
4716 =item Return values and Errors
4724 =item CONFIGURATION OPTIONS
4726 default, auto_abbrev, getopt_compat, require_order, permute, bundling
4727 (default: reset), bundling_override (default: reset), ignore_case
4728 (default: set), ignore_case_always (default: reset), pass_through (default:
4729 reset), prefix, prefix_pattern, debug (default: reset)
4731 =item OTHER USEFUL VARIABLES
4733 $Getopt::Long::VERSION, $Getopt::Long::error
4737 =item COPYRIGHT AND DISCLAIMER
4739 =head2 Getopt::Std, getopt - Process single-character switches with switch
4746 =head2 I18N::Collate - compare 8-bit scalar data according to the current
4753 =head2 IO - load various IO modules
4759 =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
4767 new ([ ARGS ] ), new_tmpfile
4771 open( FILENAME [,MODE [,PERMS]] )
4777 =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
4786 new (), new_from_fd ( FD, MODE )
4790 $fh->fdopen ( FD, MODE ), $fh->opened, $fh->getline, $fh->getlines,
4791 $fh->ungetc ( ORD ), $fh->write ( BUF, LEN [, OFFSET }\] ), $fh->flush,
4792 $fh->error, $fh->clearerr, $fh->untaint
4802 =head2 IO::lib::IO::Pipe, IO::pipe - supply object methods for pipes
4810 new ( [READER, WRITER] )
4814 reader ([ARGS]), writer ([ARGS]), handles ()
4822 =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
4833 =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
4846 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
4847 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count
4848 (), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
4856 =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
4869 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
4876 =item IO::Socket::INET
4880 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
4883 =item IO::Socket::UNIX
4887 hostpath(), peerpath()
4897 =head2 IPC::Open2, open2 - open a process for both reading and writing
4907 =head2 IPC::Open3, open3 - open a process for reading, writing, and error
4916 =head2 IPC::SysV - SysV IPC constants
4930 =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class
4938 new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set
4939 ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [,
4948 =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object
4957 new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ),
4958 getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ),
4959 set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N
4968 =head2 Math::BigFloat - Arbitrary length float math package
4974 number format, Error returns 'NaN', Division is computed to
4980 =head2 Math::BigInt - Arbitrary size integer math package
4986 Canonical notation, Input, Output
4990 =item Autocreating constants
4996 =head2 Math::Complex - complex numbers and associated mathematical
5007 =item STRINGIFICATION
5011 =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
5013 =item ERRORS DUE TO INDIGESTIBLE ARGUMENTS
5019 =head2 Math::Trig - trigonometric functions
5025 =item TRIGONOMETRIC FUNCTIONS
5031 =item ERRORS DUE TO DIVISION BY ZERO
5033 =item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS
5037 =item PLANE ANGLE CONVERSIONS
5039 =item RADIAL COORDINATE CONVERSIONS
5043 =item COORDINATE SYSTEMS
5045 =item 3-D ANGLE CONVERSIONS
5047 cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian,
5048 cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
5052 =item GREAT CIRCLE DISTANCES
5060 =head2 NDBM_File - Tied access to ndbm files
5066 =head2 Net::Ping - check a remote host for reachability
5076 Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
5077 $timeout]);, $p->close();, pingecho($host [, $timeout]);
5085 =head2 Net::hostent - by-name interface to Perl's built-in gethost*()
5098 =head2 Net::netent - by-name interface to Perl's built-in getnet*()
5111 =head2 Net::protoent - by-name interface to Perl's built-in getproto*()
5122 =head2 Net::servent - by-name interface to Perl's built-in getserv*()
5135 =head2 ODBM_File - Tied access to odbm files
5141 =head2 Opcode - Disable named opcodes when compiling perl code
5151 =item Operator Names and Operator Lists
5153 an operator name (opname), an operator tag name (optag), a negated opname
5154 or optag, an operator set (opset)
5156 =item Opcode Functions
5158 opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
5159 full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
5160 define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
5163 =item Manipulating Opsets
5167 =item Predefined Opcode Tags
5169 :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
5170 :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open,
5171 :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided,
5178 =head2 Opcode::Safe, Safe - Compile and execute code in restricted
5185 a new namespace, an operator mask
5191 =item RECENT CHANGES
5193 =item Methods in class Safe
5195 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
5196 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
5197 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
5198 root (NAMESPACE), mask (MASK)
5200 =item Some Safety Issues
5202 Memory, CPU, Snooping, Signals, State Changes
5208 =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
5217 =head2 POSIX - Perl interface to IEEE Std 1003.1
5229 _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
5230 atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
5231 clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
5232 cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
5233 execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
5234 fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
5235 fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
5236 fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
5237 getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
5238 getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
5239 iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
5240 isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
5241 longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
5242 memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
5243 opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
5244 qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
5245 rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
5246 setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
5247 sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
5248 strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
5249 strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr,
5250 strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh,
5251 tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times,
5252 tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname,
5253 ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid,
5254 wcstombs, wctomb, write
5260 =item POSIX::SigAction
5266 new, addset, delset, emptyset, fillset, ismember
5268 =item POSIX::Termios
5270 new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
5271 getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
5272 setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
5273 field values, c_cflag field values, c_iflag field values, c_lflag field
5274 values, c_oflag field values
5278 =item PATHNAME CONSTANTS
5282 =item POSIX CONSTANTS
5286 =item SYSTEM CONFIGURATION
5344 =head2 Pod::Html - module to convert pod files to HTML
5352 help, htmlroot, infile, outfile, podroot, podpath, libpods, netscape,
5353 nonetscape, index, noindex, recurse, norecurse, title, verbose
5365 =head2 Pod::Text - convert POD data to formatted ASCII text
5375 =head2 SDBM_File - Tied access to sdbm files
5381 =head2 Search::Dict, look - search for key in dictionary file
5387 =head2 SelectSaver - save and restore selected file handle
5393 =head2 SelfLoader - load functions only on demand
5401 =item The __DATA__ token
5403 =item SelfLoader autoloading
5405 =item Autoloading and package lexicals
5407 =item SelfLoader and AutoLoader
5409 =item __DATA__, __END__, and the FOOBAR::DATA filehandle.
5411 =item Classes and inherited methods.
5415 =item Multiple packages and fully qualified subroutine names
5417 =head2 Shell - run shell commands transparently within perl
5425 =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
5426 socket.h defines and structure manipulators
5432 inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
5433 INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
5434 SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
5435 SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
5436 pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
5438 =head2 Symbol - manipulate Perl symbols and their names
5444 =head2 Sys::Hostname - Try every conceivable way to get hostname
5452 =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
5453 interface to the UNIX syslog(3) calls
5459 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
5460 setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02),
5471 =head2 Term::Cap - Perl termcap interface
5479 =head2 Term::Complete - Perl word completion module
5485 E<lt>tabE<gt>, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
5493 =head2 Term::ReadLine - Perl interface to various C<readline> packages. If
5494 no real package is found, substitutes stubs instead of basic functions.
5500 =item Minimal set of supported functions
5502 C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
5503 C<MinLine>, C<findConsole>, Attribs, C<Features>
5505 =item Additional supported functions
5507 C<tkRunning>, C<ornaments>, C<newTTY>
5513 =head2 Test - provides a simple framework for writing test scripts
5521 NORMAL TESTS, SKIPPED TESTS, TODO TESTS
5529 =head2 Test::Harness - run perl standard test scripts with statistics
5537 =item The test script output
5545 C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
5546 %s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
5547 %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
5558 =head2 Text::Abbrev, abbrev - create an abbreviation table from a list
5566 =head2 Text::ParseWords - parse text into an array of tokens or array of
5575 0a simple word, 1multiple spaces are skipped because of our $delim, 2use of
5576 quotes to include a space in a word, 3use of a backslash to include a space
5577 in a word, 4use of a backslash to remove the special meaning of a
5578 double-quote, 5another simple word (note the lack of effect of the
5579 backslashed double-quote)
5583 =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
5596 =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
5607 =head2 Text::Wrap - line wrapping to form simple paragraphs
5619 =head2 Thread - multithreading
5627 new \&start_sub, new \&start_sub, LIST, lock VARIABLE, async BLOCK;,
5628 Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE,
5629 cond_broadcast VARIABLE
5639 =head2 Thread::Queue - thread-safe queues
5645 =item FUNCTIONS AND METHODS
5647 new, enqueue LIST, dequeue, dequeue_nb, pending
5651 =head2 Thread::Semaphore - thread-safe semaphores
5657 =item FUNCTIONS AND METHODS
5659 new, new NUMBER, down, down NUMBER, up, up NUMBER
5661 =head2 Thread::Signal - Start a thread which runs signal handlers reliably
5669 =head2 Thread::Specific - thread-specific keys
5673 =head2 Tie::Array - base class for tied arrays
5679 TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index,
5680 FETCHSIZE this, STORESIZE this, count, EXTEND this, count, CLEAR this,
5681 DESTROY this, PUSH this, LIST, POP this, SHIFT this, UNSHIFT this, LIST,
5682 SPLICE this, offset, length, LIST
5688 =head2 Tie::Handle - base class definitions for tied handles
5694 TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this,
5695 LIST, PRINTF this, format, LIST, READ this, scalar, length, offset,
5696 READLINE this, GETC this, DESTROY this
5698 =item MORE INFORMATION
5700 =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
5706 TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
5707 this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
5711 =item MORE INFORMATION
5713 =head2 Tie::RefHash - use references as hash keys
5727 =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
5734 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
5736 =item MORE INFORMATION
5738 =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
5746 =head2 Time::Local - efficiently compute time from local and GMT time
5752 =head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
5763 =head2 Time::localtime - by-name interface to Perl's built-in localtime()
5774 =head2 Time::tm - internal object used by Time::gmtime and Time::localtime
5782 =head2 UNIVERSAL - base class for ALL classes (blessed references)
5788 isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa (
5789 VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD )
5791 =head2 User::grent - by-name interface to Perl's built-in getgr*()
5802 =head2 User::pwent - by-name interface to Perl's built-in getpw*()
5813 =head1 AUXILIARY DOCUMENTATION
5815 Here should be listed all the extra programs' documentation, but they
5816 don't all have manual pages yet:
5838 Larry Wall <F<larry@wall.org>>, with the help of oodles