=head1 NAME perltoc - perl documentation table of contents =head1 DESCRIPTION This page provides a brief table of contents for the rest of the Perl documentation set. It is meant to be scanned quickly or grepped through to locate the proper section you're looking for. =head1 BASIC DOCUMENTATION =head2 perl - Practical Extraction and Report Language =item SYNOPSIS =item DESCRIPTION Many usability enhancements, Simplified grammar, Lexical scoping, Arbitrarily nested data structures, Modularity and reusability, Object-oriented programming, Embeddable and Extensible, POSIX compliant, Package constructors and destructors, Multiple simultaneous DBM implementations, Subroutine definitions may now be autoloaded, Regular expression enhancements, Innumerable Unbundled Modules, Compilability =item ENVIRONMENT =item AUTHOR =item FILES =item SEE ALSO =item DIAGNOSTICS =item BUGS =item NOTES =head2 perlfaq - frequently asked questions about Perl ($Date: 1998/07/20 23:12:17 $) =item DESCRIPTION perlfaq: Structural overview of the FAQ, L: General Questions About Perl, L: Obtaining and Learning about Perl, L: Programming Tools, L: Data Manipulation, L: Files and Formats, L: Regexps, L: General Perl Language Issues, L: System Interaction, L: Networking =over =item Where to get this document =item How to contribute to this document =item What will happen if you mail your Perl programming problems to the authors =back =item Credits =item Author and Copyright Information =over =item Bundled Distributions =item Disclaimer =back =item Changes 24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.3 $, $Date: 1998/06/14 22:15:25 $) =item DESCRIPTION =over =item What is Perl? =item Who supports Perl? Who develops it? Why is it free? =item Which version of Perl should I use? =item What are perl4 and perl5? =item How stable is Perl? =item Is Perl difficult to learn? =item How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl? =item Can I do [task] in Perl? =item When shouldn't I program in Perl? =item What's the difference between "perl" and "Perl"? =item Is it a Perl program or a Perl script? =item What is a JAPH? =item Where can I get a list of Larry Wall witticisms? =item How can I convince my sysadmin/supervisor/employees to use version (5/5.004/Perl instead of some other language)? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.3 $, $Date: 1999/04/29 22:52:20 $) =item DESCRIPTION =over =item What machines support Perl? Where do I get it? =item How can I get a binary version of Perl? =item I don't have a C compiler on my system. How can I compile perl? =item I copied the Perl binary from one machine to another, but scripts don't work. =item I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work? =item What modules and extensions are available for Perl? What is CPAN? What does CPAN/src/... mean? =item Is there an ISO or ANSI certified version of Perl? =item Where can I get information on Perl? =item What are the Perl newsgroups on USENET? Where do I post questions? =item Where should I post source code? =item Perl Books References, Tutorials *Learning Perl [2nd edition] by Randal L. Schwartz and Tom Christiansen, Task-Oriented, Special Topics =item Perl in Magazines =item Perl on the Net: FTP and WWW Access =item What mailing lists are there for perl? MacPerl, Perl5-Porters, NTPerl, Perl-Packrats =item Archives of comp.lang.perl.misc =item Where can I buy a commercial version of Perl? =item Where do I send bug reports? =item What is perl.com? perl.org? The Perl Institute? =item How do I learn about object-oriented Perl programming? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq3 - Programming Tools ($Revision: 1.3 $, $Date: 1998/07/16 22:08:49 $) =item DESCRIPTION =over =item How do I do (anything)? =item How can I use Perl interactively? =item Is there a Perl shell? =item How do I debug my Perl programs? =item How do I profile my Perl programs? =item How do I cross-reference my Perl programs? =item Is there a pretty-printer (formatter) for Perl? =item Is there a ctags for Perl? =item Where can I get Perl macros for vi? =item Where can I get perl-mode for emacs? =item How can I use curses with Perl? =item How can I use X or Tk with Perl? =item How can I generate simple menus without using CGI or Tk? =item What is undump? =item How can I make my Perl program run faster? =item How can I make my Perl program take less memory? =item Is it unsafe to return a pointer to local data? =item How can I free an array or hash so my program shrinks? =item How can I make my CGI script more efficient? =item How can I hide the source for my Perl program? =item How can I compile my Perl program into byte code or C? =item How can I get C<#!perl> to work on [MS-DOS,NT,...]? =item Can I write useful perl programs on the command line? =item Why don't perl one-liners work on my DOS/Mac/VMS system? =item Where can I learn about CGI or Web programming in Perl? =item Where can I learn about object-oriented Perl programming? =item Where can I learn about linking C with Perl? [h2xs, xsubpp] =item I've read perlembed, perlguts, etc., but I can't embed perl in my C program, what am I doing wrong? =item When I tried to run my script, I got this message. What does it mean? =item What's MakeMaker? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq4 - Data Manipulation ($Revision: 1.3 $, $Date: 1998/07/16 22:49:55 $) =item DESCRIPTION =item Data: Numbers =over =item Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)? =item Why isn't my octal data interpreted correctly? =item Does perl have a round function? What about ceil() and floor()? Trig functions? =item How do I convert bits into ints? =item How do I multiply matrices? =item How do I perform an operation on a series of integers? =item How can I output Roman numerals? =item Why aren't my random numbers random? =back =item Data: Dates =over =item How do I find the week-of-the-year/day-of-the-year? =item How can I compare two dates and find the difference? =item How can I take a string and turn it into epoch seconds? =item How can I find the Julian Day? =item Does Perl have a year 2000 problem? Is Perl Y2K compliant? =back =item Data: Strings =over =item How do I validate input? =item How do I unescape a string? =item How do I remove consecutive pairs of characters? =item How do I expand function calls in a string? =item How do I find matching/nesting anything? =item How do I reverse a string? =item How do I expand tabs in a string? =item How do I reformat a paragraph? =item How can I access/change the first N letters of a string? =item How do I change the Nth occurrence of something? =item How can I count the number of occurrences of a substring within a string? =item How do I capitalize all the words on one line? =item How can I split a [character] delimited string except when inside [character]? (Comma-separated files) =item How do I strip blank space from the beginning/end of a string? =item How do I extract selected columns from a string? =item How do I find the soundex value of a string? =item How can I expand variables in text strings? =item What's wrong with always quoting "$vars"? =item Why don't my <? =item Is there a leak/bug in glob()? =item How can I open a file with a leading "E" or trailing blanks? =item How can I reliably rename a file? =item How can I lock a file? =item What can't I just open(FH, ">file.lock")? =item I still don't get locking. I just want to increment the number in the file. How can I do this? =item How do I randomly update a binary file? =item How do I get a file's timestamp in perl? =item How do I set a file's timestamp in perl? =item How do I print to more than one file at once? =item How can I read in a file by paragraphs? =item How can I read a single character from a file? From the keyboard? =item How can I tell if there's a character waiting on a filehandle? =item How do I do a C in perl? =item How do I dup() a filehandle in Perl? =item How do I close a file descriptor by number? =item Why can't I use "C:\temp\foo" in DOS paths? What doesn't `C:\temp\foo.exe` work? =item Why doesn't glob("*.*") get all the files? =item Why does Perl let me delete read-only files? Why does C<-i> clobber protected files? Isn't this a bug in Perl? =item How do I select a random line from a file? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq6 - Regexps ($Revision: 1.3 $, $Date: 1999/04/29 22:52:20 $) =item DESCRIPTION =over =item How can I hope to use regular expressions without creating illegible and unmaintainable code? Comments Outside the Regexp, Comments Inside the Regexp, Different Delimiters =item I'm having trouble matching over more than one line. What's wrong? =item How can I pull out lines between two patterns that are themselves on different lines? =item I put a regular expression into $/ but it didn't work. What's wrong? =item How do I substitute case insensitively on the LHS, but preserving case on the RHS? =item How can I make C<\w> match national character sets? =item How can I match a locale-smart version of C? =item How can I quote a variable to use in a regexp? =item What is C really for? =item How do I use a regular expression to strip C style comments from a file? =item Can I use Perl regular expressions to match balanced text? =item What does it mean that regexps are greedy? How can I get around it? =item How do I process each word on each line? =item How can I print out a word-frequency or line-frequency summary? =item How can I do approximate matching? =item How do I efficiently match many regular expressions at once? =item Why don't word-boundary searches with C<\b> work for me? =item Why does using $&, $`, or $' slow my program down? =item What good is C<\G> in a regular expression? =item Are Perl regexps DFAs or NFAs? Are they POSIX compliant? =item What's wrong with using grep or map in a void context? =item How can I match strings with multibyte characters? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq7 - Perl Language Issues ($Revision: 1.3 $, $Date: 1998/06/22 15:20:07 $) =item DESCRIPTION =over =item Can I get a BNF/yacc/RE for the Perl language? =item What are all these $@%* punctuation signs, and how do I know when to use them? =item Do I always/never have to quote my strings or use semicolons and commas? =item How do I skip some return values? =item How do I temporarily block warnings? =item What's an extension? =item Why do Perl operators have different precedence than C operators? =item How do I declare/create a structure? =item How do I create a module? =item How do I create a class? =item How can I tell if a variable is tainted? =item What's a closure? =item What is variable suicide and how can I prevent it? =item How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regexp}? Passing Variables and Functions, Passing Filehandles, Passing Regexps, Passing Methods =item How do I create a static variable? =item What's the difference between dynamic and lexical (static) scoping? Between local() and my()? =item How can I access a dynamic variable while a similarly named lexical is in scope? =item What's the difference between deep and shallow binding? =item Why doesn't "my($foo) = ;" work right? =item How do I redefine a builtin function, operator, or method? =item What's the difference between calling a function as &foo and foo()? =item How do I create a switch or case statement? =item How can I catch accesses to undefined variables/functions/methods? =item Why can't a method included in this same file be found? =item How can I find out my current package? =item How can I comment out a large block of perl code? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq8 - System Interaction ($Revision: 1.3 $, $Date: 1998/07/05 15:07:20 $) =item DESCRIPTION =over =item How do I find out which operating system I'm running under? =item How come exec() doesn't return? =item How do I do fancy stuff with the keyboard/screen/mouse? Keyboard, Screen, Mouse =item How do I print something out in color? =item How do I read just one key without waiting for a return key? =item How do I check whether input is ready on the keyboard? =item How do I clear the screen? =item How do I get the screen size? =item How do I ask the user for a password? =item How do I read and write the serial port? lockfiles, open mode, end of line, flushing output, non-blocking input =item How do I decode encrypted password files? =item How do I start a process in the background? STDIN, STDOUT, and STDERR are shared, Signals, Zombies =item How do I trap control characters/signals? =item How do I modify the shadow password file on a Unix system? =item How do I set the time and date? =item How can I sleep() or alarm() for under a second? =item How can I measure time under a second? =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) =item Why doesn't my sockets program work under System V (Solaris)? What does the error message "Protocol not supported" mean? =item How can I call my system's unique C functions from Perl? =item Where do I get the include files to do ioctl() or syscall()? =item Why do setuid perl scripts complain about kernel problems? =item How can I open a pipe both to and from a command? =item Why can't I get the output of a command with system()? =item How can I capture STDERR from an external command? =item Why doesn't open() return an error when a pipe open fails? =item What's wrong with using backticks in a void context? =item How can I call backticks without shell processing? =item Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)? =item How can I convert my shell script to perl? =item Can I use perl to run a telnet or ftp session? =item How can I write expect in Perl? =item Is there a way to hide perl's command line from programs such as "ps"? =item I {changed directory, modified my environment} in a perl script. How come the change disappeared when I exited the script? How do I get my changes to be visible? Unix =item How do I close a process's filehandle without waiting for it to complete? =item How do I fork a daemon process? =item How do I make my program run with sh and csh? =item How do I find out if I'm running interactively or not? =item How do I timeout a slow event? =item How do I set CPU limits? =item How do I avoid zombies on a Unix system? =item How do I use an SQL database? =item How do I make a system() exit on control-C? =item How do I open a file without blocking? =item How do I install a CPAN module? =item What's the difference between require and use? =item How do I keep my own module/library directory? =item How do I add the directory my program lives in to the module/library search path? =item How do I add a directory to my include path at runtime? =back =item AUTHOR AND COPYRIGHT =head2 perlfaq9 - Networking ($Revision: 1.3 $, $Date: 1998/06/22 18:31:09 $) =item DESCRIPTION =over =item My CGI script runs from the command line but not the browser. (500 Server Error) =item How can I get better error messages from a CGI program? =item How do I remove HTML from a string? =item How do I extract URLs? =item How do I download a file from the user's machine? How do I open a file on another machine? =item How do I make a pop-up menu in HTML? =item How do I fetch an HTML file? =item How do I automate an HTML form submission? =item How do I decode or create those %-encodings on the web? =item How do I redirect to another page? =item How do I put a password on my web pages? =item How do I edit my .htpasswd and .htgroup files with Perl? =item How do I make sure users can't enter values into a form that cause my CGI script to do bad things? =item How do I parse a mail header? =item How do I decode a CGI form? =item How do I check a valid mail address? =item How do I decode a MIME/BASE64 string? =item How do I return the user's mail address? =item How do I send mail? =item How do I read mail? =item How do I find out my hostname/domainname/IP address? =item How do I fetch a news article or the active newsgroups? =item How do I fetch/put an FTP file? =item How can I do RPC in Perl? =back =item AUTHOR AND COPYRIGHT =head2 perldelta - what's new for perl5.005 =item DESCRIPTION =item About the new versioning system =item Incompatible Changes =over =item WARNING: This version is not binary compatible with Perl 5.004. =item Default installation structure has changed =item Perl Source Compatibility =item C Source Compatibility Core sources now require ANSI C compiler, All Perl global variables must now be referenced with an explicit prefix, Enabling threads has source compatibility issues =item Binary Compatibility =item Security fixes may affect compatibility =item Relaxed new mandatory warnings introduced in 5.004 =item Licensing =back =item Core Changes =over =item Threads =item Compiler =item Regular Expressions Many new and improved optimizations, Many bug fixes, New regular expression constructs, New operator for precompiled regular expressions, Other improvements, Incompatible changes =item Improved malloc() =item Quicksort is internally implemented =item Reliable signals =item Reliable stack pointers =item More generous treatment of carriage returns =item Memory leaks =item Better support for multiple interpreters =item Behavior of local() on array and hash elements is now well-defined =item C<%!> is transparently tied to the L module =item Pseudo-hashes are supported =item C is supported =item Keywords can be globally overridden =item C<$^E> is meaningful on Win32 =item C optimized =item C can be used as implicitly quoted package name =item C tests existence of a package =item Better locale support =item Experimental support for 64-bit platforms =item prototype() returns useful results on builtins =item Extended support for exception handling =item Re-blessing in DESTROY() supported for chaining DESTROY() methods =item All C format conversions are handled internally =item New C keyword =item New C keyword =item New C operator =item C is now a reserved word =item Tied arrays are now fully supported =item Tied handles support is better =item 4th argument to substr =item Negative LENGTH argument to splice =item Magic lvalues are now more magical =item EE now reads in records =back =item Supported Platforms =over =item New Platforms =item Changes in existing support =back =item Modules and Pragmata =over =item New Modules B, Data::Dumper, Errno, File::Spec, ExtUtils::Installed, ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, Thread, attrs, fields, re =item Changes in existing modules CGI, POSIX, DB_File, MakeMaker, CPAN, Cwd, Benchmark =back =item Utility Changes =item Documentation Changes =item New Diagnostics Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index while coercing array into hash, Bareword "%s" refers to nonexistent package, Can't call method "%s" on an undefined value, Can't coerce array into hash, Can't goto subroutine from an eval-string, Can't localize pseudo-hash element, Can't use %%! because Errno.pm is not available, Cannot find an opnumber for "%s", Character class syntax [. .] is reserved for future extensions, Character class syntax [: :] is reserved for future extensions, Character class syntax [= =] is reserved for future extensions, %s: Eval-group in insecure regular expression, %s: Eval-group not allowed, use re 'eval', %s: Eval-group not allowed at run time, Explicit blessing to '' (assuming package main), Illegal hex digit ignored, No such array field, No such field "%s" in variable %s of type %s, Out of memory during ridiculously large request, Range iterator outside integer range, Recursive inheritance detected while looking for method '%s' in package '%s', Reference found where even-sized list expected, Undefined value assigned to typeglob, Use of reserved word "%s" is deprecated, perl: warning: Setting locale failed =item Obsolete Diagnostics Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open temporary file =item BUGS =item SEE ALSO =item HISTORY =head2 perldata - Perl data types =item DESCRIPTION =over =item Variable names =item Context =item Scalar values =item Scalar value constructors =item List value constructors =item Typeglobs and Filehandles =back =head2 perlsyn - Perl syntax =item DESCRIPTION =over =item Declarations =item Simple statements =item Compound statements =item Loop Control =item For Loops =item Foreach Loops =item Basic BLOCKs and Switch Statements =item Goto =item PODs: Embedded Documentation =item Plain Old Comments (Not!) =back =head2 perlop - Perl operators and precedence =item SYNOPSIS =item DESCRIPTION =over =item Terms and List Operators (Leftward) =item The Arrow Operator =item Auto-increment and Auto-decrement =item Exponentiation =item Symbolic Unary Operators =item Binding Operators =item Multiplicative Operators =item Additive Operators =item Shift Operators =item Named Unary Operators =item Relational Operators =item Equality Operators =item Bitwise And =item Bitwise Or and Exclusive Or =item C-style Logical And =item C-style Logical Or =item Range Operators =item Conditional Operator =item Assignment Operators =item Comma Operator =item List Operators (Rightward) =item Logical Not =item Logical And =item Logical or and Exclusive Or =item C Operators Missing From Perl unary &, unary *, (TYPE) =item Quote and Quote-like Operators =item Regexp Quote-Like Operators ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, y/SEARCHLIST/REPLACEMENTLIST/cds =item Gory details of parsing quoted constructs Finding the end, Removal of backslashes before delimiters, Interpolation, C<<<'EOF'>, C, C, C, C, C<''>, C, C<"">, C<``>, C, C, C<>, C, C, C, C,, Interpolation of regular expressions, Optimization of regular expressions =item I/O Operators =item Constant Folding =item Bitwise String Operators =item Integer Arithmetic =item Floating-point Arithmetic =item Bigger Numbers =back =head2 perlre - Perl regular expressions =item DESCRIPTION i, m, s, x =over =item Regular Expressions C<(?#text)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, C<(?=pattern)>, C<(?!pattern)>, C<(?E=pattern)>, C<(?, C<(?{ code })>, C<(?Epattern)>, C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>, C<(?imsx-imsx)> =item Backtracking =item Version 8 Regular Expressions =item WARNING on \1 vs $1 =item Repeated patterns matching zero-length substring =item Creating custom RE engines =item SEE ALSO =back =head2 perlrun - how to execute the Perl interpreter =item SYNOPSIS =item DESCRIPTION =over =item #! and quoting on non-Unix systems OS/2, MS-DOS, Win95/NT, Macintosh =item Location of Perl =item Switches B<-0>[I], B<-a>, B<-c>, B<-d>, B<-d:>I, B<-D>I, B<-D>I, B<-e> I, B<-F>I, B<-h>, B<-i>[I], B<-I>I, B<-l>[I], B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-x> I =back =item ENVIRONMENT HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL (specific to WIN32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL =head2 perlfunc - Perl builtin functions =item DESCRIPTION =over =item Perl Functions by Category Functions for SCALARs or strings, Regular expressions and pattern matching, Numeric functions, Functions for real @ARRAYs, Functions for list data, Functions for real %HASHes, Input and output functions, Functions for fixed length data or records, Functions for filehandles, files, or directories, Keywords related to the control flow of your perl program, Keywords related to scoping, Miscellaneous functions, Functions for processes and process groups, Keywords related to perl modules, Keywords related to classes and object-orientedness, Low-level socket functions, System V interprocess communication functions, Fetching user and group info, Fetching network info, Time-related functions, Functions new in perl5, Functions obsoleted in perl5 =item Alphabetical Listing of Perl Functions I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE, chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, defined EXPR, defined, delete EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST, map EXPR,LIST, mkdir FILENAME,MODE, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL, next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE, opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR, recv SOCKET,SCALAR,LEN,FLAGS, redo LABEL, redo, ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR, reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, tell FILEHANDLE, tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module LIST, use Module, use Module VERSION LIST, use VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y/// =back =head2 perlvar - Perl predefined variables =item DESCRIPTION =over =item Predefined Names $ARG, $_, $EIE, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', $LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $], $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, $^R, $^S, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, @_, %INC, %ENV $ENV{expr}, %SIG $SIG{expr} =item Error Indicators =back =head2 perlsub - Perl subroutines =item SYNOPSIS =item DESCRIPTION =over =item Private Variables via C =item Persistent Private Variables =item Temporary Values via local() =item Passing Symbol Table Entries (typeglobs) =item When to Still Use local() 1. You need to give a global variable a temporary value, especially C<$_>, 2. You need to create a local file or directory handle or a local function, 3. You want to temporarily change just one element of an array or hash =item Pass by Reference =item Prototypes =item Constant Functions =item Overriding Builtin Functions =item Autoloading =back =item SEE ALSO =head2 perlmod - Perl modules (packages and symbol tables) =item DESCRIPTION =over =item Packages =item Symbol Tables =item Package Constructors and Destructors =item Perl Classes =item Perl Modules =back =item SEE ALSO =head2 perlmodlib - constructing new Perl modules and finding existing ones =item DESCRIPTION =item THE PERL MODULE LIBRARY =over =item Pragmatic Modules use autouse MODULE => qw(sub1 sub2 sub3), blib, diagnostics, integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, vmsish, vars =item Standard Modules AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB_File, Devel::SelfStubber, DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed, ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy, File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin, GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File, IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2, IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent, Net::servent, Opcode, Pod::Text, POSIX, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent =item Extension Modules =back =item CPAN Language Extensions and Documentation Tools, Development Support, Operating System Interfaces, Networking, Device Control (modems) and InterProcess Communication, Data Types and Data Type Utilities, Database Interfaces, User Interfaces, Interfaces to / Emulations of Other Programming Languages, File Names, File Systems and File Locking (see also File Handles), String Processing, Language Text Processing, Parsing, and Searching, Option, Argument, Parameter, and Configuration File Processing, Internationalization and Locale, Authentication, Security, and Encryption, World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities, Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing, and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and exceptions etc), File Handle and Input/Output Stream Utilities, Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America, South America =item Modules: Creation, Use, and Abuse =over =item Guidelines for Module Creation Do similar modules already exist in some form?, Try to design the new module to be easy to extend and reuse, Some simple style guidelines, Select what to export, Select a name for the module, Have you got it right?, README and other Additional Files, A description of the module/package/extension etc, A copyright notice - see below, Prerequisites - what else you may need to have, How to build it - possible changes to Makefile.PL etc, How to install it, Recent changes in this release, especially incompatibilities, Changes / enhancements you plan to make in the future, Adding a Copyright Notice, Give the module a version/issue/release number, How to release and distribute a module, Take care when changing a released module =item Guidelines for Converting Perl 4 Library Scripts into Modules There is no requirement to convert anything, Consider the implications, Make the most of the opportunity, The pl2pm utility will get you started, Adds the standard Module prologue lines, Converts package specifiers from ' to ::, Converts die(...) to croak(...), Several other minor changes =item Guidelines for Reusing Application Code Complete applications rarely belong in the Perl Module Library, Many applications contain some Perl code that could be reused, Break-out the reusable code into one or more separate module files, Take the opportunity to reconsider and redesign the interfaces, In some cases the 'application' can then be reduced to a small =back =item NOTE =head2 perlmodinstall - Installing CPAN Modules =item DESCRIPTION =over =item PREAMBLE B the file, B the file into a directory, B the module (sometimes unnecessary), B the module =back =item HEY =item AUTHOR =item COPYRIGHT =head2 perlform - Perl formats =item DESCRIPTION =over =item Format Variables =back =item NOTES =over =item Footers =item Accessing Formatting Internals =back =item WARNINGS =head2 perllocale - Perl locale handling (internationalization and localization) =item DESCRIPTION =item PREPARING TO USE LOCALES =item USING LOCALES =over =item The use locale pragma =item The setlocale function =item Finding locales =item LOCALE PROBLEMS =item Temporarily fixing locale problems =item Permanently fixing locale problems =item Permanently fixing your locale configuration =item Permanently fixing system locale configuration =item The localeconv function =back =item LOCALE CATEGORIES =over =item Category LC_COLLATE: Collation =item Category LC_CTYPE: Character Types =item Category LC_NUMERIC: Numeric Formatting =item Category LC_MONETARY: Formatting of monetary amounts =item LC_TIME =item Other categories =back =item SECURITY B (C, C, C, C and C):, B (with C<\l>, C<\L>, C<\u> or C<\U>), B (C):, B (C):, B (sprintf()):, B (printf() and write()):, B (lc(), lcfirst(), uc(), ucfirst()):, B (localeconv(), strcoll(),strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit()): =item ENVIRONMENT PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, LC_TIME, LANG =item NOTES =over =item Backward compatibility =item I18N:Collate obsolete =item Sort speed and memory use impacts =item write() and LC_NUMERIC =item Freely available locale definitions =item I18n and l10n =item An imperfect standard =back =item BUGS =over =item Broken systems =back =item SEE ALSO =item HISTORY =head2 perlref - Perl references and nested data structures =item DESCRIPTION =over =item Making References =item Using References =item Symbolic references =item Not-so-symbolic references =item Pseudo-hashes: Using an array as a hash =item Function Templates =back =item WARNING =item SEE ALSO =head2 perldsc - Perl Data Structures Cookbook =item DESCRIPTION arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, more elaborate constructs =item REFERENCES =item COMMON MISTAKES =item CAVEAT ON PRECEDENCE =item WHY YOU SHOULD ALWAYS C =item DEBUGGING =item CODE EXAMPLES =item LISTS OF LISTS =over =item Declaration of a LIST OF LISTS =item Generation of a LIST OF LISTS =item Access and Printing of a LIST OF LISTS =back =item HASHES OF LISTS =over =item Declaration of a HASH OF LISTS =item Generation of a HASH OF LISTS =item Access and Printing of a HASH OF LISTS =back =item LISTS OF HASHES =over =item Declaration of a LIST OF HASHES =item Generation of a LIST OF HASHES =item Access and Printing of a LIST OF HASHES =back =item HASHES OF HASHES =over =item Declaration of a HASH OF HASHES =item Generation of a HASH OF HASHES =item Access and Printing of a HASH OF HASHES =back =item MORE ELABORATE RECORDS =over =item Declaration of MORE ELABORATE RECORDS =item Declaration of a HASH OF COMPLEX RECORDS =item Generation of a HASH OF COMPLEX RECORDS =back =item Database Ties =item SEE ALSO =item AUTHOR =head2 perllol, perlLoL - Manipulating Lists of Lists in Perl =item DESCRIPTION =item Declaration and Access of Lists of Lists =item Growing Your Own =item Access and Printing =item Slices =item SEE ALSO =item AUTHOR =head2 perltoot - Tom's object-oriented tutorial for perl =item DESCRIPTION =item Creating a Class =over =item Object Representation =item Class Interface =item Constructors and Instance Methods =item Planning for the Future: Better Constructors =item Destructors =item Other Object Methods =back =item Class Data =over =item Accessing Class Data =item Debugging Methods =item Class Destructors =item Documenting the Interface =back =item Aggregation =item Inheritance =over =item Overridden Methods =item Multiple Inheritance =item UNIVERSAL: The Root of All Objects =back =item Alternate Object Representations =over =item Arrays as Objects =item Closures as Objects =back =item AUTOLOAD: Proxy Methods =over =item Autoloaded Data Methods =item Inherited Autoloaded Data Methods =back =item Metaclassical Tools =over =item Class::Struct =item Data Members as Variables =item NOTES =item Object Terminology =back =item SEE ALSO =item AUTHOR AND COPYRIGHT =item COPYRIGHT =over =item Acknowledgments =back =head2 perlobj - Perl objects =item DESCRIPTION =over =item An Object is Simply a Reference =item A Class is Simply a Package =item A Method is Simply a Subroutine =item Method Invocation =item Default UNIVERSAL methods isa(CLASS), can(METHOD), VERSION( [NEED] ) =item Destructors =item WARNING =item Summary =item Two-Phased Garbage Collection =back =item SEE ALSO =head2 perltie - how to hide an object class in a simple variable =item SYNOPSIS =item DESCRIPTION =over =item Tying Scalars TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this =item Tying Arrays TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, DESTROY this =item Tying Hashes USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY this, NEXTKEY this, lastkey, DESTROY this =item Tying FileHandles TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this =item The C Gotcha =back =item SEE ALSO =item BUGS =item AUTHOR =head2 perlbot - Bag'o Object Tricks (the BOT) =item DESCRIPTION =item OO SCALING TIPS =item INSTANCE VARIABLES =item SCALAR INSTANCE VARIABLES =item INSTANCE VARIABLE INHERITANCE =item OBJECT RELATIONSHIPS =item OVERRIDING SUPERCLASS METHODS =item USING RELATIONSHIP WITH SDBM =item THINKING OF CODE REUSE =item CLASS CONTEXT AND THE OBJECT =item INHERITING A CONSTRUCTOR =item DELEGATION =head2 perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores) =item DESCRIPTION =item Signals =item Named Pipes =over =item WARNING =back =item Using open() for IPC =over =item Filehandles =item Background Processes =item Complete Dissociation of Child from Parent =item Safe Pipe Opens =item Bidirectional Communication with Another Process =item Bidirectional Communication with Yourself =back =item Sockets: Client/Server Communication =over =item Internet Line Terminators =item Internet TCP Clients and Servers =item Unix-Domain TCP Clients and Servers =back =item TCP Clients with IO::Socket =over =item A Simple Client C, C, C =item A Webget Client =item Interactive Client with IO::Socket =back =item TCP Servers with IO::Socket Proto, LocalPort, Listen, Reuse =item UDP: Message Passing =item SysV IPC =item NOTES =item BUGS =item AUTHOR =item SEE ALSO =head2 perldebug - Perl debugging =item DESCRIPTION =item The Perl Debugger =over =item Debugger Commands h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n [expr], ECRE, c [line|sub], l, l min+incr, l min-max, l line, l subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], t, t expr, b [line] [condition], b subname [condition], b postpone subname [condition], b load filename, b compile subname, d [line], D, a [line] command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?].., C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, E [ command ], EE command, E command, EE command, { [ command ], {{ command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, m package =item Debugger input/output Prompt, Multiline commands, Stack backtrace, Listing, Frame listing =item Debugging compile-time statements =item Debugger Customization =item Readline Support =item Editor Support for Debugging =item The Perl Profiler =item Debugger support in perl =item Debugger Internals =item Other resources =item BUGS =back =item Debugging Perl memory usage =over =item Using C<$ENV{PERL_DEBUG_MSTATS}> C, Free/Used, C, C, C, C, C =item Example of using B<-DL> switch C<717>, C<002>, C<054>, C<602>, C<702>, C<704> =item B<-DL> details C, C, C =item Limitations of B<-DL> statistic =back =item Debugging regular expressions =over =item Compile-time output C I C I, C I C I, C, C, C I, C, C, C, C, C, C, C =item Types of nodes =item Run-time output =back =head2 perldiag - various Perl diagnostics =item DESCRIPTION =head2 perlsec - Perl security =item DESCRIPTION =over =item Laundering and Detecting Tainted Data =item Switches On the "#!" Line =item Cleaning Up Your Path =item Security Bugs =item Protecting Your Programs =back =item SEE ALSO =head2 perltrap - Perl traps for the unwary =item DESCRIPTION =over =item Awk Traps =item C Traps =item Sed Traps =item Shell Traps =item Perl Traps =item Perl4 to Perl5 Traps Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical Traps, General data type traps, Context Traps - scalar, list contexts, Precedence Traps, General Regular Expression Traps using s///, etc, Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps =item Discontinuance, Deprecation, and BugFix traps Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, Discontinuance, Discontinuance, Deprecation, Discontinuance =item Parsing Traps Parsing, Parsing, Parsing, Parsing =item Numerical Traps Numerical, Numerical, Numerical =item General data type traps (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), (Constants), (Scalars), (Variable Suicide) =item Context Traps - scalar, list contexts (list context), (scalar context), (scalar context), (list, builtin) =item Precedence Traps Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, Precedence =item General Regular Expression Traps using s///, etc. Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression =item Subroutine, Signal, Sorting Traps (Signals), (Sort Subroutine), warn() won't let you specify a filehandle =item OS Traps (SysV), (SysV) =item Interpolation Traps Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation =item DBM Traps DBM, DBM =item Unclassified Traps C/C trap using returned value, C on empty string with LIMIT specified =back =head2 perlport - Writing portable Perl =item DESCRIPTION Not all Perl programs have to be portable, The vast majority of Perl B portable =item ISSUES =over =item Newlines =item File Paths =item System Interaction =item Interprocess Communication (IPC) =item External Subroutines (XS) =item Standard Modules =item Time and Date =item System Resources =item Security =item Style =back =item CPAN TESTERS Mailing list: cpan-testers@perl.org, Testing results: C =item PLATFORMS =over =item Unix =item DOS and Derivatives The djgpp environment for DOS, C, The EMX environment for DOS, OS/2, etc. C,C, C. Build instructions for Win32, L, The ActiveState Pages, C =item MacPerl The MacPerl Pages, C, The MacPerl mailing list, C =item VMS L, vmsperl list, C, vmsperl on the web, C =item EBCDIC Platforms perl-mvs list, AS/400 Perl information at C =item Other perls Atari, Guido Flohr's page C, HP 300 MPE/iX C, Novell Netware =back =item FUNCTION IMPLEMENTATIONS =over =item Alphabetical Listing of Perl Functions -I FILEHANDLE, -I EXPR, -I, binmode FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR, flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent, endservent, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, system LIST, times, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, wait, waitpid PID,FLAGS =back =item AUTHORS / CONTRIBUTORS =item VERSION =head2 perlstyle - Perl style guide =item DESCRIPTION =head2 perlpod - plain old documentation =item DESCRIPTION =over =item Verbatim Paragraph =item Command Paragraph =item Ordinary Block of Text =item The Intent =item Embedding Pods in Perl Modules =item Common Pod Pitfalls =back =item SEE ALSO =item AUTHOR =head2 perlbook - Perl book information =item DESCRIPTION =head2 perlembed - how to embed perl in your C program =item DESCRIPTION =over =item PREAMBLE B, B, B, B, B =item ROADMAP =item Compiling your C program =item Adding a Perl interpreter to your C program =item Calling a Perl subroutine from your C program =item Evaluating a Perl statement from your C program =item Performing Perl pattern matches and substitutions from your C program =item Fiddling with the Perl stack from your C program =item Maintaining a persistent interpreter =item Maintaining multiple interpreter instances =item Using Perl modules, which themselves use C libraries, from your C program =back =item Embedding Perl under Win32 =item MORAL =item AUTHOR =item COPYRIGHT =head2 perlapio - perl's IO abstraction interface. =item SYNOPSIS =item DESCRIPTION B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B =over =item Co-existence with stdio B, B, B, B, B, B, B, B, B, B, B, B, B, B, B =back =head2 perlxs - XS language reference manual =item DESCRIPTION =over =item Introduction =item On The Road =item The Anatomy of an XSUB =item The Argument Stack =item The RETVAL Variable =item The MODULE Keyword =item The PACKAGE Keyword =item The PREFIX Keyword =item The OUTPUT: Keyword =item The CODE: Keyword =item The INIT: Keyword =item The NO_INIT Keyword =item Initializing Function Parameters =item Default Parameter Values =item The PREINIT: Keyword =item The SCOPE: Keyword =item The INPUT: Keyword =item Variable-length Parameter Lists =item The C_ARGS: Keyword =item The PPCODE: Keyword =item Returning Undef And Empty Lists =item The REQUIRE: Keyword =item The CLEANUP: Keyword =item The BOOT: Keyword =item The VERSIONCHECK: Keyword =item The PROTOTYPES: Keyword =item The PROTOTYPE: Keyword =item The ALIAS: Keyword =item The INTERFACE: Keyword =item The INTERFACE_MACRO: Keyword =item The INCLUDE: Keyword =item The CASE: Keyword =item The & Unary Operator =item Inserting Comments and C Preprocessor Directives =item Using XS With C++ =item Interface Strategy =item Perl Objects And C Structures =item The Typemap =back =item EXAMPLES =item XS VERSION =item AUTHOR =head2 perlxstut, perlXStut - Tutorial for XSUBs =item DESCRIPTION =over =item VERSION CAVEAT =item DYNAMIC VERSUS STATIC =item EXAMPLE 1 =item EXAMPLE 2 =item WHAT HAS GONE ON? =item WRITING GOOD TEST SCRIPTS =item EXAMPLE 3 =item WHAT'S NEW HERE? =item INPUT AND OUTPUT PARAMETERS =item THE XSUBPP COMPILER =item THE TYPEMAP FILE =item WARNING =item EXAMPLE 4 =item WHAT HAS HAPPENED HERE? =item SPECIFYING ARGUMENTS TO XSUBPP =item THE ARGUMENT STACK =item EXTENDING YOUR EXTENSION =item DOCUMENTING YOUR EXTENSION =item INSTALLING YOUR EXTENSION =item SEE ALSO =item Author =item Last Changed =back =head2 perlguts - Perl's Internal Functions =item DESCRIPTION =item Variables =over =item Datatypes =item What is an "IV"? =item Working with SVs =item What's Really Stored in an SV? =item Working with AVs =item Working with HVs =item Hash API Extensions =item References =item Blessed References and Class Objects =item Creating New Variables =item Reference Counts and Mortality =item Stashes and Globs =item Double-Typed SVs =item Magic Variables =item Assigning Magic =item Magic Virtual Tables =item Finding Magic =item Understanding the Magic of Tied Hashes and Arrays =item Localizing changes C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C =back =item Subroutines =over =item XSUBs and the Argument Stack =item Calling Perl Routines from within C Programs =item Memory Allocation =item PerlIO =item Putting a C value on Perl stack =item Scratchpads =item Scratchpads and recursion =back =item Compiled code =over =item Code tree =item Examining the tree =item Compile pass 1: check routines =item Compile pass 1a: constant folding =item Compile pass 2: context propagation =item Compile pass 3: peephole optimization =back =item API LISTING av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH, PL_DBsingle, PL_DBsub, PL_DBtrace, dMARK, dORIGMARK, PL_dowarn, dSP, dXSARGS, dXSI32, do_binmode, ENTER, EXTEND, fbm_compile, fbm_instr, FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, GIMME_V, G_NOARGS, G_SCALAR, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, G_VOID, gv_stashpv, gv_stashsv, GvSV, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set, HeVAL, hv_clear, hv_delayfree_ent, hv_delete, hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent, hv_free_ent, hv_iterinit, hv_iterkey, hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, HvNAME, hv_store, hv_store_ent, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, items, ix, LEAVE, looks_like_number, MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_len, mg_magical, mg_set, Move, PL_na, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, newXS, newXSproto, Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc, perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv, perl_construct, perl_destruct, perl_eval_sv, perl_eval_pv, perl_free, perl_get_av, perl_get_cv, perl_get_hv, perl_get_sv, perl_parse, perl_require_pv, perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi, PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, RETVAL, safefree, safemalloc, saferealloc, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless, sv_catpv, sv_catpv_mg, sv_catpvn, sv_catpvn_mg, sv_catpvf, sv_catpvf_mg, sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, SvCUR, SvCUR_set, sv_dec, sv_derived_from, sv_derived_from, SvEND, sv_eq, SvGETMAGIC, SvGROW, sv_grow, sv_inc, sv_insert, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only, SvIOKp, sv_isa, sv_isobject, SvIV, SvIVX, SvLEN, sv_len, sv_magic, sv_mortalcopy, sv_newmortal, SvNIOK, SvNIOK_off, SvNIOKp, PL_sv_no, SvNOK, SvNOK_off, SvNOK_on, SvNOK_only, SvNOKp, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOK_off, SvPOK_on, SvPOK_only, SvPOKp, SvPV, SvPV_force, SvPVX, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSETMAGIC, sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv, sv_setpv_mg, sv_setpviv, sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpvf, sv_setpvf_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, SvSetSV, SvSetSV_nosteal, sv_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg, SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SVt_IV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, SvTYPE, svtype, PL_sv_undef, sv_unref, SvUPGRADE, sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), SvUV, SvUVX, PL_sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero =item AUTHORS =head2 perlcall - Perl calling conventions from C =item DESCRIPTION An Error Handler, An Event Driven Program =item THE PERL_CALL FUNCTIONS B, B, B, B =item FLAG VALUES =over =item G_VOID =item G_SCALAR =item G_ARRAY =item G_DISCARD =item G_NOARGS =item G_EVAL =item G_KEEPERR =item Determining the Context =back =item KNOWN PROBLEMS =item EXAMPLES =over =item No Parameters, Nothing returned =item Passing Parameters =item Returning a Scalar =item Returning a list of values =item Returning a list in a scalar context =item Returning Data from Perl via the parameter list =item Using G_EVAL =item Using G_KEEPERR =item Using perl_call_sv =item Using perl_call_argv =item Using perl_call_method =item Using GIMME_V =item Using Perl to dispose of temporaries =item Strategies for storing Callback Context Information 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of callbacks - hard wired limit, 3. Use a parameter to map to the Perl callback =item Alternate Stack Manipulation =item Creating and calling an anonymous subroutine in C =back =item SEE ALSO =item AUTHOR =item DATE =head2 perlhist - the Perl history records =item DESCRIPTION =item INTRODUCTION =item THE KEEPERS OF THE PUMPKIN =over =item PUMPKIN? =back =item THE RECORDS =over =item SELECTED RELEASE SIZES =item SELECTED PATCH SIZES =back =item THE KEEPERS OF THE RECORDS =head1 PRAGMA DOCUMENTATION =head2 attrs - set/get attributes of a subroutine =item SYNOPSIS =item DESCRIPTION method, locked =head2 re - Perl pragma to alter regular expression behaviour =item SYNOPSIS =item DESCRIPTION =head2 autouse - postpone load of modules until a function is used =item SYNOPSIS =item DESCRIPTION =item WARNING =item AUTHOR =item SEE ALSO =head2 base - Establish IS-A relationship with base class at compile time =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =head2 blib - Use MakeMaker's uninstalled version of a package =item SYNOPSIS =item DESCRIPTION =item BUGS =item AUTHOR =head2 constant - Perl pragma to declare constants =item SYNOPSIS =item DESCRIPTION =item NOTES =item TECHNICAL NOTE =item BUGS =item AUTHOR =item COPYRIGHT =head2 diagnostics - Perl compiler pragma to force verbose warning diagnostics =item SYNOPSIS =item DESCRIPTION =over =item The C Pragma =item The I Program =back =item EXAMPLES =item INTERNALS =item BUGS =item AUTHOR =head2 fields - compile-time class fields =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =head2 integer - Perl pragma to compute arithmetic in integer instead of double =item SYNOPSIS =item DESCRIPTION =head2 less - perl pragma to request less of something from the compiler =item SYNOPSIS =item DESCRIPTION =head2 lib - manipulate @INC at compile time =item SYNOPSIS =item DESCRIPTION =over =item ADDING DIRECTORIES TO @INC =item DELETING DIRECTORIES FROM @INC =item RESTORING ORIGINAL @INC =back =item SEE ALSO =item AUTHOR =head2 locale - Perl pragma to use and avoid POSIX locales for built-in operations =item SYNOPSIS =item DESCRIPTION =head2 overload - Package for overloading perl operations =item SYNOPSIS =item CAVEAT SCRIPTOR =item DESCRIPTION =over =item Declaration of overloaded functions =item Calling Conventions for Binary Operations FALSE, TRUE, C =item Calling Conventions for Unary Operations =item Overloadable Operations I, I, I, I, I, I, I =item Inheritance and overloading Strings as values of C directive, Overloading of an operation is inherited by derived classes =back =item SPECIAL SYMBOLS FOR C =over =item Last Resort =item Fallback C, TRUE, defined, but FALSE =item Copy Constructor B =back =item MAGIC AUTOGENERATION I, I, I, C, I, I, I, I, I =item WARNING =item Run-time Overloading =item Public functions overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) =item Overloading constants integer, float, binary, q, qr =item IMPLEMENTATION =item AUTHOR =item DIAGNOSTICS =item BUGS =head2 sigtrap - Perl pragma to enable simple signal handling =item SYNOPSIS =item DESCRIPTION =item OPTIONS =over =item SIGNAL HANDLERS B, B, B I =item SIGNAL LISTS B, B, B =item OTHER B, B, I, I =back =item EXAMPLES =head2 strict - Perl pragma to restrict unsafe constructs =item SYNOPSIS =item DESCRIPTION C, C, C =head2 subs - Perl pragma to predeclare sub names =item SYNOPSIS =item DESCRIPTION =head2 vars - Perl pragma to predeclare global variable names =item SYNOPSIS =item DESCRIPTION =head1 MODULE DOCUMENTATION =head2 AnyDBM_File - provide framework for multiple DBMs =item SYNOPSIS =item DESCRIPTION =over =item DBM Comparisons [0], [1], [2], [3] =back =item SEE ALSO =head2 AutoLoader - load subroutines only on demand =item SYNOPSIS =item DESCRIPTION =over =item Subroutine Stubs =item Using B's AUTOLOAD Subroutine =item Overriding B's AUTOLOAD Subroutine =item Package Lexicals =item B vs. B =back =item CAVEATS =item SEE ALSO =head2 AutoSplit - split a package for autoloading =item SYNOPSIS =item DESCRIPTION $keep, $check, $modtime =over =item Multiple packages =back =item DIAGNOSTICS =head2 B - The Perl Compiler =item SYNOPSIS =item DESCRIPTION =item OVERVIEW OF CLASSES =over =item SV-RELATED CLASSES =item B::SV METHODS REFCNT, FLAGS =item B::IV METHODS IV, IVX, needs64bits, packiv =item B::NV METHODS NV, NVX =item B::RV METHODS RV =item B::PV METHODS PV =item B::PVMG METHODS MAGIC, SvSTASH =item B::MAGIC METHODS MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR =item B::PVLV METHODS TARGOFF, TARGLEN, TYPE, TARG =item B::BM METHODS USEFUL, PREVIOUS, RARE, TABLE =item B::GV METHODS NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT, FLAGS =item B::IO METHODS LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV, BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS =item B::AV METHODS FILL, MAX, OFF, ARRAY, AvFLAGS =item B::CV METHODS STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY =item B::HV METHODS FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY =item OP-RELATED CLASSES =item B::OP METHODS next, sibling, ppaddr, desc, targ, type, seq, flags, private =item B::UNOP METHOD first =item B::BINOP METHOD last =item B::LOGOP METHOD other =item B::CONDOP METHODS true, false =item B::LISTOP METHOD children =item B::PMOP METHODS pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp =item B::SVOP METHOD sv =item B::GVOP METHOD gv =item B::PVOP METHOD pv =item B::LOOP METHODS redoop, nextop, lastop =item B::COP METHODS label, stash, filegv, cop_seq, arybase, line =back =item FUNCTIONS EXPORTED BY C main_cv, main_root, main_start, comppadlist, sv_undef, sv_yes, sv_no, walkoptree(OP, METHOD), walkoptree_debug(DEBUG), walksymtable(SYMREF, METHOD, RECURSE), svref_2object(SV), ppname(OPNUM), hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names, byteload_fh(FILEHANDLE) =item AUTHOR =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate bytecode =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Assembler - Assemble Perl bytecode =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Bblock - Walk basic blocks =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Bytecode - Perl compiler's bytecode backend =item SYNOPSIS =item DESCRIPTION =item OPTIONS B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>, B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>, B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> =item BUGS =item AUTHOR =head2 B::C - Perl compiler's C backend =item SYNOPSIS =item DESCRIPTION =item OPTIONS B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>, B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On> =item EXAMPLES =item BUGS =item AUTHOR =head2 B::CC - Perl compiler's optimized C translation backend =item SYNOPSIS =item DESCRIPTION =item OPTIONS B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>, B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>, B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =item EXAMPLES =item BUGS =item DIFFERENCES =over =item Loops =item Context of ".." =item Arithmetic =item Deprecated features =back =item AUTHOR =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Deparse - Perl compiler backend to produce perl code =item SYNOPSIS =item DESCRIPTION =item OPTIONS B<-p>, B<-u>I, B<-l>, B<-s>I, B =item BUGS =item AUTHOR =head2 B::Disassembler - Disassemble Perl bytecode =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Lint - Perl lint =item SYNOPSIS =item DESCRIPTION =item OPTIONS AND LINT CHECKS B, B and B, B, B, B, B, B, B =item NON LINT-CHECK OPTIONS B<-u Package> =item BUGS =item AUTHOR =head2 B::O, O - Generic interface to Perl Compiler backends =item SYNOPSIS =item DESCRIPTION =item CONVENTIONS =item IMPLEMENTATION =item AUTHOR =head2 B::Showlex - Show lexical variables used in functions or files =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Stackobj - Helper module for CC backend =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 B::Xref - Generates cross reference reports for Perl programs =item SYNOPSIS =item DESCRIPTION =item OPTIONS C<-oFILENAME>, C<-r>, C<-D[tO]> =item BUGS =item AUTHOR =head2 Benchmark - benchmark running times of code =item SYNOPSIS =item DESCRIPTION =over =item Methods new, debug =item Standard Exports timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] ) =item Optional Exports clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( ) =back =item NOTES =item INHERITANCE =item CAVEATS =item AUTHORS =item MODIFICATION HISTORY =head2 CGI - Simple Common Gateway Interface Class =item SYNOPSIS =item ABSTRACT =item DESCRIPTION =over =item PROGRAMMING STYLE =item CALLING CGI.PM ROUTINES 1. Use another name for the argument, if one is available. Forexample, -value is an alias for -values, 2. Change the capitalization, e.g. -Values, 3. Put quotes around the argument name, e.g. '-values' =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE =item FETCHING A LIST OF KEYWORDS FROM THE QUERY: =item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: =item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: =item SETTING THE VALUE(S) OF A NAMED PARAMETER: =item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: =item IMPORTING ALL PARAMETERS INTO A NAMESPACE: =item DELETING A PARAMETER COMPLETELY: =item DELETING ALL PARAMETERS: =item DIRECT ACCESS TO THE PARAMETER LIST: =item SAVING THE STATE OF THE SCRIPT TO A FILE: =item USING THE FUNCTION-ORIENTED INTERFACE B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>, B<:standard>, B<:all> =item PRAGMAS -any, -compile, -nph, -autoload, -no_debug, -private_tempfiles =back =item GENERATING DYNAMIC DOCUMENTS =over =item CREATING A STANDARD HTTP HEADER: =item GENERATING A REDIRECTION HEADER =item CREATING THE HTML DOCUMENT HEADER B, 4, 5, 6.. =item ENDING THE HTML DOCUMENT: =item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: =item OBTAINING THE SCRIPT'S URL B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> (B<-query_string>) =back =item CREATING STANDARD HTML ELEMENTS: =over =item PROVIDING ARGUMENTS TO HTML SHORTCUTS =item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS =item HTML SHORTCUTS AND LIST INTERPOLATION =item NON-STANDARD HTML SHORTCUTS =back =item CREATING FILL-OUT FORMS: =over =item CREATING AN ISINDEX TAG =item STARTING AND ENDING A FORM B, B =item CREATING A TEXT FIELD B =item CREATING A BIG TEXT FIELD =item CREATING A PASSWORD FIELD =item CREATING A FILE UPLOAD FIELD B =item CREATING A POPUP MENU =item CREATING A SCROLLING LIST B =item CREATING A GROUP OF RELATED CHECKBOXES B =item CREATING A STANDALONE CHECKBOX B =item CREATING A RADIO BUTTON GROUP B =item CREATING A SUBMIT BUTTON B =item CREATING A RESET BUTTON =item CREATING A DEFAULT BUTTON =item CREATING A HIDDEN FIELD B =item CREATING A CLICKABLE IMAGE BUTTON B, 3.The third option (-align, optional) is an alignment type, and may be TOP, BOTTOM or MIDDLE =item CREATING A JAVASCRIPT ACTION BUTTON =back =item NETSCAPE COOKIES 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure> =item WORKING WITH NETSCAPE FRAMES 1. Create a document, 2. Specify the destination for the document in the HTTP header, 3. Specify the destination for the document in the
tag =item LIMITED SUPPORT FOR CASCADING STYLE SHEETS =item DEBUGGING =over =item DUMPING OUT ALL THE NAME/VALUE PAIRS =back =item FETCHING ENVIRONMENT VARIABLES B, B, B, B, B, B, BReturn the script name as a partial URL, for self-refering scripts, B, B, B, B, B, B, B, B =item USING NPH SCRIPTS In the B statement, By calling the B method:, By using B<-nph> parameters in the B and B statements: =item Server Push multipart_init() multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end() =item Avoiding Denial of Service Attacks B<$CGI::POST_MAX>, B<$CGI::DISABLE_UPLOADS>, B<1. On a script-by-script basis>, B<2. Globally for all scripts> =item COMPATIBILITY WITH CGI-LIB.PL =item AUTHOR INFORMATION =item CREDITS Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor (james.taylor@srs.gov), Scott Anguish , Mike Jewell (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg (jh@axis.se), Laurent Delfosse (delfosse@csgrad1.cs.wvu.edu), Richard Resnick (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), ...and many many more.. =item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT =item BUGS =item SEE ALSO =head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API =item SYNOPSIS =item DESCRIPTION =item NOTE 1 =item NOTE 2 =item SEE ALSO =item AUTHOR =head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or other) error log =item SYNOPSIS =item DESCRIPTION =item REDIRECTING ERROR MESSAGES =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW =over =item Changing the default message =back =item CHANGE LOG =item AUTHORS =item SEE ALSO =head2 CGI::Cookie - Interface to Netscape Cookies =item SYNOPSIS =item DESCRIPTION =item USING CGI::Cookie B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> =over =item Creating New Cookies =item Sending the Cookie to the Browser =item Recovering Previous Cookies =item Manipulating Cookies B, B, B, B, B =back =item AUTHOR INFORMATION =item BUGS =item SEE ALSO =head2 CGI::Fast - CGI Interface for Fast CGI =item SYNOPSIS =item DESCRIPTION =item OTHER PIECES OF THE PUZZLE =item WRITING FASTCGI PERL SCRIPTS =item INSTALLING FASTCGI SCRIPTS =item USING FASTCGI SCRIPTS AS CGI SCRIPTS =item CAVEATS =item AUTHOR INFORMATION =item BUGS =item SEE ALSO =head2 CGI::Push - Simple Interface to Server Push =item SYNOPSIS =item DESCRIPTION =item USING CGI::Push -next_page, -last_page, -type, -delay, -cookie, -target, -expires =over =item Heterogeneous Pages =item Changing the Page Delay on the Fly =back =item INSTALLING CGI::Push SCRIPTS =item CAVEATS =item AUTHOR INFORMATION =item BUGS =item SEE ALSO =head2 CGI::Switch - Try more than one constructors and return the first object available =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =item AUTHOR =head2 CPAN - query, download and build perl modules from CPAN sites =item SYNOPSIS =item DESCRIPTION =over =item Interactive Mode Searching for authors, bundles, distribution files and modules, make, test, install, clean modules or distributions, readme, look module or distribution, Signals =item CPAN::Shell =item autobundle =item recompile =item The four C Classes: Author, Bundle, Module, Distribution =item ProgrammerE<39>s interface expand($type,@things), Programming Examples =item Methods in the four =item Cache Manager =item Bundles =item Prerequisites =item Finding packages and VERSION =item Debugging =item Floppy, Zip, and all that Jazz =back =item CONFIGURATION o conf Escalar optionE, o conf Escalar optionE EvalueE, o conf Elist optionE, o conf Elist optionE [shift|pop], o conf Elist optionE [unshift|push|splice] ElistE =over =item CD-ROM support =back =item SECURITY =item EXPORT =item BUGS =item AUTHOR =item SEE ALSO =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization =item SYNOPSIS =item DESCRIPTION =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS module =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =head2 Carp, carp - warn of errors (from perspective of caller) =item SYNOPSIS =item DESCRIPTION =over =item Forcing a Stack Trace =back =head2 Class::Struct - declare struct-like datatypes as Perl classes =item SYNOPSIS =item DESCRIPTION =over =item The C function =item Element Types and Accessor Methods Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) =back =item EXAMPLES Example 1, Example 2 =item Author and Modification History =head2 Cwd, getcwd - get pathname of current working directory =item SYNOPSIS =item DESCRIPTION =head2 DB_File - Perl5 access to Berkeley DB version 1.x =item SYNOPSIS =item DESCRIPTION B, B, B =over =item Using DB_File with Berkeley DB version 2 =item Interface to Berkeley DB =item Opening a Berkeley DB Database File =item Default Parameters =item In Memory Databases =back =item DB_HASH =over =item A Simple Example =back =item DB_BTREE =over =item Changing the BTREE sort order =item Handling Duplicate Keys =item The get_dup() Method =item Matching Partial Keys =back =item DB_RECNO =over =item The 'bval' Option =item A Simple Example =item Extra Methods B<$X-Epush(list) ;>, B<$value = $X-Epop ;>, B<$X-Eshift>, B<$X-Eunshift(list) ;>, B<$X-Elength> =item Another Example =back =item THE API INTERFACE B<$status = $X-Eget($key, $value [, $flags]) ;>, B<$status = $X-Eput($key, $value [, $flags]) ;>, B<$status = $X-Edel($key [, $flags]) ;>, B<$status = $X-Efd ;>, B<$status = $X-Eseq($key, $value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> =item HINTS AND TIPS =over =item Locking Databases =item Sharing Databases With C Applications =item The untie() Gotcha =back =item COMMON QUESTIONS =over =item Why is there Perl source in my database? =item How do I store complex data structures with DB_File? =item What does "Invalid Argument" mean? =item What does "Bareword 'DB_File' not allowed" mean? =back =item HISTORY =item BUGS =item AVAILABILITY =item COPYRIGHT =item SEE ALSO =item AUTHOR =head2 Data::Dumper - stringified perl data structures, suitable for both printing and C =item SYNOPSIS =item DESCRIPTION =over =item Methods I->new(I, I), I<$OBJ>->Dump I I->Dump(I, I), I<$OBJ>->Dumpxs I I->Dumpxs(I, I), I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>), I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset =item Functions Dumper(I), DumperX(I) =item Configuration Variables or Methods $Data::Dumper::Indent I I<$OBJ>->Indent(I<[NEWVAL]>), $Data::Dumper::Purity I I<$OBJ>->Purity(I<[NEWVAL]>), $Data::Dumper::Pad I I<$OBJ>->Pad(I<[NEWVAL]>), $Data::Dumper::Varname I I<$OBJ>->Varname(I<[NEWVAL]>), $Data::Dumper::Useqq I I<$OBJ>->Useqq(I<[NEWVAL]>), $Data::Dumper::Terse I I<$OBJ>->Terse(I<[NEWVAL]>), $Data::Dumper::Freezer I $I->Freezer(I<[NEWVAL]>), $Data::Dumper::Toaster I $I->Toaster(I<[NEWVAL]>), $Data::Dumper::Deepcopy I $I->Deepcopy(I<[NEWVAL]>), $Data::Dumper::Quotekeys I $I->Quotekeys(I<[NEWVAL]>), $Data::Dumper::Bless I $I->Bless(I<[NEWVAL]>) =item Exports Dumper =back =item EXAMPLES =item BUGS =item AUTHOR =item VERSION =item SEE ALSO =head2 Devel::SelfStubber - generate stubs for a SelfLoading module =item SYNOPSIS =item DESCRIPTION =head2 DirHandle - supply object methods for directory handles =item SYNOPSIS =item DESCRIPTION =head2 English - use nice English (or awk) names for ugly punctuation variables =item SYNOPSIS =item DESCRIPTION =head2 Env - perl module that imports environment variables =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 Exporter - Implements default import method for modules =item SYNOPSIS =item DESCRIPTION =over =item Selecting What To Export =item Specialised Import Lists =item Exporting without using Export's import method =item Module Version Checking =item Managing Unknown Symbols =item Tag Handling Utility Functions =back =head2 ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc. =item SYNOPSIS =item DESCRIPTION cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv source... destination, cp source... destination, chmod mode files.., mkpath directory.., test_f file =item BUGS =item SEE ALSO =item AUTHOR =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications =item SYNOPSIS =item DESCRIPTION =item @EXPORT =item FUNCTIONS xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =item EXAMPLES =item SEE ALSO =item AUTHOR =head2 ExtUtils::Install - install files from here to there =item SYNOPSIS =item DESCRIPTION =head2 ExtUtils::Installed - Inventory management of installed modules =item SYNOPSIS =item DESCRIPTION =item USAGE =item FUNCTIONS new(), modules(), files(), directories(), directory_tree(), validate(), packlist(), version() =item EXAMPLE =item AUTHOR =head2 ExtUtils::Liblist - determine libraries to use and how to use them =item SYNOPSIS =item DESCRIPTION For static extensions, For dynamic extensions, For dynamic extensions =over =item EXTRALIBS =item LDLOADLIBS and LD_RUN_PATH =item BSLOADLIBS =back =item PORTABILITY =over =item VMS implementation =item Win32 implementation =back =item SEE ALSO =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker =item SYNOPSIS =item DESCRIPTION =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker =item SYNOPSIS =item DESCRIPTION =item METHODS =over =item Preloaded methods canonpath, catdir, catfile, curdir, rootdir, updir =item SelfLoaded methods c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o), const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o), dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o), dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan, extliblist, file_name_is_absolute, find_perl =item Methods to actually produce chunks of text for the Makefile fixin, force (o), guess_name, has_link_code, init_dirscan, init_main, init_others, install (o), installbin (o), libscan (o), linkext (o), lsdir, macro (o), makeaperl (o), makefile (o), manifypods (o), maybe_command, maybe_command_in_dirs, needs_linking (o), nicetext, parse_version, parse_abstract, pasthru (o), path, perl_script, perldepend (o), ppd, perm_rw (o), perm_rwx (o), pm_to_blib, post_constants (o), post_initialize (o), postamble (o), prefixify, processPL (o), realclean (o), replace_manpage_separator, static (o), static_lib (o), staticmake (o), subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o), writedoc, xs_c (o), xs_o (o), perl_archive, export_list =back =item SEE ALSO =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker =item SYNOPSIS =item DESCRIPTION =over =item Methods always loaded eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override), rootdir (override), updir (override) =item SelfLoaded methods guess_name (override), find_perl (override), path (override), maybe_command (override), maybe_command_in_dirs (override), perl_script (override), file_name_is_absolute (override), replace_manpage_separator, init_others (override), constants (override), cflags (override), const_cccmd (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp (override), xsubpp_version (override), tools_other (override), dist (override), c_o (override), xs_c (override), xs_o (override), top_targets (override), dlsyms (override), dynamic_lib (override), dynamic_bs (override), static_lib (override), manifypods (override), processPL (override), installbin (override), subdir_x (override), clean (override), realclean (override), dist_basics (override), dist_core (override), dist_dir (override), dist_test (override), install (override), perldepend (override), makefile (override), test (override), test_via_harness (override), test_via_script (override), makeaperl (override), nicetext (override) =back =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker =item SYNOPSIS =item DESCRIPTION catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o), canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit (override), tools_other (o), xs_o (o), top_targets (o), manifypods (o), dist_ci (o), dist_core (o), pasthru (o) =head2 ExtUtils::MakeMaker - create an extension Makefile =item SYNOPSIS =item DESCRIPTION =over =item How To Write A Makefile.PL =item Default Makefile Behaviour =item make test =item make testdb =item make install =item PREFIX and LIB attribute =item AFS users =item Static Linking of a new Perl Binary =item Determination of Perl Library and Installation Locations =item Which architecture dependent directory? =item Using Attributes and Parameters C, CCFLAGS, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT, EXE_FILES, NO_VC, FIRST_MAKEFILE, FULLPERL, H, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITELIB, INSTALLSITEARCH, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR, INST_MAN3DIR, INST_SCRIPT, LDFROM, LIBPERL_A, LIB, LIBS, LINKTYPE, MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, OBJECT, OPTIMIZE, PERL, PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, PM, PMLIBDIRS, PREFIX, PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG, XS_VERSION =item Additional lowercase attributes clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean, tool_autosplit =item Overriding MakeMaker Methods =item Hintsfile support =item Distribution Support make distcheck, make skipcheck, make distclean, make manifest, make distdir, make tardist, make dist, make uutardist, make shdist, make zipdist, make ci =item Disabling an extension =back =item SEE ALSO =item AUTHORS =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file =item SYNOPSIS =item DESCRIPTION =item MANIFEST.SKIP =item EXPORT_OK =item GLOBAL VARIABLES =item DIAGNOSTICS C I, C I, C I<$!>, C I =item SEE ALSO =item AUTHOR =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader =item SYNOPSIS =item DESCRIPTION =head2 ExtUtils::Mksymlists - write linker options files for dynamic extension =item SYNOPSIS =item DESCRIPTION NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE =item AUTHOR =item REVISION =head2 ExtUtils::Packlist - manage .packlist files =item SYNOPSIS =item DESCRIPTION =item USAGE =item FUNCTIONS new(), read(), write(), validate(), packlist_file() =item EXAMPLE =item AUTHOR =head2 ExtUtils::testlib - add blib/* directories to @INC =item SYNOPSIS =item DESCRIPTION =head2 Fatal - replace functions with equivalents which succeed or die =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 Fcntl - load the C Fcntl.h defines =item SYNOPSIS =item DESCRIPTION =item NOTE =item EXPORTED SYMBOLS =head2 File::Basename, fileparse - split a pathname into pieces =item SYNOPSIS =item DESCRIPTION fileparse_set_fstype, fileparse =item EXAMPLES C, C =head2 File::CheckTree, validate - run many filetest checks on a tree =item SYNOPSIS =item DESCRIPTION =head2 File::Compare - Compare files or filehandles =item SYNOPSIS =item DESCRIPTION =item RETURN =item AUTHOR =head2 File::Copy - Copy files or filehandles =item SYNOPSIS =item DESCRIPTION =over =item Special behavior if C is defined (VMS and OS/2) rmscopy($from,$to[,$date_flag]) =back =item RETURN =item AUTHOR =head2 File::DosGlob - DOS like globbing and then some =item SYNOPSIS =item DESCRIPTION =item EXPORTS (by request only) =item BUGS =item AUTHOR =item HISTORY =item SEE ALSO =head2 File::Find, find - traverse a file tree =item SYNOPSIS =item DESCRIPTION =item BUGS =head2 File::Path - create or remove a series of directories =item SYNOPSIS =item DESCRIPTION =item AUTHORS =item REVISION =head2 File::Spec - portably perform operations on file names =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =item AUTHORS =head2 File::Spec::Mac - File::Spec for MacOS =item SYNOPSIS =item DESCRIPTION =item METHODS canonpath, catdir, catfile, curdir, rootdir, updir, file_name_is_absolute, path =item SEE ALSO =head2 File::Spec::OS2 - methods for OS/2 file specs =item SYNOPSIS =item DESCRIPTION =head2 File::Spec::Unix - methods used by File::Spec =item SYNOPSIS =item DESCRIPTION =item METHODS canonpath, catdir, catfile, curdir, rootdir, updir, no_upwards, file_name_is_absolute, path, join, nativename =item SEE ALSO =head2 File::Spec::VMS - methods for VMS file specs =item SYNOPSIS =item DESCRIPTION =over =item Methods always loaded catdir, catfile, curdir (override), rootdir (override), updir (override), path (override), file_name_is_absolute (override) =back =head2 File::Spec::Win32 - methods for Win32 file specs =item SYNOPSIS =item DESCRIPTION catfile, canonpath =head2 File::stat - by-name interface to Perl's built-in stat() functions =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head2 FileCache - keep more files open than the system permits =item SYNOPSIS =item DESCRIPTION =item BUGS =head2 FileHandle - supply object methods for filehandles =item SYNOPSIS =item DESCRIPTION $fh->print, $fh->printf, $fh->getline, $fh->getlines =item SEE ALSO =head2 FindBin - Locate directory of original perl script =item SYNOPSIS =item DESCRIPTION =item EXPORTABLE VARIABLES =item KNOWN BUGS =item AUTHORS =item COPYRIGHT =item REVISION =head2 GDBM_File - Perl5 access to the gdbm library. =item SYNOPSIS =item DESCRIPTION =item AVAILABILITY =item BUGS =item SEE ALSO =head2 Getopt::Long, GetOptions - extended processing of command line options =item SYNOPSIS =item DESCRIPTION !, +, :s, :i, :f =over =item Linkage specification =item Aliases and abbreviations =item Non-option call-back routine =item Option starters =item Return values and Errors =back =item COMPATIBILITY =item EXAMPLES =item CONFIGURATION OPTIONS default, auto_abbrev, getopt_compat, require_order, permute, bundling (default: reset), bundling_override (default: reset), ignore_case (default: set), ignore_case_always (default: reset), pass_through (default: reset), prefix, prefix_pattern, debug (default: reset) =item OTHER USEFUL VARIABLES $Getopt::Long::VERSION, $Getopt::Long::error =item AUTHOR =item COPYRIGHT AND DISCLAIMER =head2 Getopt::Std, getopt - Process single-character switches with switch clustering =item SYNOPSIS =item DESCRIPTION =head2 I18N::Collate - compare 8-bit scalar data according to the current locale =item SYNOPSIS =item DESCRIPTION =head2 IO - load various IO modules =item SYNOPSIS =item DESCRIPTION =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles =item SYNOPSIS =item DESCRIPTION =item CONSTRUCTOR new ([ ARGS ] ), new_tmpfile =item METHODS open( FILENAME [,MODE [,PERMS]] ) =item SEE ALSO =item HISTORY =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O handles =item SYNOPSIS =item DESCRIPTION =item CONSTRUCTOR new (), new_from_fd ( FD, MODE ) =item METHODS $fh->fdopen ( FD, MODE ), $fh->opened, $fh->getline, $fh->getlines, $fh->ungetc ( ORD ), $fh->write ( BUF, LEN [, OFFSET }\] ), $fh->flush, $fh->error, $fh->clearerr, $fh->untaint =item NOTE =item SEE ALSO =item BUGS =item HISTORY =head2 IO::lib::IO::Pipe, IO::pipe - supply object methods for pipes =item SYNOPSIS =item DESCRIPTION =item CONSTRCUTOR new ( [READER, WRITER] ) =item METHODS reader ([ARGS]), writer ([ARGS]), handles () =item SEE ALSO =item AUTHOR =item COPYRIGHT =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for I/O objects =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =item HISTORY =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system call =item SYNOPSIS =item DESCRIPTION =item CONSTRUCTOR new ( [ HANDLES ] ) =item METHODS add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count (), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) =item EXAMPLE =item AUTHOR =item COPYRIGHT =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket communications =item SYNOPSIS =item DESCRIPTION =item CONSTRUCTOR new ( [ARGS] ) =item METHODS accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype, protocol =item SUB-CLASSES =over =item IO::Socket::INET =item METHODS sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost () =item IO::Socket::UNIX =item METHODS hostpath(), peerpath() =back =item SEE ALSO =item AUTHOR =item COPYRIGHT =head2 IPC::Open2, open2 - open a process for both reading and writing =item SYNOPSIS =item DESCRIPTION =item WARNING =item SEE ALSO =head2 IPC::Open3, open3 - open a process for reading, writing, and error handling =item SYNOPSIS =item DESCRIPTION =item WARNING =head2 IPC::SysV - SysV IPC constants =item SYNOPSIS =item DESCRIPTION ftok( PATH, ID ) =item SEE ALSO =item AUTHORS =item COPYRIGHT =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class =item SYNOPSIS =item DESCRIPTION =item METHODS new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, FLAGS ] ), stat =item SEE ALSO =item AUTHOR =item COPYRIGHT =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object class =item SYNOPSIS =item DESCRIPTION =item METHODS new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N , VALUE ), stat =item SEE ALSO =item AUTHOR =item COPYRIGHT =head2 Math::BigFloat - Arbitrary length float math package =item SYNOPSIS =item DESCRIPTION number format, Error returns 'NaN', Division is computed to =item BUGS =item AUTHOR =head2 Math::BigInt - Arbitrary size integer math package =item SYNOPSIS =item DESCRIPTION Canonical notation, Input, Output =item EXAMPLES =item Autocreating constants =item BUGS =item AUTHOR =head2 Math::Complex - complex numbers and associated mathematical functions =item SYNOPSIS =item DESCRIPTION =item OPERATIONS =item CREATION =item STRINGIFICATION =item USAGE =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO =item ERRORS DUE TO INDIGESTIBLE ARGUMENTS =item BUGS =item AUTHORS =head2 Math::Trig - trigonometric functions =item SYNOPSIS =item DESCRIPTION =item TRIGONOMETRIC FUNCTIONS B =over =item ERRORS DUE TO DIVISION BY ZERO =item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS =back =item PLANE ANGLE CONVERSIONS =item RADIAL COORDINATE CONVERSIONS =over =item COORDINATE SYSTEMS =item 3-D ANGLE CONVERSIONS cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical =back =item GREAT CIRCLE DISTANCES =item EXAMPLES =item BUGS =item AUTHORS =head2 NDBM_File - Tied access to ndbm files =item SYNOPSIS =item DESCRIPTION =head2 Net::Ping - check a remote host for reachability =item SYNOPSIS =item DESCRIPTION =over =item Functions Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [, $timeout]);, $p->close();, pingecho($host [, $timeout]); =back =item WARNING =item NOTES =head2 Net::hostent - by-name interface to Perl's built-in gethost*() functions =item SYNOPSIS =item DESCRIPTION =item EXAMPLES =item NOTE =item AUTHOR =head2 Net::netent - by-name interface to Perl's built-in getnet*() functions =item SYNOPSIS =item DESCRIPTION =item EXAMPLES =item NOTE =item AUTHOR =head2 Net::protoent - by-name interface to Perl's built-in getproto*() functions =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head2 Net::servent - by-name interface to Perl's built-in getserv*() functions =item SYNOPSIS =item DESCRIPTION =item EXAMPLES =item NOTE =item AUTHOR =head2 ODBM_File - Tied access to odbm files =item SYNOPSIS =item DESCRIPTION =head2 Opcode - Disable named opcodes when compiling perl code =item SYNOPSIS =item DESCRIPTION =item NOTE =item WARNING =item Operator Names and Operator Lists an operator name (opname), an operator tag name (optag), a negated opname or optag, an operator set (opset) =item Opcode Functions opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET), full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...), define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...), opdump (PAT) =item Manipulating Opsets =item TO DO (maybe) =item Predefined Opcode Tags :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math, :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open, :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided, :dangerous =item SEE ALSO =item AUTHORS =head2 Opcode::Safe, Safe - Compile and execute code in restricted compartments =item SYNOPSIS =item DESCRIPTION a new namespace, an operator mask =item WARNING =over =item RECENT CHANGES =item Methods in class Safe permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP, ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME), root (NAMESPACE), mask (MASK) =item Some Safety Issues Memory, CPU, Snooping, Signals, State Changes =item AUTHOR =back =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when compiling =item SYNOPSIS =item DESCRIPTION =item SEE ALSO =head2 POSIX - Perl interface to IEEE Std 1003.1 =item SYNOPSIS =item DESCRIPTION =item NOTE =item CAVEATS =item FUNCTIONS _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2, atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown, clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime, cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv, execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror, fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf, fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos, fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid, getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid, getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10, longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy, memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open, opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts, qsort, raise, rand, read, readdir, realloc, remove, rename, rewind, rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid, setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp, sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen, strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr, strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, wcstombs, wctomb, write =item CLASSES =over =item POSIX::SigAction new =item POSIX::SigSet new, addset, delset, emptyset, fillset, ismember =item POSIX::Termios new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag, getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag, setoflag, setospeed, Baud rate values, Terminal interface values, c_cc field values, c_cflag field values, c_iflag field values, c_lflag field values, c_oflag field values =back =item PATHNAME CONSTANTS Constants =item POSIX CONSTANTS Constants =item SYSTEM CONFIGURATION Constants =item ERRNO Constants =item FCNTL Constants =item FLOAT Constants =item LIMITS Constants =item LOCALE Constants =item MATH Constants =item SIGNAL Constants =item STAT Constants, Macros =item STDLIB Constants =item STDIO Constants =item TIME Constants =item UNISTD Constants =item WAIT Constants, Macros =item CREATION =head2 Pod::Html - module to convert pod files to HTML =item SYNOPSIS =item DESCRIPTION =item ARGUMENTS help, htmlroot, infile, outfile, podroot, podpath, libpods, netscape, nonetscape, index, noindex, recurse, norecurse, title, verbose =item EXAMPLE =item AUTHOR =item BUGS =item SEE ALSO =item COPYRIGHT =head2 Pod::Text - convert POD data to formatted ASCII text =item SYNOPSIS =item DESCRIPTION =item AUTHOR =item TODO =head2 SDBM_File - Tied access to sdbm files =item SYNOPSIS =item DESCRIPTION =head2 Search::Dict, look - search for key in dictionary file =item SYNOPSIS =item DESCRIPTION =head2 SelectSaver - save and restore selected file handle =item SYNOPSIS =item DESCRIPTION =head2 SelfLoader - load functions only on demand =item SYNOPSIS =item DESCRIPTION =over =item The __DATA__ token =item SelfLoader autoloading =item Autoloading and package lexicals =item SelfLoader and AutoLoader =item __DATA__, __END__, and the FOOBAR::DATA filehandle. =item Classes and inherited methods. =back =item Multiple packages and fully qualified subroutine names =head2 Shell - run shell commands transparently within perl =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C socket.h defines and structure manipulators =item SYNOPSIS =item DESCRIPTION inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST, INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN, pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN =head2 Symbol - manipulate Perl symbols and their names =item SYNOPSIS =item DESCRIPTION =head2 Sys::Hostname - Try every conceivable way to get hostname =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl interface to the UNIX syslog(3) calls =item SYNOPSIS =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), closelog =item EXAMPLES =item DEPENDENCIES =item SEE ALSO =item AUTHOR =head2 Term::Cap - Perl termcap interface =item SYNOPSIS =item DESCRIPTION =item EXAMPLES =head2 Term::Complete - Perl word completion module =item SYNOPSIS =item DESCRIPTION EtabE, ^D, ^U, EdelE, EbsE =item DIAGNOSTICS =item BUGS =item AUTHOR =head2 Term::ReadLine - Perl interface to various C packages. If no real package is found, substitutes stubs instead of basic functions. =item SYNOPSIS =item DESCRIPTION =item Minimal set of supported functions C, C, C, C, C, $C, C, C, Attribs, C =item Additional supported functions C, C, C =item EXPORTS =item ENVIRONMENT =head2 Test - provides a simple framework for writing test scripts =item SYNOPSIS =item DESCRIPTION =item TEST TYPES NORMAL TESTS, SKIPPED TESTS, TODO TESTS =item ONFAIL =item SEE ALSO =item AUTHOR =head2 Test::Harness - run perl standard test scripts with statistics =item SYNOPSIS =item DESCRIPTION =over =item The test script output =back =item EXPORT =item DIAGNOSTICS C, C, C, C, C =item ENVIRONMENT =item SEE ALSO =item AUTHORS =item BUGS =head2 Text::Abbrev, abbrev - create an abbreviation table from a list =item SYNOPSIS =item DESCRIPTION =item EXAMPLE =head2 Text::ParseWords - parse text into an array of tokens or array of arrays =item SYNOPSIS =item DESCRIPTION =item EXAMPLES 0a simple word, 1multiple spaces are skipped because of our $delim, 2use of quotes to include a space in a word, 3use of a backslash to include a space in a word, 4use of a backslash to remove the special meaning of a double-quote, 5another simple word (note the lack of effect of the backslashed double-quote) =item AUTHORS =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described by Knuth =item SYNOPSIS =item DESCRIPTION =item EXAMPLES =item LIMITATIONS =item AUTHOR =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and unexpand(1) =item SYNOPSIS =item DESCRIPTION =item BUGS =item AUTHOR =head2 Text::Wrap - line wrapping to form simple paragraphs =item SYNOPSIS =item DESCRIPTION =item EXAMPLE =item BUGS =item AUTHOR =head2 Thread - multithreading =item SYNOPSIS =item DESCRIPTION =item FUNCTIONS new \&start_sub, new \&start_sub, LIST, lock VARIABLE, async BLOCK;, Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE, cond_broadcast VARIABLE =item METHODS join, eval, tid =item LIMITATIONS =item SEE ALSO =head2 Thread::Queue - thread-safe queues =item SYNOPSIS =item DESCRIPTION =item FUNCTIONS AND METHODS new, enqueue LIST, dequeue, dequeue_nb, pending =item SEE ALSO =head2 Thread::Semaphore - thread-safe semaphores =item SYNOPSIS =item DESCRIPTION =item FUNCTIONS AND METHODS new, new NUMBER, down, down NUMBER, up, up NUMBER =head2 Thread::Signal - Start a thread which runs signal handlers reliably =item SYNOPSIS =item DESCRIPTION =item BUGS =head2 Thread::Specific - thread-specific keys =item SYNOPSIS =head2 Tie::Array - base class for tied arrays =item SYNOPSIS =item DESCRIPTION TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index, FETCHSIZE this, STORESIZE this, count, EXTEND this, count, CLEAR this, DESTROY this, PUSH this, LIST, POP this, SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST =item CAVEATS =item AUTHOR =head2 Tie::Handle - base class definitions for tied handles =item SYNOPSIS =item DESCRIPTION TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this, LIST, PRINTF this, format, LIST, READ this, scalar, length, offset, READLINE this, GETC this, DESTROY this =item MORE INFORMATION =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes =item SYNOPSIS =item DESCRIPTION TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this =item CAVEATS =item MORE INFORMATION =head2 Tie::RefHash - use references as hash keys =item SYNOPSIS =item DESCRIPTION =item EXAMPLE =item AUTHOR =item VERSION =item SEE ALSO =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied scalars =item SYNOPSIS =item DESCRIPTION TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this =item MORE INFORMATION =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing =item SYNOPSIS =item DESCRIPTION =item CAVEATS =head2 Time::Local - efficiently compute time from local and GMT time =item SYNOPSIS =item DESCRIPTION =head2 Time::gmtime - by-name interface to Perl's built-in gmtime() function =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head2 Time::localtime - by-name interface to Perl's built-in localtime() function =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head2 Time::tm - internal object used by Time::gmtime and Time::localtime =item SYNOPSIS =item DESCRIPTION =item AUTHOR =head2 UNIVERSAL - base class for ALL classes (blessed references) =item SYNOPSIS =item DESCRIPTION isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa ( VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD ) =head2 User::grent - by-name interface to Perl's built-in getgr*() functions =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head2 User::pwent - by-name interface to Perl's built-in getpw*() functions =item SYNOPSIS =item DESCRIPTION =item NOTE =item AUTHOR =head1 AUXILIARY DOCUMENTATION Here should be listed all the extra programs' documentation, but they don't all have manual pages yet: =item a2p =item s2p =item find2perl =item h2ph =item c2ph =item h2xs =item xsubpp =item pod2man =item wrapsuid =head1 AUTHOR Larry Wall >, with the help of oodles of other folks.