perltoc(1)
perltoc - perl documentation table of contents
Showing IRIX 6.5.30 (default release). Last changed in IRIX 6.5.19.
NAME perltoc - perl documentation table of contents 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. BASIC DOCUMENTATION perl - Practical Extraction and Report Language SYNOPSIS 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 ENVIRONMENT AUTHOR FILES SEE ALSO DIAGNOSTICS BUGS NOTES perlfaq - frequently asked questions about Perl ($Date: 1998/07/20 23:12:17 $) DESCRIPTION perlfaq: Structural overview of the FAQ, the perlfaq1 manpage: General Questions About Perl, the perlfaq2 manpage: Obtaining and Learning about Perl, the perlfaq3 manpage: Programming Tools, the perlfaq4 manpage: Data Manipulation, the perlfaq5 manpage: Files and Formats, the perlfaq6 manpage: Regexps, the perlfaq7 manpage: General Perl Language Issues, the perlfaq8 manpage: System Interaction, the perlfaq9 manpage: Networking Where to get this document How to contribute to this document What will happen if you mail your Perl programming problems to the authors Credits Author and Copyright Information Bundled Distributions Disclaimer Changes 24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97 perlfaq1 - General Questions About Perl ($Revision: 1.1 $, $Date: 1998/06/14 22:15:25 $) DESCRIPTION What is Perl? Who supports Perl? Who develops it? Why is it free? Which version of Perl should I use? What are perl4 and perl5? How stable is Perl? Is Perl difficult to learn? Tcl? How does Perl compare with other languages like Java, Python, REXX, Scheme, or Can I do [task] in Perl? When shouldn't I program in Perl? What's the difference between "perl" and "Perl"? Is it a Perl program or a Perl script? What is a JAPH? Where can I get a list of Larry Wall witticisms? (5/5.004/Perl instead of some other language)? How can I convince my sysadmin/supervisor/employees to use version AUTHOR AND COPYRIGHT perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.1 $, $Date: 2002/05/07 00:07:32 $) DESCRIPTION What machines support Perl? Where do I get it? How can I get a binary version of Perl? I don't have a C compiler on my system. How can I compile perl? I copied the Perl binary from one machine to another, but scripts don't work. loading/malloc/linking/... failed. How do I make it work? I grabbed the sources and tried to compile but gdbm/dynamic CPAN/src/... mean? What modules and extensions are available for Perl? What is CPAN? What does Is there an ISO or ANSI certified version of Perl? Where can I get information on Perl? What are the Perl newsgroups on USENET? Where do I post questions? Where should I post source code? Perl Books References, Tutorials *Learning Perl [2nd edition] by Randal L. Schwartz and Tom Christiansen, Task-Oriented, Special Topics Perl in Magazines Perl on the Net: FTP and WWW Access What mailing lists are there for perl? MacPerl, Perl5-Porters, NTPerl, Perl-Packrats Archives of comp.lang.perl.misc Where can I buy a commercial version of Perl? Where do I send bug reports? What is perl.com? perl.org? The Perl Institute? How do I learn about object-oriented Perl programming? AUTHOR AND COPYRIGHT perlfaq3 - Programming Tools ($Revision: 1.1 $, $Date: 1998/07/16 22:08:49 $) DESCRIPTION How do I do (anything)? How can I use Perl interactively? Is there a Perl shell? How do I debug my Perl programs? How do I profile my Perl programs? How do I cross-reference my Perl programs? Is there a pretty-printer (formatter) for Perl? Is there a ctags for Perl? Where can I get Perl macros for vi? Where can I get perl-mode for emacs? How can I use curses with Perl? How can I use X or Tk with Perl? How can I generate simple menus without using CGI or Tk? What is undump? How can I make my Perl program run faster? How can I make my Perl program take less memory? Is it unsafe to return a pointer to local data? How can I free an array or hash so my program shrinks? How can I make my CGI script more efficient? How can I hide the source for my Perl program? How can I compile my Perl program into byte code or C? How can I get #!perl to work on [MS-DOS,NT,...]? Can I write useful perl programs on the command line? Why don't perl one-liners work on my DOS/Mac/VMS system? Where can I learn about CGI or Web programming in Perl? Where can I learn about object-oriented Perl programming? Where can I learn about linking C with Perl? [h2xs, xsubpp] what am I doing wrong? I've read perlembed, perlguts, etc., but I can't embed perl in my C program, When I tried to run my script, I got this message. What does it mean? What's MakeMaker? AUTHOR AND COPYRIGHT perlfaq4 - Data Manipulation ($Revision: 1.1 $, $Date: 1998/07/16 22:49:55 $) DESCRIPTION Data: Numbers should be getting (eg, 19.95)? Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I Why isn't my octal data interpreted correctly? functions? Does perl have a round function? What about ceil() and floor()? Trig How do I convert bits into ints? How do I multiply matrices? How do I perform an operation on a series of integers? How can I output Roman numerals? Why aren't my random numbers random? Data: Dates How do I find the week-of-the-year/day-of-the-year? How can I compare two dates and find the difference? How can I take a string and turn it into epoch seconds? How can I find the Julian Day? Does Perl have a year 2000 problem? Is Perl Y2K compliant? Data: Strings How do I validate input? How do I unescape a string? How do I remove consecutive pairs of characters? How do I expand function calls in a string? How do I find matching/nesting anything? How do I reverse a string? How do I expand tabs in a string? How do I reformat a paragraph? How can I access/change the first N letters of a string? How do I change the Nth occurrence of something? How can I count the number of occurrences of a substring within a string? How do I capitalize all the words on one line? (Comma-separated files) How can I split a [character] delimited string except when inside [character]? How do I strip blank space from the beginning/end of a string? How do I extract selected columns from a string? How do I find the soundex value of a string? How can I expand variables in text strings? What's wrong with always quoting "$vars"? Why don't my <<HERE documents work? 1. There must be no space after the << part, 2. There (probably) should be a semicolon at the end, 3. You can't (easily) have any space in front of the tag Data: Arrays What is the difference between $array[1] and @array[1]? How can I extract just the unique elements of an array? a) If @in is sorted, and you want @out to be sorted:(this assumes all true values in the array), b) If you don't know whether @in is sorted:, c) Like (b), but @in contains only small integers:, d) A way to do (b) without any loops or greps:, e) Like (d), but @in contains only small positive integers: How can I tell whether a list or array contains a certain element? intersection of two arrays? How do I compute the difference of two arrays? How do I compute the How do I find the first array element for which a condition is true? How do I handle linked lists? How do I handle circular lists? How do I shuffle an array randomly? How do I process/modify each element of an array? How do I select a random element from an array? How do I permute N elements of a list? How do I sort an array by (anything)? How do I manipulate arrays of bits? Why does defined() return true on empty arrays and hashes? Data: Hashes (Associative Arrays) How do I process an entire hash? What happens if I add or remove keys from a hash while iterating over it? How do I look up a hash element by value? How can I know how many entries are in a hash? How do I sort a hash (optionally by value instead of key)? How can I always keep my hash sorted? What's the difference between "delete" and "undef" with hashes? Why don't my tied hashes make the defined/exists distinction? How do I reset an each() operation part-way through? How can I get the unique keys from two hashes? How can I store a multidimensional array in a DBM file? How can I make my hash remember the order I put elements into it? Why does passing a subroutine an undefined element in a hash create it? hashes or arrays? How can I make the Perl equivalent of a C structure/C++ class/hash or array of How can I use a reference as a hash key? Data: Misc How do I handle binary data correctly? How do I determine whether a scalar is a number/whole/integer/float? How do I keep persistent data across program calls? How do I print out or copy a recursive data structure? How do I define methods for every class/object? How do I verify a credit card checksum? AUTHOR AND COPYRIGHT perlfaq5 - Files and Formats ($Revision: 1.1 $, $Date: 1998/07/05 15:07:20 $) DESCRIPTION How do I flush/unbuffer an output filehandle? Why must I do this? the middle of a file/append to the beginning of a file? How do I change one line in a file/delete a line in a file/insert a line in How do I count the number of lines in a file? How do I make a temporary file name? How can I manipulate fixed-record-length files? between subroutines? How do I make an array of filehandles? How can I make a filehandle local to a subroutine? How do I pass filehandles How can I use a filehandle indirectly? How can I set up a footer format to be used with write()? How can I write() into a string? How can I output my numbers with commas added? How can I translate tildes (~) in a filename? How come when I open a file read-write it wipes it out? Why do I sometimes get an "Argument list too long" when I use <*>? Is there a leak/bug in glob()? How can I open a file with a leading ">" or trailing blanks? How can I reliably rename a file? How can I lock a file? What can't I just open(FH, ">file.lock How can I do this? I still don't get locking. I just want to increment the number in the file. How do I randomly update a binary file? How do I get a file's timestamp in perl? How do I set a file's timestamp in perl? How do I print to more than one file at once? How can I read in a file by paragraphs? How can I read a single character from a file? From the keyboard? How can I tell if there's a character waiting on a filehandle? How do I do a tail -f in perl? How do I dup() a filehandle in Perl? How do I close a file descriptor by number? work? Why can't I use "C:\temp\foo" in DOS paths? What doesn't `C:\temp\foo.exe` Why doesn't glob'*.*' get all the files? files? Isn't this a bug in Perl? Why does Perl let me delete read-only files? Why does - i clobber protected How do I select a random line from a file? AUTHOR AND COPYRIGHT perlfaq6 - Regexps ($Revision: 1.1 $, $Date: 2002/05/07 00:07:32 $) DESCRIPTION unmaintainable code? How can I hope to use regular expressions without creating illegible and Comments Outside the Regexp, Comments Inside the Regexp, Different Delimiters I'm having trouble matching over more than one line. What's wrong? lines? How can I pull out lines between two patterns that are themselves on different I put a regular expression into $/ but it didn't work. What's wrong? RHS? How do I substitute case insensitively on the LHS, but preserving case on the How can I make \w match national character sets? How can I match a locale-smart version of /[a-zA-Z]/? How can I quote a variable to use in a regexp? What is /o really for? How do I use a regular expression to strip C style comments from a file? Can I use Perl regular expressions to match balanced text? What does it mean that regexps are greedy? How can I get around it? How do I process each word on each line? How can I print out a word-frequency or line-frequency summary? How can I do approximate matching? How do I efficiently match many regular expressions at once? Why don't word-boundary searches with \b work for me? Why does using $&, $`, or $' slow my program down? What good is \G in a regular expression? Are Perl regexps DFAs or NFAs? Are they POSIX compliant? What's wrong with using grep or map in a void context? How can I match strings with multibyte characters? AUTHOR AND COPYRIGHT perlfaq7 - Perl Language Issues ($Revision: 1.1 $, $Date: 1998/06/22 15:20:07 $) DESCRIPTION Can I get a BNF/yacc/RE for the Perl language? What are all these $@%* punctuation signs, and how do I know when to use them? Do I always/never have to quote my strings or use semicolons and commas? How do I skip some return values? How do I temporarily block warnings? What's an extension? Why do Perl operators have different precedence than C operators? How do I declare/create a structure? How do I create a module? How do I create a class? How can I tell if a variable is tainted? What's a closure? What is variable suicide and how can I prevent it? How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regexp}? Passing Variables and Functions, Passing Filehandles, Passing Regexps, Passing Methods How do I create a static variable? local() and my()? What's the difference between dynamic and lexical (static) scoping? Between scope? How can I access a dynamic variable while a similarly named lexical is in What's the difference between deep and shallow binding? Why doesn't "my($foo) = <FILE>;" work right? How do I redefine a builtin function, operator, or method? What's the difference between calling a function as &foo and foo()? How do I create a switch or case statement? How can I catch accesses to undefined variables/functions/methods? Why can't a method included in this same file be found? How can I find out my current package? How can I comment out a large block of perl code? AUTHOR AND COPYRIGHT perlfaq8 - System Interaction ($Revision: 1.1 $, $Date: 1998/07/05 15:07:20 $) DESCRIPTION How do I find out which operating system I'm running under? How come exec() doesn't return? How do I do fancy stuff with the keyboard/screen/mouse? Keyboard, Screen, Mouse How do I print something out in color? How do I read just one key without waiting for a return key? How do I check whether input is ready on the keyboard? How do I clear the screen? How do I get the screen size? How do I ask the user for a password? How do I read and write the serial port? lockfiles, open mode, end of line, flushing output, non-blocking input How do I decode encrypted password files? How do I start a process in the background? STDIN, STDOUT, and STDERR are shared, Signals, Zombies How do I trap control characters/signals? How do I modify the shadow password file on a Unix system? How do I set the time and date? How can I sleep() or alarm() for under a second? How can I measure time under a second? How can I do an atexit() or setjmp()/longjmp()? (Exception handling) error message "Protocol not supported" mean? Why doesn't my sockets program work under System V (Solaris)? What does the How can I call my system's unique C functions from Perl? Where do I get the include files to do ioctl() or syscall()? Why do setuid perl scripts complain about kernel problems? How can I open a pipe both to and from a command? Why can't I get the output of a command with system()? How can I capture STDERR from an external command? Why doesn't open() return an error when a pipe open fails? What's wrong with using backticks in a void context? How can I call backticks without shell processing? MS-DOS)? Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on How can I convert my shell script to perl? Can I use perl to run a telnet or ftp session? How can I write expect in Perl? Is there a way to hide perl's command line from programs such as "ps"? change disappeared when I exited the script? How do I get my changes to be visible? I {changed directory, modified my environment} in a perl script. How come the Unix How do I close a process's filehandle without waiting for it to complete? How do I fork a daemon process? How do I make my program run with sh and csh? How do I find out if I'm running interactively or not? How do I timeout a slow event? How do I set CPU limits? How do I avoid zombies on a Unix system? How do I use an SQL database? How do I make a system() exit on control-C? How do I open a file without blocking? How do I install a CPAN module? What's the difference between require and use? How do I keep my own module/library directory? path? How do I add the directory my program lives in to the module/library search How do I add a directory to my include path at runtime? AUTHOR AND COPYRIGHT perlfaq9 - Networking ($Revision: 1.1 $, $Date: 1998/06/22 18:31:09 $) DESCRIPTION Error) My CGI script runs from the command line but not the browser. (500 Server How can I get better error messages from a CGI program? How do I remove HTML from a string? How do I extract URLs? another machine? How do I download a file from the user's machine? How do I open a file on How do I make a pop-up menu in HTML? How do I fetch an HTML file? How do I automate an HTML form submission? How do I decode or create those %-encodings on the web? How do I redirect to another page? How do I put a password on my web pages? How do I edit my .htpasswd and .htgroup files with Perl? script to do bad things? How do I make sure users can't enter values into a form that cause my CGI How do I parse a mail header? How do I decode a CGI form? How do I check a valid mail address? How do I decode a MIME/BASE64 string? How do I return the user's mail address? How do I send mail? How do I read mail? How do I find out my hostname/domainname/IP address? How do I fetch a news article or the active newsgroups? How do I fetch/put an FTP file? How can I do RPC in Perl? AUTHOR AND COPYRIGHT perldelta - what's new for perl5.005 DESCRIPTION About the new versioning system Incompatible Changes WARNING: This version is not binary compatible with Perl 5.004. Default installation structure has changed Perl Source Compatibility 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 Binary Compatibility Security fixes may affect compatibility Relaxed new mandatory warnings introduced in 5.004 Licensing Core Changes Threads Compiler Regular Expressions Many new and improved optimizations, Many bug fixes, New regular expression constructs, New operator for precompiled regular expressions, Other improvements, Incompatible changes Improved malloc() Quicksort is internally implemented Reliable signals Reliable stack pointers More generous treatment of carriage returns Memory leaks Better support for multiple interpreters Behavior of local() on array and hash elements is now well-defined %! is transparently tied to the the Errno manpage module Pseudo-hashes are supported EXPR foreach EXPR is supported Keywords can be globally overridden $^E is meaningful on Win32 foreach (1..1000000) optimized Foo:: can be used as implicitly quoted package name exists $Foo::{Bar::} tests existence of a package Better locale support Experimental support for 64-bit platforms prototype() returns useful results on builtins Extended support for exception handling Re-blessing in DESTROY() supported for chaining DESTROY() methods All printf format conversions are handled internally New INIT keyword New lock keyword New qr// operator our is now a reserved word Tied arrays are now fully supported Tied handles support is better 4th argument to substr Negative LENGTH argument to splice Magic lvalues are now more magical <> now reads in records Supported Platforms New Platforms Changes in existing support Modules and Pragmata New Modules B, Data::Dumper, Errno, File::Spec, ExtUtils::Installed, ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, Thread, attrs, fields, re Changes in existing modules CGI, POSIX, DB_File, MakeMaker, CPAN, Cwd, Benchmark Utility Changes Documentation Changes 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 Obsolete Diagnostics Can't mktemp(), Can't write to temp file for -e: %s, Cannot open temporary file BUGS SEE ALSO HISTORY perldata - Perl data types DESCRIPTION Variable names Context Scalar values Scalar value constructors List value constructors Typeglobs and Filehandles perlsyn - Perl syntax DESCRIPTION Declarations Simple statements Compound statements Loop Control For Loops Foreach Loops Basic BLOCKs and Switch Statements Goto PODs: Embedded Documentation Plain Old Comments (Not!) perlop - Perl operators and precedence SYNOPSIS DESCRIPTION Terms and List Operators (Leftward) The Arrow Operator Auto-increment and Auto-decrement Exponentiation Symbolic Unary Operators Binding Operators Multiplicative Operators Additive Operators Shift Operators Named Unary Operators Relational Operators Equality Operators Bitwise And Bitwise Or and Exclusive Or C-style Logical And C-style Logical Or Range Operators Conditional Operator Assignment Operators Comma Operator List Operators (Rightward) Logical Not Logical And Logical or and Exclusive Or C Operators Missing From Perl unary &, unary *, (TYPE) Quote and Quote-like Operators Regexp Quote-Like Operators ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, 'STRING', qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, y/SEARCHLIST/REPLACEMENTLIST/cds Gory details of parsing quoted constructs Finding the end, Removal of backslashes before delimiters, Interpolation, <<'EOF', m'', s''', tr///, y///, '', q//, "", ``, qq//, qx//, <file*glob>, ?RE?, /RE/, m/RE/, s/RE/foo/,, Interpolation of regular expressions, Optimization of regular expressions I/O Operators Constant Folding Bitwise String Operators Integer Arithmetic Floating-point Arithmetic Bigger Numbers perlre - Perl regular expressions DESCRIPTION i, m, s, x Regular Expressions (?#text), (?:pattern), (?imsx-imsx:pattern), (?=pattern), (?!pattern), (?<=pattern), (?<!pattern), (?{ code }), (?>pattern), (?(condition)yes-pattern|no-pattern), (?(condition)yes-pattern), (?imsx-imsx) Backtracking Version 8 Regular Expressions WARNING on \1 vs $1 Repeated patterns matching zero-length substring Creating custom RE engines SEE ALSO perlrun - how to execute the Perl interpreter SYNOPSIS DESCRIPTION #! and quoting on non-Unix systems OS/2, MS-DOS, Win95/NT, Macintosh Location of Perl Switches -0[digits], -a, -c, -d, -d:foo, -Dletters, -Dnumber, -e commandline, -Fpattern, -h, -i[extension], -Idirectory, -l[octnum], -m[-]module, -M[-]module, -M[-]'module ...', -[mM][-]module=arg[,arg]..., -n, -p, -P, -s, -S, -T, -u, -U, -v, -V, -V:name, -w, -x directory ENVIRONMENT HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL (specific to WIN32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL perlfunc - Perl builtin functions DESCRIPTION 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 Alphabetical Listing of Perl Functions -X FILEHANDLE, -X EXPR, -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/// perlvar - Perl predefined variables DESCRIPTION Predefined Names $ARG, $_, $<digits>, $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} Error Indicators perlsub - Perl subroutines SYNOPSIS DESCRIPTION Private Variables via my() Peristent Private Variables Temporary Values via local() Passing Symbol Table Entries (typeglobs) When to Still Use local() 1. You need to give a global variable a temporary value, especially $_, 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 Pass by Reference Prototypes Constant Functions Overriding Builtin Functions Autoloading SEE ALSO perlmod - Perl modules (packages and symbol tables) DESCRIPTION Packages Symbol Tables Package Constructors and Destructors Perl Classes Perl Modules SEE ALSO perlmodlib - constructing new Perl modules and finding existing ones DESCRIPTION THE PERL MODULE LIBRARY Pragmatic Modules use autouse MODULE => qw(sub1 sub2 sub3), blib, diagnostics, integer, less, lib, locale, ops, overload, re, sigtrap, strict, subs, vmsish, vars 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 Extension Modules 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 Modules: Creation, Use, and Abuse 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 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 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 NOTE perlmodinstall - Installing CPAN Modules DESCRIPTION PREAMBLE DECOMPRESS the file, UNPACK the file into a directory, BUILD the module (sometimes unnecessary), INSTALL the module HEY AUTHOR COPYRIGHT perlform - Perl formats DESCRIPTION Format Variables NOTES Footers Accessing Formatting Internals WARNINGS perllocale - Perl locale handling (internationalization and localization) DESCRIPTION PREPARING TO USE LOCALES USING LOCALES The use locale pragma The setlocale function Finding locales LOCALE PROBLEMS Temporarily fixing locale problems Permanently fixing locale problems Permanently fixing your locale configuration Permanently fixing system locale configuration The localeconv function LOCALE CATEGORIES Category LC_COLLATE: Collation Category LC_CTYPE: Character Types Category LC_NUMERIC: Numeric Formatting Category LC_MONETARY: Formatting of monetary amounts LC_TIME Other categories SECURITY Comparison operators (lt, le, ge, gt and cmp):, Case-mapping interpolation (with \l, \L, \u or \U), Matching operator (m//):, Substitution operator (s///):, In-memory formatting function (sprintf()):, Output formatting functions (printf() and write()):, Case- mapping functions (lc(), lcfirst(), uc(), ucfirst()):, POSIX locale- dependent functions (localeconv(), strcoll(),strftime(), strxfrm()):, POSIX character class tests (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit()): ENVIRONMENT PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, LC_TIME, LANG NOTES Backward compatibility I18N:Collate obsolete Sort speed and memory use impacts write() and LC_NUMERIC Freely available locale definitions I18n and l10n An imperfect standard BUGS Broken systems SEE ALSO HISTORY perlref - Perl references and nested data structures DESCRIPTION Making References Using References Symbolic references Not-so-symbolic references Pseudo-hashes: Using an array as a hash Function Templates WARNING SEE ALSO perldsc - Perl Data Structures Cookbook DESCRIPTION arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, more elaborate constructs REFERENCES COMMON MISTAKES CAVEAT ON PRECEDENCE WHY YOU SHOULD ALWAYS use strict DEBUGGING CODE EXAMPLES LISTS OF LISTS Declaration of a LIST OF LISTS Generation of a LIST OF LISTS Access and Printing of a LIST OF LISTS HASHES OF LISTS Declaration of a HASH OF LISTS Generation of a HASH OF LISTS Access and Printing of a HASH OF LISTS LISTS OF HASHES Declaration of a LIST OF HASHES Generation of a LIST OF HASHES Access and Printing of a LIST OF HASHES HASHES OF HASHES Declaration of a HASH OF HASHES Generation of a HASH OF HASHES Access and Printing of a HASH OF HASHES MORE ELABORATE RECORDS Declaration of MORE ELABORATE RECORDS Declaration of a HASH OF COMPLEX RECORDS Generation of a HASH OF COMPLEX RECORDS Database Ties SEE ALSO AUTHOR perllol, perlLoL - Manipulating Lists of Lists in Perl DESCRIPTION Declaration and Access of Lists of Lists Growing Your Own Access and Printing Slices SEE ALSO AUTHOR perltoot - Tom's object-oriented tutorial for perl DESCRIPTION Creating a Class Object Representation Class Interface Constructors and Instance Methods Planning for the Future: Better Constructors Destructors Other Object Methods Class Data Accessing Class Data Debugging Methods Class Destructors Documenting the Interface Aggregation Inheritance Overridden Methods Multiple Inheritance UNIVERSAL: The Root of All Objects Alternate Object Representations Arrays as Objects Closures as Objects AUTOLOAD: Proxy Methods Autoloaded Data Methods Inherited Autoloaded Data Methods Metaclassical Tools Class::Struct Data Members as Variables NOTES Object Terminology SEE ALSO AUTHOR AND COPYRIGHT COPYRIGHT Acknowledgments perlobj - Perl objects DESCRIPTION An Object is Simply a Reference A Class is Simply a Package A Method is Simply a Subroutine Method Invocation Default UNIVERSAL methods isa(CLASS), can(METHOD), VERSION( [NEED] ) Destructors WARNING Summary Two-Phased Garbage Collection SEE ALSO perltie - how to hide an object class in a simple variable SYNOPSIS DESCRIPTION Tying Scalars TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this Tying Arrays TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, DESTROY this 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 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 The untie Gotcha SEE ALSO BUGS AUTHOR perlbot - Bag'o Object Tricks (the BOT) DESCRIPTION OO SCALING TIPS INSTANCE VARIABLES SCALAR INSTANCE VARIABLES INSTANCE VARIABLE INHERITANCE OBJECT RELATIONSHIPS OVERRIDING SUPERCLASS METHODS USING RELATIONSHIP WITH SDBM THINKING OF CODE REUSE CLASS CONTEXT AND THE OBJECT INHERITING A CONSTRUCTOR DELEGATION perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores) DESCRIPTION Signals Named Pipes WARNING Using open() for IPC Filehandles Background Processes Complete Dissociation of Child from Parent Safe Pipe Opens Bidirectional Communication with Another Process Bidirectional Communication with Yourself Sockets: Client/Server Communication Internet Line Terminators Internet TCP Clients and Servers Unix-Domain TCP Clients and Servers TCP Clients with IO::Socket A Simple Client Proto, PeerAddr, PeerPort A Webget Client Interactive Client with IO::Socket TCP Servers with IO::Socket Proto, LocalPort, Listen, Reuse UDP: Message Passing SysV IPC NOTES BUGS AUTHOR SEE ALSO perldebug - Perl debugging DESCRIPTION The Perl Debugger Debugger Commands h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n [expr], <CR>, 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?].., recallCommand, ShellBang, pager, tkRunning, signalLevel, warnLevel, dieLevel, AutoTrace, LineInfo, inhibit_exit, PrintRet, ornaments, frame, maxTraceLen, arrayDepth, hashDepth, compactDump, veryCompact, globPrint, DumpDBFiles, DumpPackages, DumpReused, quote, HighBit, undefPrint, UsageOnly, TTY, noTTY, ReadLine, NonStop, < [ command ], << command, > command, >> command, { [ command ], {{ command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, m package Debugger input/output Prompt, Multiline commands, Stack backtrace, Listing, Frame listing Debugging compile-time statements Debugger Customization Readline Support Editor Support for Debugging The Perl Profiler Debugger support in perl Debugger Internals Other resources BUGS Debugging Perl memory usage Using $ENV{PERL_DEBUG_MSTATS} buckets SMALLEST(APPROX)..GREATEST(APPROX), Free/Used, Total sbrk(): SBRKed/SBRKs:CONTINUOUS, pad: 0, heads: 2192, chain: 0, tail: 6144 Example of using -DL switch 717, 002, 054, 602, 702, 704 -DL details !!!, !!, ! Limitations of -DL statistic Debugging regular expressions Compile-time output anchored STRING at POS, floating STRING at POS1..POS2, matching floating/anchored, minlen, stclass TYPE, noscan, isall, GPOS, plus, implicit, with eval, anchored(TYPE) Types of nodes Run-time output perldiag - various Perl diagnostics DESCRIPTION perlsec - Perl security DESCRIPTION Laundering and Detecting Tainted Data Switches On the "#!" Line Cleaning Up Your Path Security Bugs Protecting Your Programs SEE ALSO perltrap - Perl traps for the unwary DESCRIPTION Awk Traps C Traps Sed Traps Shell Traps Perl Traps 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 Discontinuance, Deprecation, and BugFix traps Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, Discontinuance, Discontinuance, Deprecation, Discontinuance Parsing Traps Parsing, Parsing, Parsing, Parsing Numerical Traps Numerical, Numerical, Numerical General data type traps (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), (Constants), (Scalars), (Variable Suicide) Context Traps - scalar, list contexts (list context), (scalar context), (scalar context), (list, builtin) Precedence Traps Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, Precedence General Regular Expression Traps using s///, etc. Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression Subroutine, Signal, Sorting Traps (Signals), (Sort Subroutine), warn() won't let you specify a filehandle OS Traps (SysV), (SysV) Interpolation Traps Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation DBM Traps DBM, DBM Unclassified Traps require/do trap using returned value, split on empty string with LIMIT specified perlport - Writing portable Perl DESCRIPTION Not all Perl programs have to be portable, The vast majority of Perl is portable ISSUES Newlines File Paths System Interaction Interprocess Communication (IPC) External Subroutines (XS) Standard Modules Time and Date System Resources Security Style CPAN TESTERS Mailing list: cpan-testers@perl.org, Testing results: http://www.connect.net/gbarr/cpan-test/ PLATFORMS Unix DOS and Derivatives The djgpp environment for DOS, http://www.delorie.com/djgpp/, The EMX environment for DOS, OS/2, etc. emx@iaehv.nl,http://www.juge.com/bbs/Hobb.19.html, Build instructions for Win32, the perlwin32 manpage, The ActiveState Pages, http://www.activestate.com/ MacPerl The MacPerl Pages, http://www.ptf.com/macperl/, The MacPerl mailing list, mac-perl-request@iis.ee.ethz.ch VMS the perlvms.pod manpage, vmsperl list, vmsperl- request@newman.upenn.edu, vmsperl on the web, http://www.sidhe.org/vmsperl/index.html EBCDIC Platforms perl-mvs list, AS/400 Perl information at http://as400.rochester.ibm.com Other perls Atari, Guido Flohr's page http://stud.uni-sb.de/~gufl0000/, HP 300 MPE/iX http://www.cccd.edu/~markb/perlix.html, Novell Netware FUNCTION IMPLEMENTATIONS Alphabetical Listing of Perl Functions -X FILEHANDLE, -X EXPR, -X, 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 AUTHORS / CONTRIBUTORS VERSION perlstyle - Perl style guide DESCRIPTION perlpod - plain old documentation DESCRIPTION Verbatim Paragraph Command Paragraph Ordinary Block of Text The Intent Embedding Pods in Perl Modules Common Pod Pitfalls SEE ALSO AUTHOR perlbook - Perl book information DESCRIPTION perlembed - how to embed perl in your C program DESCRIPTION PREAMBLE Use C from Perl?, Use a Unix program from Perl?, Use Perl from Perl?, Use C from C?, Use Perl from C? ROADMAP Compiling your C program Adding a Perl interpreter to your C program Calling a Perl subroutine from your C program Evaluating a Perl statement from your C program Performing Perl pattern matches and substitutions from your C program Fiddling with the Perl stack from your C program Maintaining a persistent interpreter Maintaining multiple interpreter instances Using Perl modules, which themselves use C libraries, from your C program Embedding Perl under Win32 MORAL AUTHOR COPYRIGHT perlapio - perl's IO abstraction interface. SYNOPSIS DESCRIPTION PerlIO *, PerlIO_stdin(), PerlIO_stdout(), PerlIO_stderr(), PerlIO_open(path, mode), PerlIO_fdopen(fd,mode), PerlIO_printf(f,fmt,...), PerlIO_vprintf(f,fmt,a), PerlIO_stdoutf(fmt,...), PerlIO_read(f,buf,count), PerlIO_write(f,buf,count), PerlIO_close(f), PerlIO_puts(f,s), PerlIO_putc(f,c), PerlIO_ungetc(f,c), PerlIO_getc(f), PerlIO_eof(f), PerlIO_error(f), PerlIO_fileno(f), PerlIO_clearerr(f), PerlIO_flush(f), PerlIO_tell(f), PerlIO_seek(f,o,w), PerlIO_getpos(f,p), PerlIO_setpos(f,p), PerlIO_rewind(f), PerlIO_tmpfile() Co-existence with stdio PerlIO_importFILE(f,flags), PerlIO_exportFILE(f,flags), PerlIO_findFILE(f), PerlIO_releaseFILE(p,f), PerlIO_setlinebuf(f), PerlIO_has_cntptr(f), PerlIO_get_ptr(f), PerlIO_get_cnt(f), PerlIO_canset_cnt(f), PerlIO_fast_gets(f), PerlIO_set_ptrcnt(f,p,c), PerlIO_set_cnt(f,c), PerlIO_has_base(f), PerlIO_get_base(f), PerlIO_get_bufsiz(f) perlxs - XS language reference manual DESCRIPTION Introduction On The Road The Anatomy of an XSUB The Argument Stack The RETVAL Variable The MODULE Keyword The PACKAGE Keyword The PREFIX Keyword The OUTPUT: Keyword The CODE: Keyword The INIT: Keyword The NO_INIT Keyword Initializing Function Parameters Default Parameter Values The PREINIT: Keyword The SCOPE: Keyword The INPUT: Keyword Variable-length Parameter Lists The C_ARGS: Keyword The PPCODE: Keyword Returning Undef And Empty Lists The REQUIRE: Keyword The CLEANUP: Keyword The BOOT: Keyword The VERSIONCHECK: Keyword The PROTOTYPES: Keyword The PROTOTYPE: Keyword The ALIAS: Keyword The INTERFACE: Keyword The INTERFACE_MACRO: Keyword The INCLUDE: Keyword The CASE: Keyword The & Unary Operator Inserting Comments and C Preprocessor Directives Using XS With C++ Interface Strategy Perl Objects And C Structures The Typemap EXAMPLES XS VERSION AUTHOR perlxstut, perlXStut - Tutorial for XSUBs DESCRIPTION VERSION CAVEAT DYNAMIC VERSUS STATIC EXAMPLE 1 EXAMPLE 2 WHAT HAS GONE ON? WRITING GOOD TEST SCRIPTS EXAMPLE 3 WHAT'S NEW HERE? INPUT AND OUTPUT PARAMETERS THE XSUBPP COMPILER THE TYPEMAP FILE WARNING EXAMPLE 4 WHAT HAS HAPPENED HERE? SPECIFYING ARGUMENTS TO XSUBPP THE ARGUMENT STACK EXTENDING YOUR EXTENSION DOCUMENTING YOUR EXTENSION INSTALLING YOUR EXTENSION SEE ALSO Author Last Changed perlguts - Perl's Internal Functions DESCRIPTION Variables Datatypes What is an "IV"? Working with SVs What's Really Stored in an SV? Working with AVs Working with HVs Hash API Extensions References Blessed References and Class Objects Creating New Variables Reference Counts and Mortality Stashes and Globs Double-Typed SVs Magic Variables Assigning Magic Magic Virtual Tables Finding Magic Understanding the Magic of Tied Hashes and Arrays Localizing changes SAVEINT(int i), SAVEIV(IV i), SAVEI32(I32 i), SAVELONG(long i), SAVESPTR(s), SAVEPPTR(p), SAVEFREESV(SV *sv), SAVEFREEOP(OP *op), SAVEFREEPV(p), SAVECLEARSV(SV *sv), SAVEDELETE(HV *hv, char *key, I32 length), SAVEDESTRUCTOR(f,p), SAVESTACK_POS(), SV* save_scalar(GV *gv), AV* save_ary(GV *gv), HV* save_hash(GV *gv), void save_item(SV *item), void save_list(SV **sarg, I32 maxsarg), SV* save_svref(SV **sptr), void save_aptr(AV **aptr), void save_hptr(HV **hptr) Subroutines XSUBs and the Argument Stack Calling Perl Routines from within C Programs Memory Allocation PerlIO Putting a C value on Perl stack Scratchpads Scratchpads and recursion Compiled code Code tree Examining the tree Compile pass 1: check routines Compile pass 1a: constant folding Compile pass 2: context propagation Compile pass 3: peephole optimization 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 AUTHORS perlcall - Perl calling conventions from C DESCRIPTION An Error Handler, An Event Driven Program THE PERL_CALL FUNCTIONS perl_call_sv, perl_call_pv, perl_call_method, perl_call_argv FLAG VALUES G_VOID G_SCALAR G_ARRAY G_DISCARD G_NOARGS G_EVAL G_KEEPERR Determining the Context KNOWN PROBLEMS EXAMPLES No Parameters, Nothing returned Passing Parameters Returning a Scalar Returning a list of values Returning a list in a scalar context Returning Data from Perl via the parameter list Using G_EVAL Using G_KEEPERR Using perl_call_sv Using perl_call_argv Using perl_call_method Using GIMME_V Using Perl to dispose of temporaries 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 Alternate Stack Manipulation Creating and calling an anonymous subroutine in C SEE ALSO AUTHOR DATE perlhist - the Perl history records DESCRIPTION INTRODUCTION THE KEEPERS OF THE PUMPKIN PUMPKIN? THE RECORDS SELECTED RELEASE SIZES SELECTED PATCH SIZES THE KEEPERS OF THE RECORDS PRAGMA DOCUMENTATION attrs - set/get attributes of a subroutine SYNOPSIS DESCRIPTION method, locked re - Perl pragma to alter regular expression behaviour SYNOPSIS DESCRIPTION autouse - postpone load of modules until a function is used SYNOPSIS DESCRIPTION WARNING AUTHOR SEE ALSO base - Establish IS-A relationship with base class at compile time SYNOPSIS DESCRIPTION SEE ALSO blib - Use MakeMaker's uninstalled version of a package SYNOPSIS DESCRIPTION BUGS AUTHOR constant - Perl pragma to declare constants SYNOPSIS DESCRIPTION NOTES TECHNICAL NOTE BUGS AUTHOR COPYRIGHT diagnostics - Perl compiler pragma to force verbose warning diagnostics SYNOPSIS DESCRIPTION The diagnostics Pragma The splain Program EXAMPLES INTERNALS BUGS AUTHOR fields - compile-time class fields SYNOPSIS DESCRIPTION SEE ALSO integer - Perl pragma to compute arithmetic in integer instead of double SYNOPSIS DESCRIPTION less - perl pragma to request less of something from the compiler SYNOPSIS DESCRIPTION lib - manipulate @INC at compile time SYNOPSIS DESCRIPTION ADDING DIRECTORIES TO @INC DELETING DIRECTORIES FROM @INC RESTORING ORIGINAL @INC SEE ALSO AUTHOR locale - Perl pragma to use and avoid POSIX locales for built-in operations SYNOPSIS DESCRIPTION overload - Package for overloading perl operations SYNOPSIS CAVEAT SCRIPTOR DESCRIPTION Declaration of overloaded functions Calling Conventions for Binary Operations FALSE, TRUE, undef Calling Conventions for Unary Operations Overloadable Operations Arithmetic operations, Comparison operations, Bit operations, Increment and decrement, Transcendental functions, Boolean, string and numeric conversion, Special Inheritance and overloading Strings as values of use overload directive, Overloading of an operation is inherited by derived classes SPECIAL SYMBOLS FOR use overload Last Resort Fallback undef, TRUE, defined, but FALSE Copy Constructor Example MAGIC AUTOGENERATION Assignment forms of arithmetic operations, Conversion operations, Increment and decrement, abs($a), Unary minus, Negation, Concatenation, Comparison operations, Copy operator WARNING Run-time Overloading Public functions overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) Overloading constants integer, float, binary, q, qr IMPLEMENTATION AUTHOR DIAGNOSTICS BUGS sigtrap - Perl pragma to enable simple signal handling SYNOPSIS DESCRIPTION OPTIONS SIGNAL HANDLERS stack-trace, die, handler your-handler SIGNAL LISTS normal-signals, error-signals, old-interface-signals OTHER untrapped, any, signal, number EXAMPLES strict - Perl pragma to restrict unsafe constructs SYNOPSIS DESCRIPTION strict refs, strict vars, strict subs subs - Perl pragma to predeclare sub names SYNOPSIS DESCRIPTION vars - Perl pragma to predeclare global variable names SYNOPSIS DESCRIPTION MODULE DOCUMENTATION AnyDBM_File - provide framework for multiple DBMs SYNOPSIS DESCRIPTION DBM Comparisons [0], [1], [2], [3] SEE ALSO AutoLoader - load subroutines only on demand SYNOPSIS DESCRIPTION Subroutine Stubs Using AutoLoader's AUTOLOAD Subroutine Overriding AutoLoader's AUTOLOAD Subroutine Package Lexicals AutoLoader vs. SelfLoader CAVEATS SEE ALSO AutoSplit - split a package for autoloading SYNOPSIS DESCRIPTION $keep, $check, $modtime Multiple packages DIAGNOSTICS B - The Perl Compiler SYNOPSIS DESCRIPTION OVERVIEW OF CLASSES SV-RELATED CLASSES B::SV METHODS REFCNT, FLAGS B::IV METHODS IV, IVX, needs64bits, packiv B::NV METHODS NV, NVX B::RV METHODS RV B::PV METHODS PV B::PVMG METHODS MAGIC, SvSTASH B::MAGIC METHODS MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR B::PVLV METHODS TARGOFF, TARGLEN, TYPE, TARG B::BM METHODS USEFUL, PREVIOUS, RARE, TABLE B::GV METHODS NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT, FLAGS B::IO METHODS LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV, BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS B::AV METHODS FILL, MAX, OFF, ARRAY, AvFLAGS B::CV METHODS STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY B::HV METHODS FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY OP-RELATED CLASSES B::OP METHODS next, sibling, ppaddr, desc, targ, type, seq, flags, private B::UNOP METHOD first B::BINOP METHOD last B::LOGOP METHOD other B::CONDOP METHODS true, false B::LISTOP METHOD children B::PMOP METHODS pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp B::SVOP METHOD sv B::GVOP METHOD gv B::PVOP METHOD pv B::LOOP METHODS redoop, nextop, lastop B::COP METHODS label, stash, filegv, cop_seq, arybase, line FUNCTIONS EXPORTED BY B 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) AUTHOR B::Asmdata - Autogenerated data about Perl ops, used to generate bytecode SYNOPSIS DESCRIPTION AUTHOR B::Assembler - Assemble Perl bytecode SYNOPSIS DESCRIPTION AUTHOR B::Bblock - Walk basic blocks SYNOPSIS DESCRIPTION AUTHOR B::Bytecode - Perl compiler's bytecode backend SYNOPSIS DESCRIPTION OPTIONS -ofilename, --, -f, -fcompress-nullops, -fomit-sequence-numbers, -fbypass-nullops, -fstrip-syntax-tree, -On, -D, -Do, -Db, -Da, -DC, -S, -m BUGS AUTHOR B::C - Perl compiler's C backend SYNOPSIS DESCRIPTION OPTIONS -ofilename, -v, --, -uPackname, -D, -Do, -Dc, -DA, -DC, -DM, -f, -fcog, -fno-cog, -On EXAMPLES BUGS AUTHOR B::CC - Perl compiler's optimized C translation backend SYNOPSIS DESCRIPTION OPTIONS -ofilename, -v, --, -uPackname, -mModulename, -D, -Dr, -DO, -Ds, -Dp, -Dq, -Dl, -Dt, -f, -ffreetmps-each-bblock, -ffreetmps-each-loop, -fomit- taint, -On EXAMPLES BUGS DIFFERENCES Loops Context of ".." Arithmetic Deprecated features AUTHOR B::Debug - Walk Perl syntax tree, printing debug info about ops SYNOPSIS DESCRIPTION AUTHOR B::Deparse - Perl compiler backend to produce perl code SYNOPSIS DESCRIPTION OPTIONS -p, -uPACKAGE, -l, -sLETTERS, C BUGS AUTHOR B::Disassembler - Disassemble Perl bytecode SYNOPSIS DESCRIPTION AUTHOR B::Lint - Perl lint SYNOPSIS DESCRIPTION OPTIONS AND LINT CHECKS context, implicit-read and implicit-write, dollar-underscore, private- names, undefined-subs, regexp-variables, all, none NON LINT-CHECK OPTIONS -u Package BUGS AUTHOR B::O, O - Generic interface to Perl Compiler backends SYNOPSIS DESCRIPTION CONVENTIONS IMPLEMENTATION AUTHOR B::Showlex - Show lexical variables used in functions or files SYNOPSIS DESCRIPTION AUTHOR B::Stackobj - Helper module for CC backend SYNOPSIS DESCRIPTION AUTHOR B::Terse - Walk Perl syntax tree, printing terse info about ops SYNOPSIS DESCRIPTION AUTHOR B::Xref - Generates cross reference reports for Perl programs SYNOPSIS DESCRIPTION OPTIONS -oFILENAME, -r, -D[tO] BUGS AUTHOR Benchmark - benchmark running times of code SYNOPSIS DESCRIPTION Methods new, debug Standard Exports timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] ) Optional Exports clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( ) NOTES INHERITANCE CAVEATS AUTHORS MODIFICATION HISTORY CGI - Simple Common Gateway Interface Class SYNOPSIS ABSTRACT DESCRIPTION PROGRAMMING STYLE 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' CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): CREATING A NEW QUERY OBJECT FROM AN INPUT FILE FETCHING A LIST OF KEYWORDS FROM THE QUERY: FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: SETTING THE VALUE(S) OF A NAMED PARAMETER: APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: IMPORTING ALL PARAMETERS INTO A NAMESPACE: DELETING A PARAMETER COMPLETELY: DELETING ALL PARAMETERS: DIRECT ACCESS TO THE PARAMETER LIST: SAVING THE STATE OF THE SCRIPT TO A FILE: USING THE FUNCTION-ORIENTED INTERFACE :cgi, :form, :html2, :html3, :netscape, :html, :standard, :all PRAGMAS -any, -compile, -nph, -autoload, -no_debug, -private_tempfiles GENERATING DYNAMIC DOCUMENTS CREATING A STANDARD HTTP HEADER: GENERATING A REDIRECTION HEADER CREATING THE HTML DOCUMENT HEADER Parameters:, 4, 5, 6.. ENDING THE HTML DOCUMENT: CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: OBTAINING THE SCRIPT'S URL -absolute, -relative, -full, -path (-path_info), -query (-query_string) CREATING STANDARD HTML ELEMENTS: PROVIDING ARGUMENTS TO HTML SHORTCUTS THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS HTML SHORTCUTS AND LIST INTERPOLATION NON-STANDARD HTML SHORTCUTS CREATING FILL-OUT FORMS: CREATING AN ISINDEX TAG STARTING AND ENDING A FORM application/x-www-form-urlencoded, multipart/form-data CREATING A TEXT FIELD Parameters CREATING A BIG TEXT FIELD CREATING A PASSWORD FIELD CREATING A FILE UPLOAD FIELD Parameters CREATING A POPUP MENU CREATING A SCROLLING LIST Parameters: CREATING A GROUP OF RELATED CHECKBOXES Parameters: CREATING A STANDALONE CHECKBOX Parameters: CREATING A RADIO BUTTON GROUP Parameters: CREATING A SUBMIT BUTTON Parameters: CREATING A RESET BUTTON CREATING A DEFAULT BUTTON CREATING A HIDDEN FIELD Parameters: CREATING A CLICKABLE IMAGE BUTTON Parameters:, 3.The third option (-align, optional) is an alignment type, and may be TOP, BOTTOM or MIDDLE CREATING A JAVASCRIPT ACTION BUTTON NETSCAPE COOKIES 1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, -name, -value, -path, -domain, -expires, -secure WORKING WITH NETSCAPE FRAMES 1. Create a <Frameset> document, 2. Specify the destination for the document in the HTTP header, 3. Specify the destination for the document in the <FORM> tag LIMITED SUPPORT FOR CASCADING STYLE SHEETS DEBUGGING DUMPING OUT ALL THE NAME/VALUE PAIRS FETCHING ENVIRONMENT VARIABLES accept(), raw_cookie(), user_agent(), path_info(), path_translated(), remote_host(), script_name()Return the script name as a partial URL, for self-refering scripts, referer(), auth_type (), server_name (), virtual_host (), server_software (), remote_user (), user_name (), request_method() USING NPH SCRIPTS In the use statement, By calling the nph() method:, By using -nph parameters in the header() and redirect() statements: Server Push multipart_init() multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end() Avoiding Denial of Service Attacks $CGI::POST_MAX, $CGI::DISABLE_UPLOADS, 1. On a script-by-script basis, 2. Globally for all scripts COMPATIBILITY WITH CGI-LIB.PL AUTHOR INFORMATION CREDITS Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, 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.. A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT BUGS SEE ALSO CGI::Apache - Make things work with CGI.pm against Perl-Apache API SYNOPSIS DESCRIPTION NOTE 1 NOTE 2 SEE ALSO AUTHOR CGI::Carp, CGI::Carp - CGI routines for writing to the HTTPD (or other) error log SYNOPSIS DESCRIPTION REDIRECTING ERROR MESSAGES MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW Changing the default message CHANGE LOG AUTHORS SEE ALSO CGI::Cookie - Interface to Netscape Cookies SYNOPSIS DESCRIPTION USING CGI::Cookie 1. expiration date, 2. domain, 3. path, 4. secure flag Creating New Cookies Sending the Cookie to the Browser Recovering Previous Cookies Manipulating Cookies name(), value(), domain(), path(), expires() AUTHOR INFORMATION BUGS SEE ALSO CGI::Fast - CGI Interface for Fast CGI SYNOPSIS DESCRIPTION OTHER PIECES OF THE PUZZLE WRITING FASTCGI PERL SCRIPTS INSTALLING FASTCGI SCRIPTS USING FASTCGI SCRIPTS AS CGI SCRIPTS CAVEATS AUTHOR INFORMATION BUGS SEE ALSO CGI::Push - Simple Interface to Server Push SYNOPSIS DESCRIPTION USING CGI::Push -next_page, -last_page, -type, -delay, -cookie, -target, -expires Heterogeneous Pages Changing the Page Delay on the Fly INSTALLING CGI::Push SCRIPTS CAVEATS AUTHOR INFORMATION BUGS SEE ALSO CGI::Switch - Try more than one constructors and return the first object available SYNOPSIS DESCRIPTION SEE ALSO AUTHOR CPAN - query, download and build perl modules from CPAN sites SYNOPSIS DESCRIPTION Interactive Mode Searching for authors, bundles, distribution files and modules, make, test, install, clean modules or distributions, readme, look module or distribution, Signals CPAN::Shell autobundle recompile The four CPAN::* Classes: Author, Bundle, Module, Distribution Programmer's interface expand($type,@things), Programming Examples Methods in the four Cache Manager Bundles Prerequisites Finding packages and VERSION Debugging Floppy, Zip, and all that Jazz CONFIGURATION o conf <scalar option>, o conf <scalar option> <value>, o conf <list option>, o conf <list option> [shift|pop], o conf <list option> [unshift|push|splice] <list> CD-ROM support SECURITY EXPORT BUGS AUTHOR SEE ALSO CPAN::FirstTime - Utility for CPAN::Config file Initialization SYNOPSIS DESCRIPTION CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS module SYNOPSIS DESCRIPTION SEE ALSO Carp, carp - warn of errors (from perspective of caller) SYNOPSIS DESCRIPTION Forcing a Stack Trace Class::Struct - declare struct-like datatypes as Perl classes SYNOPSIS DESCRIPTION The struct() function Element Types and Accessor Methods Scalar ('$' or '*$'), Array ('@' or '*@'), Hash ('%' or '*%'), Class ('Class_Name' or '*Class_Name') EXAMPLES Example 1, Example 2 Author and Modification History Cwd, getcwd - get pathname of current working directory SYNOPSIS DESCRIPTION DB_File - Perl5 access to Berkeley DB version 1.x SYNOPSIS DESCRIPTION DB_HASH, DB_BTREE, DB_RECNO Using DB_File with Berkeley DB version 2 Interface to Berkeley DB Opening a Berkeley DB Database File Default Parameters In Memory Databases DB_HASH A Simple Example DB_BTREE Changing the BTREE sort order Handling Duplicate Keys The get_dup() Method Matching Partial Keys DB_RECNO The 'bval' Option A Simple Example Extra Methods $X->push(list) ;, $value = $X->pop ;, $X->shift, $X->unshift(list) ;, $X->length Another Example THE API INTERFACE $status = $X->get($key, $value [, $flags]) ;, $status = $X->put($key, $value [, $flags]) ;, $status = $X->del($key [, $flags]) ;, $status = $X->fd ;, $status = $X->seq($key, $value, $flags) ;, $status = $X->sync([$flags]) ; HINTS AND TIPS Locking Databases Sharing Databases With C Applications The untie() Gotcha COMMON QUESTIONS Why is there Perl source in my database? How do I store complex data structures with DB_File? What does "Invalid Argument" mean? What does "Bareword 'DB_File' not allowed" mean? HISTORY BUGS AVAILABILITY COPYRIGHT SEE ALSO AUTHOR Data::Dumper - stringified perl data structures, suitable for both printing and eval SYNOPSIS DESCRIPTION Methods PACKAGE->new(ARRAYREF [, ARRAYREF]), $OBJ->Dump or PACKAGE->Dump(ARRAYREF [, ARRAYREF]), $OBJ->Dumpxs or PACKAGE->Dumpxs(ARRAYREF [, ARRAYREF]), $OBJ->Seen([HASHREF]), $OBJ->Values([ARRAYREF]), $OBJ->Names([ARRAYREF]), $OBJ->Reset Functions Dumper(LIST), DumperX(LIST) Configuration Variables or Methods $Data::Dumper::Indent or $OBJ->Indent([NEWVAL]), $Data::Dumper::Purity or $OBJ->Purity([NEWVAL]), $Data::Dumper::Pad or $OBJ->Pad([NEWVAL]), $Data::Dumper::Varname or $OBJ->Varname([NEWVAL]), $Data::Dumper::Useqq or $OBJ->Useqq([NEWVAL]), $Data::Dumper::Terse or $OBJ->Terse([NEWVAL]), $Data::Dumper::Freezer or $OBJ->Freezer([NEWVAL]), $Data::Dumper::Toaster or $OBJ->Toaster([NEWVAL]), $Data::Dumper::Deepcopy or $OBJ->Deepcopy([NEWVAL]), $Data::Dumper::Quotekeys or $OBJ->Quotekeys([NEWVAL]), $Data::Dumper::Bless or $OBJ->Bless([NEWVAL]) Exports Dumper EXAMPLES BUGS AUTHOR VERSION SEE ALSO Devel::SelfStubber - generate stubs for a SelfLoading module SYNOPSIS DESCRIPTION DirHandle - supply object methods for directory handles SYNOPSIS DESCRIPTION English - use nice English (or awk) names for ugly punctuation variables SYNOPSIS DESCRIPTION Env - perl module that imports environment variables SYNOPSIS DESCRIPTION AUTHOR Exporter - Implements default import method for modules SYNOPSIS DESCRIPTION Selecting What To Export Specialised Import Lists Exporting without using Export's import method Module Version Checking Managing Unknown Symbols Tag Handling Utility Functions ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc. SYNOPSIS 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 BUGS SEE ALSO AUTHOR ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications SYNOPSIS DESCRIPTION @EXPORT FUNCTIONS xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) EXAMPLES SEE ALSO AUTHOR ExtUtils::Install - install files from here to there SYNOPSIS DESCRIPTION ExtUtils::Installed - Inventory management of installed modules SYNOPSIS DESCRIPTION USAGE FUNCTIONS new(), modules(), files(), directories(), directory_tree(), validate(), packlist(), version() EXAMPLE AUTHOR ExtUtils::Liblist - determine libraries to use and how to use them SYNOPSIS DESCRIPTION For static extensions, For dynamic extensions, For dynamic extensions EXTRALIBS LDLOADLIBS and LD_RUN_PATH BSLOADLIBS PORTABILITY VMS implementation Win32 implementation SEE ALSO ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker SYNOPSIS DESCRIPTION ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker SYNOPSIS DESCRIPTION METHODS Preloaded methods canonpath, catdir, catfile, curdir, rootdir, updir 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 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 SEE ALSO ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker SYNOPSIS DESCRIPTION Methods always loaded eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override), rootdir (override), updir (override) 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) ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker SYNOPSIS 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) ExtUtils::MakeMaker - create an extension Makefile SYNOPSIS DESCRIPTION How To Write A Makefile.PL Default Makefile Behaviour make test make testdb make install PREFIX and LIB attribute AFS users Static Linking of a new Perl Binary Determination of Perl Library and Installation Locations Which architecture dependent directory? 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 Additional lowercase attributes clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean, tool_autosplit Overriding MakeMaker Methods Hintsfile support Distribution Support make distcheck, make skipcheck, make distclean, make manifest, make distdir, make tardist, make dist, make uutardist, make shdist, make zipdist, make ci Disabling an extension SEE ALSO AUTHORS ExtUtils::Manifest - utilities to write and check a MANIFEST file SYNOPSIS DESCRIPTION MANIFEST.SKIP EXPORT_OK GLOBAL VARIABLES DIAGNOSTICS Not in MANIFEST: file, No such file: file, MANIFEST: $!, Added to MANIFEST: file SEE ALSO AUTHOR ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader SYNOPSIS DESCRIPTION ExtUtils::Mksymlists - write linker options files for dynamic extension SYNOPSIS DESCRIPTION NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE AUTHOR REVISION ExtUtils::Packlist - manage .packlist files SYNOPSIS DESCRIPTION USAGE FUNCTIONS new(), read(), write(), validate(), packlist_file() EXAMPLE AUTHOR ExtUtils::testlib - add blib/* directories to @INC SYNOPSIS DESCRIPTION Fatal - replace functions with equivalents which succeed or die SYNOPSIS DESCRIPTION AUTHOR Fcntl - load the C Fcntl.h defines SYNOPSIS DESCRIPTION NOTE EXPORTED SYMBOLS File::Basename, fileparse - split a pathname into pieces SYNOPSIS DESCRIPTION fileparse_set_fstype, fileparse EXAMPLES basename, dirname File::CheckTree, validate - run many filetest checks on a tree SYNOPSIS DESCRIPTION File::Compare - Compare files or filehandles SYNOPSIS DESCRIPTION RETURN AUTHOR File::Copy - Copy files or filehandles SYNOPSIS DESCRIPTION Special behavior if syscopy is defined (VMS and OS/2) rmscopy($from,$to[,$date_flag]) RETURN AUTHOR File::DosGlob - DOS like globbing and then some SYNOPSIS DESCRIPTION EXPORTS (by request only) BUGS AUTHOR HISTORY SEE ALSO File::Find, find - traverse a file tree SYNOPSIS DESCRIPTION BUGS File::Path - create or remove a series of directories SYNOPSIS DESCRIPTION AUTHORS REVISION File::Spec - portably perform operations on file names SYNOPSIS DESCRIPTION SEE ALSO AUTHORS File::Spec::Mac - File::Spec for MacOS SYNOPSIS DESCRIPTION METHODS canonpath, catdir, catfile, curdir, rootdir, updir, file_name_is_absolute, path SEE ALSO File::Spec::OS2 - methods for OS/2 file specs SYNOPSIS DESCRIPTION File::Spec::Unix - methods used by File::Spec SYNOPSIS DESCRIPTION METHODS canonpath, catdir, catfile, curdir, rootdir, updir, no_upwards, file_name_is_absolute, path, join, nativename SEE ALSO File::Spec::VMS - methods for VMS file specs SYNOPSIS DESCRIPTION Methods always loaded catdir, catfile, curdir (override), rootdir (override), updir (override), path (override), file_name_is_absolute (override) File::Spec::Win32 - methods for Win32 file specs SYNOPSIS DESCRIPTION catfile, canonpath File::stat - by-name interface to Perl's built-in stat() functions SYNOPSIS DESCRIPTION NOTE AUTHOR FileCache - keep more files open than the system permits SYNOPSIS DESCRIPTION BUGS FileHandle - supply object methods for filehandles SYNOPSIS DESCRIPTION $fh->print, $fh->printf, $fh->getline, $fh->getlines SEE ALSO FindBin - Locate directory of original perl script SYNOPSIS DESCRIPTION EXPORTABLE VARIABLES KNOWN BUGS AUTHORS COPYRIGHT REVISION GDBM_File - Perl5 access to the gdbm library. SYNOPSIS DESCRIPTION AVAILABILITY BUGS SEE ALSO Getopt::Long, GetOptions - extended processing of command line options SYNOPSIS DESCRIPTION !, +, :s, :i, :f Linkage specification Aliases and abbreviations Non-option call-back routine Option starters Return values and Errors COMPATIBILITY EXAMPLES 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) OTHER USEFUL VARIABLES $Getopt::Long::VERSION, $Getopt::Long::error AUTHOR COPYRIGHT AND DISCLAIMER Getopt::Std, getopt - Process single-character switches with switch clustering SYNOPSIS DESCRIPTION I18N::Collate - compare 8-bit scalar data according to the current locale SYNOPSIS DESCRIPTION IO - load various IO modules SYNOPSIS DESCRIPTION IO::lib::IO::File, IO::File - supply object methods for filehandles SYNOPSIS DESCRIPTION CONSTRUCTOR new ([ ARGS ] ), new_tmpfile METHODS open( FILENAME [,MODE [,PERMS]] ) SEE ALSO HISTORY IO::lib::IO::Handle, IO::Handle - supply object methods for I/O handles SYNOPSIS DESCRIPTION CONSTRUCTOR new (), new_from_fd ( FD, MODE ) 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 NOTE SEE ALSO BUGS HISTORY IO::lib::IO::Pipe, IO::pipe - supply object methods for pipes SYNOPSIS DESCRIPTION CONSTRCUTOR new ( [READER, WRITER] ) METHODS reader ([ARGS]), writer ([ARGS]), handles () SEE ALSO AUTHOR COPYRIGHT IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for I/O objects SYNOPSIS DESCRIPTION SEE ALSO HISTORY IO::lib::IO::Select, IO::Select - OO interface to the select system call SYNOPSIS DESCRIPTION CONSTRUCTOR new ( [ HANDLES ] ) 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 ] ) EXAMPLE AUTHOR COPYRIGHT IO::lib::IO::Socket, IO::Socket - Object interface to socket communications SYNOPSIS DESCRIPTION CONSTRUCTOR new ( [ARGS] ) METHODS accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype, protocol SUB-CLASSES IO::Socket::INET METHODS sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost () IO::Socket::UNIX METHODS hostpath(), peerpath() SEE ALSO AUTHOR COPYRIGHT IPC::Open2, open2 - open a process for both reading and writing SYNOPSIS DESCRIPTION WARNING SEE ALSO IPC::Open3, open3 - open a process for reading, writing, and error handling SYNOPSIS DESCRIPTION WARNING IPC::SysV - SysV IPC constants SYNOPSIS DESCRIPTION ftok( PATH, ID ) SEE ALSO AUTHORS COPYRIGHT IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class SYNOPSIS DESCRIPTION METHODS new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, FLAGS ] ), stat SEE ALSO AUTHOR COPYRIGHT IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object class SYNOPSIS DESCRIPTION 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 SEE ALSO AUTHOR COPYRIGHT Math::BigFloat - Arbitrary length float math package SYNOPSIS DESCRIPTION number format, Error returns 'NaN', Division is computed to BUGS AUTHOR Math::BigInt - Arbitrary size integer math package SYNOPSIS DESCRIPTION Canonical notation, Input, Output EXAMPLES Autocreating constants BUGS AUTHOR Math::Complex - complex numbers and associated mathematical functions SYNOPSIS DESCRIPTION OPERATIONS CREATION STRINGIFICATION USAGE ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO ERRORS DUE TO INDIGESTIBLE ARGUMENTS BUGS AUTHORS Math::Trig - trigonometric functions SYNOPSIS DESCRIPTION TRIGONOMETRIC FUNCTIONS tan ERRORS DUE TO DIVISION BY ZERO SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS PLANE ANGLE CONVERSIONS RADIAL COORDINATE CONVERSIONS COORDINATE SYSTEMS 3-D ANGLE CONVERSIONS cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical GREAT CIRCLE DISTANCES EXAMPLES BUGS AUTHORS NDBM_File - Tied access to ndbm files SYNOPSIS DESCRIPTION Net::Ping - check a remote host for reachability SYNOPSIS DESCRIPTION Functions Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [, $timeout]);, $p->close();, pingecho($host [, $timeout]); WARNING NOTES Net::hostent - by-name interface to Perl's built-in gethost*() functions SYNOPSIS DESCRIPTION EXAMPLES NOTE AUTHOR Net::netent - by-name interface to Perl's built-in getnet*() functions SYNOPSIS DESCRIPTION EXAMPLES NOTE AUTHOR Net::protoent - by-name interface to Perl's built-in getproto*() functions SYNOPSIS DESCRIPTION NOTE AUTHOR Net::servent - by-name interface to Perl's built-in getserv*() functions SYNOPSIS DESCRIPTION EXAMPLES NOTE AUTHOR ODBM_File - Tied access to odbm files SYNOPSIS DESCRIPTION Opcode - Disable named opcodes when compiling perl code SYNOPSIS DESCRIPTION NOTE WARNING Operator Names and Operator Lists an operator name (opname), an operator tag name (optag), a negated opname or optag, an operator set (opset) 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) Manipulating Opsets TO DO (maybe) 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 SEE ALSO AUTHORS Opcode::Safe, Safe - Compile and execute code in restricted compartments SYNOPSIS DESCRIPTION a new namespace, an operator mask WARNING RECENT CHANGES 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) Some Safety Issues Memory, CPU, Snooping, Signals, State Changes AUTHOR Opcode::ops, ops - Perl pragma to restrict unsafe operations when compiling SYNOPSIS DESCRIPTION SEE ALSO POSIX - Perl interface to IEEE Std 1003.1 SYNOPSIS DESCRIPTION NOTE CAVEATS 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 CLASSES POSIX::SigAction new POSIX::SigSet new, addset, delset, emptyset, fillset, ismember 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 PATHNAME CONSTANTS Constants POSIX CONSTANTS Constants SYSTEM CONFIGURATION Constants ERRNO Constants FCNTL Constants FLOAT Constants LIMITS Constants LOCALE Constants MATH Constants SIGNAL Constants STAT Constants, Macros STDLIB Constants STDIO Constants TIME Constants UNISTD Constants WAIT Constants, Macros CREATION Pod::Html - module to convert pod files to HTML SYNOPSIS DESCRIPTION ARGUMENTS help, htmlroot, infile, outfile, podroot, podpath, libpods, netscape, nonetscape, index, noindex, recurse, norecurse, title, verbose EXAMPLE AUTHOR BUGS SEE ALSO COPYRIGHT Pod::Text - convert POD data to formatted ASCII text SYNOPSIS DESCRIPTION AUTHOR TODO SDBM_File - Tied access to sdbm files SYNOPSIS DESCRIPTION Search::Dict, look - search for key in dictionary file SYNOPSIS DESCRIPTION SelectSaver - save and restore selected file handle SYNOPSIS DESCRIPTION SelfLoader - load functions only on demand SYNOPSIS DESCRIPTION The __DATA__ token SelfLoader autoloading Autoloading and package lexicals SelfLoader and AutoLoader __DATA__, __END__, and the FOOBAR::DATA filehandle. Classes and inherited methods. Multiple packages and fully qualified subroutine names Shell - run shell commands transparently within perl SYNOPSIS DESCRIPTION AUTHOR Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C socket.h defines and structure manipulators SYNOPSIS 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 Symbol - manipulate Perl symbols and their names SYNOPSIS DESCRIPTION Sys::Hostname - Try every conceivable way to get hostname SYNOPSIS DESCRIPTION AUTHOR Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl interface to the UNIX syslog(3) calls SYNOPSIS DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), closelog EXAMPLES DEPENDENCIES SEE ALSO AUTHOR Term::Cap - Perl termcap interface SYNOPSIS DESCRIPTION EXAMPLES Term::Complete - Perl word completion module SYNOPSIS DESCRIPTION <tab>, ^D, ^U, <del>, <bs> DIAGNOSTICS BUGS AUTHOR Term::ReadLine - Perl interface to various readline packages. If no real package is found, substitutes stubs instead of basic functions. SYNOPSIS DESCRIPTION Minimal set of supported functions ReadLine, new, readline, addhistory, IN, $OUT, MinLine, findConsole, Attribs, Features Additional supported functions tkRunning, ornaments, newTTY EXPORTS ENVIRONMENT Test - provides a simple framework for writing test scripts SYNOPSIS DESCRIPTION TEST TYPES NORMAL TESTS, SKIPPED TESTS, TODO TESTS ONFAIL SEE ALSO AUTHOR Test::Harness - run perl standard test scripts with statistics SYNOPSIS DESCRIPTION The test script output EXPORT DIAGNOSTICS All tests successful.\nFiles=%d, Tests=%d, %s, FAILED tests %s\n\tFailed %d/%d tests, %.2f%% okay., Test returned status %d (wstat %d), Failed 1 test, %.2f%% okay. %s, Failed %d/%d tests, %.2f%% okay. %s ENVIRONMENT SEE ALSO AUTHORS BUGS Text::Abbrev, abbrev - create an abbreviation table from a list SYNOPSIS DESCRIPTION EXAMPLE Text::ParseWords - parse text into an array of tokens or array of arrays SYNOPSIS DESCRIPTION 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) AUTHORS Text::Soundex - Implementation of the Soundex Algorithm as Described by Knuth SYNOPSIS DESCRIPTION EXAMPLES LIMITATIONS AUTHOR Text::Tabs -- expand and unexpand tabs per the unix expand(1) and unexpand(1) SYNOPSIS DESCRIPTION BUGS AUTHOR Text::Wrap - line wrapping to form simple paragraphs SYNOPSIS DESCRIPTION EXAMPLE BUGS AUTHOR Thread - multithreading SYNOPSIS DESCRIPTION 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 METHODS join, eval, tid LIMITATIONS SEE ALSO Thread::Queue - thread-safe queues SYNOPSIS DESCRIPTION FUNCTIONS AND METHODS new, enqueue LIST, dequeue, dequeue_nb, pending SEE ALSO Thread::Semaphore - thread-safe semaphores SYNOPSIS DESCRIPTION FUNCTIONS AND METHODS new, new NUMBER, down, down NUMBER, up, up NUMBER Thread::Signal - Start a thread which runs signal handlers reliably SYNOPSIS DESCRIPTION BUGS Thread::Specific - thread-specific keys SYNOPSIS Tie::Array - base class for tied arrays SYNOPSIS 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 CAVEATS AUTHOR Tie::Handle - base class definitions for tied handles SYNOPSIS 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 MORE INFORMATION Tie::Hash, Tie::StdHash - base class definitions for tied hashes SYNOPSIS DESCRIPTION TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this CAVEATS MORE INFORMATION Tie::RefHash - use references as hash keys SYNOPSIS DESCRIPTION EXAMPLE AUTHOR VERSION SEE ALSO Tie::Scalar, Tie::StdScalar - base class definitions for tied scalars SYNOPSIS DESCRIPTION TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this MORE INFORMATION Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing SYNOPSIS DESCRIPTION CAVEATS Time::Local - efficiently compute time from local and GMT time SYNOPSIS DESCRIPTION Time::gmtime - by-name interface to Perl's built-in gmtime() function SYNOPSIS DESCRIPTION NOTE AUTHOR Time::localtime - by-name interface to Perl's built-in localtime() function SYNOPSIS DESCRIPTION NOTE AUTHOR Time::tm - internal object used by Time::gmtime and Time::localtime SYNOPSIS DESCRIPTION AUTHOR UNIVERSAL - base class for ALL classes (blessed references) SYNOPSIS DESCRIPTION isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa ( VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD ) User::grent - by-name interface to Perl's built-in getgr*() functions SYNOPSIS DESCRIPTION NOTE AUTHOR User::pwent - by-name interface to Perl's built-in getpw*() functions SYNOPSIS DESCRIPTION NOTE AUTHOR AUXILIARY DOCUMENTATION Here should be listed all the extra programs' documentation, but they don't all have manual pages yet: a2p s2p find2perl h2ph c2ph h2xs xsubpp pod2man wrapsuid AUTHOR Larry Wall <larry@wall.org>, with the help of oodles of other folks.