X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=acec1a66ee17d20c861e12392392b19302a22eb7;hb=2d259d9294e79c03b1a69d3eaac3d6e5647468d7;hp=01a03f3e05bb3bb864c09c64716988516a820402;hpb=b971f6e4f6780f32fa16abecd87989a37436a193;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 01a03f3..acec1a6 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -26,8 +26,6 @@ expression enhancements, Innumerable Unbundled Modules, Compilability =item ENVIRONMENT -HOME, LOGDIR, PATH, PERL5LIB, PERL5DB, PERL_DESTRUCT_LEVEL, PERLLIB - =item AUTHOR =item FILES @@ -40,1593 +38,2805 @@ HOME, LOGDIR, PATH, PERL5LIB, PERL5DB, PERL_DESTRUCT_LEVEL, PERLLIB =item NOTES -=head2 perldelta - what's new for perl5.004 +=head2 perlfaq - frequently asked questions about Perl ($Date: 1997/04/24 +22:46:06 $) =item DESCRIPTION -=item Supported Environments - -=item Core Changes +perlfaq: Structural overview of the FAQ, L: General Questions +About Perl, L: Obtaining and Learning about Perl, L: +Programming Tools, L: Data Manipulation, L: Files and +Formats, L: Regexps, L: General Perl Language Issues, +L: System Interaction, L: Networking =over -=item Compilation Option: Binary Compatibility With 5.003 +=item Where to get this document + +=item How to contribute to this document -=item New Opcode Module and Revised Safe Module +=item What will happen if you mail your Perl programming problems to the +authors -=item Fixed Parsing of $$, &$, etc. +=back -=item Internal Change: FileHandle Deprecated +=item Credits -=item Internal Change: PerlIO internal IO abstraction interface +=item Author and Copyright Information -=item New and Changed Built-in Variables +=over -$^E, $^H, $^M +=item Noncommercial Reproduction -=item New and Changed Built-in Functions +=item Commercial Reproduction -delete on slices, flock, printf and sprintf, keys as an lvalue, my() in -Control Structures, unpack() and pack(), use VERSION, use Module VERSION -LIST, prototype(FUNCTION), $_ as Default, C does not trigger a pos() -reset on failure, nested C closures work now, formats work right on -changing lexicals +=item Disclaimer -=item New Built-in Methods +=back -isa(CLASS), can(METHOD), VERSION( [NEED] ) +=item Changes -=item TIEHANDLE Now Supported +24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, +Initial Release: 11/March/97 -TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.12 $, $Date: +1997/04/24 22:43:34 $) -=item Malloc Enhancements +=item DESCRIPTION --DEMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE +=over -=item Miscellaneous Efficiency Enhancements +=item What is Perl? -=back +=item Who supports Perl? Who develops it? Why is it free? -=item Pragmata +=item Which version of Perl should I use? -use blib, use blib 'dir', use locale, use ops, use vmsish +=item What are perl4 and perl5? -=item Modules +=item How stable is Perl? -=over +=item Is Perl difficult to learn? -=item Installation Directories +=item How does Perl compare with other languages like Java, Python, REXX, +Scheme, or Tcl? -=item Fcntl +=item Can I do [task] in Perl? -=item Module Information Summary +=item When shouldn't I program in Perl? -=item IO +=item What's the difference between "perl" and "Perl"? -=item Math::Complex +=item Is it a Perl program or a Perl script? -=item DB_File +=item What is a JAPH? -=item Net::Ping +=item Where can I get a list of Larry Wall witticisms? -=item Overridden Built-ins +=item How can I convince my sysadmin/supervisor/employees to use version +(5/5.004/Perl instead of some other language)? =back -=item Utility Changes +=item AUTHOR AND COPYRIGHT + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.16 $, +$Date: 1997/04/23 18:04:09 $) + +=item DESCRIPTION =over -=item xsubpp +=item What machines support Perl? Where do I get it? -C XSUBs now default to returning nothing +=item How can I get a binary version of Perl? -=back +=item I don't have a C compiler on my system. How can I compile perl? -=item C Language API Changes +=item I copied the Perl binary from one machine to another, but scripts +don't work. -C and C +=item I grabbed the sources and tried to compile but gdbm/dynamic +loading/malloc/linking/... failed. How do I make it work? -=item Documentation Changes +=item What modules and extensions are available for Perl? What is CPAN? +What does CPAN/src/... mean? -L, L, L, L, L, -L, L - -=item New Diagnostics - -"my" variable %s masks earlier declaration in same scope, %s argument is -not a HASH element or slice, Allocation too large: %lx, Allocation too -large, Attempt to free non-existent shared string, Attempt to use reference -as lvalue in substr, Unsupported function fork, Ill-formed logical name -|%s| in prime_env_iter, Can't use bareword ("%s") as %s ref while "strict -refs" in use, Constant subroutine %s redefined, Died, Integer overflow in -hex number, Integer overflow in octal number, Name "%s::%s" used only once: -possible typo, Null picture in formline, Offset outside string, Stub found -while resolving method `%s' overloading `%s' in package `%s', Cannot -resolve method `%s' overloading `%s' in package `s', Out of memory!, Out of -memory during request for %s, Possible attempt to put comments in qw() -list, Possible attempt to separate words with commas, Scalar value @%s{%s} -better written as $%s{%s}, untie attempted while %d inner references still -exist, Value of %s construct can be "0"; test with defined(), Variable "%s" -may be unavailable, Variable "%s" will not stay shared, Warning: -something's wrong, Got an error from DosAllocMem, Malformed PERLLIB_PREFIX, -PERL_SH_DIR too long, Process terminated by SIG%s +=item Is there an ISO or ANSI certified version of Perl? -=item BUGS +=item Where can I get information on Perl? -=item SEE ALSO +=item What are the Perl newsgroups on USENET? Where do I post questions? -=item HISTORY +=item Where should I post source code? -=head2 perldata - Perl data types +=item Perl Books -=item DESCRIPTION +References, Tutorials +*Learning Perl [2nd edition] +by Randal L. Schwartz and Tom Christiansen, Task-Oriented, Special Topics -=over +=item Perl in Magazines -=item Variable names +=item Perl on the Net: FTP and WWW Access -=item Context +=item What mailing lists are there for perl? -=item Scalar values +MacPerl, Perl5-Porters, NTPerl, Perl-Packrats -=item Scalar value constructors +=item Archives of comp.lang.perl.misc -=item List value constructors +=item Perl Training -=item Typeglobs and Filehandles +=item Where can I buy a commercial version of Perl? + +=item Where do I send bug reports? + +=item What is perl.com? perl.org? The Perl Institute? + +=item How do I learn about object-oriented Perl programming? =back -=head2 perlsyn - Perl syntax +=item AUTHOR AND COPYRIGHT + +=head2 perlfaq3 - Programming Tools ($Revision: 1.22 $, $Date: 1997/04/24 +22:43:42 $) =item DESCRIPTION =over -=item Declarations +=item How do I do (anything)? -=item Simple statements +=item How can I use Perl interactively? -=item Compound statements +=item Is there a Perl shell? -=item Loop Control +=item How do I debug my Perl programs? -=item For Loops +=item How do I profile my Perl programs? -=item Foreach Loops +=item How do I cross-reference my Perl programs? -=item Basic BLOCKs and Switch Statements +=item Is there a pretty-printer (formatter) for Perl? -=item Goto +=item Is there a ctags for Perl? -=item PODs: Embedded Documentation +=item Where can I get Perl macros for vi? -=item Plain Old Comments (Not!) +=item Where can I get perl-mode for emacs? -=back +=item How can I use curses with Perl? -=head2 perlop - Perl operators and precedence +=item How can I use X or Tk with Perl? -=item SYNOPSIS +=item How can I generate simple menus without using CGI or Tk? -=item DESCRIPTION +=item What is undump? -=over +=item How can I make my Perl program run faster? -=item Terms and List Operators (Leftward) +=item How can I make my Perl program take less memory? -=item The Arrow Operator +=item Is it unsafe to return a pointer to local data? -=item Auto-increment and Auto-decrement +=item How can I free an array or hash so my program shrinks? -=item Exponentiation +=item How can I make my CGI script more efficient? -=item Symbolic Unary Operators +=item How can I hide the source for my Perl program? -=item Binding Operators +=item How can I compile my Perl program into byte code or C? -=item Multiplicative Operators +=item How can I get '#!perl' to work on [MS-DOS,NT,...]? -=item Additive Operators +=item Can I write useful perl programs on the command line? -=item Shift Operators +=item Why don't perl one-liners work on my DOS/Mac/VMS system? -=item Named Unary Operators +=item Where can I learn about CGI or Web programming in Perl? -=item Relational Operators +=item Where can I learn about object-oriented Perl programming? -=item Equality Operators +=item Where can I learn about linking C with Perl? [h2xs, xsubpp] -=item Bitwise And +=item I've read perlembed, perlguts, etc., but I can't embed perl in +my C program, what am I doing wrong? -=item Bitwise Or and Exclusive Or +=item When I tried to run my script, I got this message. What does it +mean? -=item C-style Logical And +=item What's MakeMaker? -=item C-style Logical Or +=back -=item Range Operator +=item AUTHOR AND COPYRIGHT -=item Conditional Operator +=head2 perlfaq4 - Data Manipulation ($Revision: 1.19 $, $Date: 1997/04/24 +22:43:57 $) -=item Assignment Operators +=item DESCRIPTION -=item Comma Operator +=item Data: Numbers -=item List Operators (Rightward) +=over -=item Logical Not +=item Why am I getting long decimals (eg, 19.9499999999999) instead of the +numbers I should be getting (eg, 19.95)? -=item Logical And +=item Why isn't my octal data interpreted correctly? -=item Logical or and Exclusive Or +=item Does perl have a round function? What about ceil() and floor()? +Trig functions? -=item C Operators Missing From Perl +=item How do I convert bits into ints? -unary &, unary *, (TYPE) +=item How do I multiply matrices? -=item Quote and Quote-like Operators +=item How do I perform an operation on a series of integers? -=item Regexp Quote-Like Operators +=item How can I output Roman numerals? -?PATTERN?, m/PATTERN/gimosx, /PATTERN/gimosx, q/STRING/, C<'STRING'>, -qq/STRING/, "STRING", qx/STRING/, `STRING`, qw/STRING/, -s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, -y/SEARCHLIST/REPLACEMENTLIST/cds +=item Why aren't my random numbers random? -=item I/O Operators +=back -=item Constant Folding +=item Data: Dates -=item Integer Arithmetic +=over -=back +=item How do I find the week-of-the-year/day-of-the-year? -=head2 perlre - Perl regular expressions +=item How can I compare two date strings? -=item DESCRIPTION +=item How can I take a string and turn it into epoch seconds? -i, m, s, x +=item How can I find the Julian Day? + +=item Does Perl have a year 2000 problem? Is Perl Y2K compliant? + +=back + +=item Data: Strings =over -=item Regular Expressions +=item How do I validate input? -(?#text), (?:regexp), (?=regexp), (?!regexp), (?imsx) +=item How do I unescape a string? -=item Backtracking +=item How do I remove consecutive pairs of characters? -=item Version 8 Regular Expressions +=item How do I expand function calls in a string? -=item WARNING on \1 vs $1 +=item How do I find matching/nesting anything? -=back +=item How do I reverse a string? -=head2 perlrun - how to execute the Perl interpreter +=item How do I expand tabs in a string? -=item SYNOPSIS +=item How do I reformat a paragraph? -=item DESCRIPTION +=item How can I access/change the first N letters of a string? -=over +=item How do I change the Nth occurrence of something? -=item Switches +=item How can I count the number of occurrences of a substring within a +string? -B<-0>[I], B<-a>, B<-c>, B<-d>, B<-d:>I, B<-D>I, -B<-D>I, B<-e> I, B<-F>I, B<-h>, -B<-i>[I], B<-I>I, B<-l>[I], -B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, -B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, -B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-x> I +=item How do I capitalize all the words on one line? -=back +=item How can I split a [character] delimited string except when inside +[character]? (Comma-separated files) -=head2 perlfunc - Perl builtin functions +=item How do I strip blank space from the beginning/end of a string? -=item DESCRIPTION +=item How do I extract selected columns from a string? + +=item How do I find the soundex value of a string? + +=item How can I expand variables in text strings? + +=item What's wrong with always quoting "$vars"? + +=item Why don't my < +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 + +=back + +=item Data: Arrays =over -=item Perl Functions by Category +=item What is the difference between $array[1] and @array[1]? -Functions for SCALARs or strings, Regular expressions and pattern matching, -Numeric functions, Functions for real @ARRAYs, Functions for list data, -Functions for real %HASHes, Input and output functions, Functions for fixed -length data or records, Functions for filehandles, files, or directories, -Keywords related to the control flow of your perl program, Keywords related -to scoping, Miscellaneous functions, Functions for processes and process -groups, Keywords related to perl modules, Keywords related to classes and -object-orientedness, Low-level socket functions, System V interprocess -communication functions, Fetching user and group info, Fetching network -info, Time-related functions, Functions new in perl5, Functions obsoleted -in perl5 +=item How can I extract just the unique elements of an array? -=item Alphabetical Listing of Perl Functions +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: --I FILEHANDLE, -I EXPR, -I, 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, 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, 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 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/, -qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR, rand, read -FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir -DIRHANDLE, readlink EXPR, readlink, recv SOCKET,SCALAR,LEN,FLAGS, redo -LABEL, redo, ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, -reset EXPR, reset, return LIST, 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, 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, system -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/// +=item How can I tell whether a list or array contains a certain element? -=back +=item How do I compute the difference of two arrays? How do I compute the +intersection of two arrays? -=head2 perlvar - Perl predefined variables +=item How do I find the first array element for which a condition is true? -=item DESCRIPTION +=item How do I handle linked lists? -=over +=item How do I handle circular lists? -=item Predefined Names +=item How do I shuffle an array randomly? -$ARG, $_, $EIE, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE -EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR, -$INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, -$|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, -output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, -$LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, -format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%, -format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=, -format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE -EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, -format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, -$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, -$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, -$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, -$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, -$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $], -$DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $OSNAME, -$^O, $PERLDB, $^P, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, -$ARGV, @ARGV, @INC, %INC, $ENV{expr}, $SIG{expr} +=item How do I process/modify each element of an array? -=back +=item How do I select a random element from an array? -=head2 perlsub - Perl subroutines +=item How do I permute N elements of a list? -=item SYNOPSIS +=item How do I sort an array by (anything)? -=item DESCRIPTION +=item How do I manipulate arrays of bits? + +=item Why does defined() return true on empty arrays and hashes? + +=back + +=item Data: Hashes (Associative Arrays) =over -=item Private Variables via my() +=item How do I process an entire hash? -=item Temporary Values via local() +=item What happens if I add or remove keys from a hash while iterating over +it? -=item Passing Symbol Table Entries (typeglobs) +=item How do I look up a hash element by value? -=item Pass by Reference +=item How can I know how many entries are in a hash? -=item Prototypes +=item How do I sort a hash (optionally by value instead of key)? -=item Constant Functions +=item How can I always keep my hash sorted? -=item Overriding Builtin Functions +=item What's the difference between "delete" and "undef" with hashes? -=item Autoloading +=item Why don't my tied hashes make the defined/exists distinction? -=back +=item How do I reset an each() operation part-way through? -=item SEE ALSO +=item How can I get the unique keys from two hashes? -=head2 perlmod - Perl modules (packages) +=item How can I store a multidimensional array in a DBM file? -=item DESCRIPTION +=item How can I make my hash remember the order I put elements into it? + +=item Why does passing a subroutine an undefined element in a hash create +it? + +=item How can I make the Perl equivalent of a C structure/C++ class/hash or +array of hashes or arrays? + +=item How can I use a reference as a hash key? + +=back + +=item Data: Misc =over -=item Packages +=item How do I handle binary data correctly? -=item Symbol Tables +=item How do I determine whether a scalar is a number/whole/integer/float? -=item Package Constructors and Destructors +=item How do I keep persistent data across program calls? -=item Perl Classes +=item How do I print out or copy a recursive data structure? -=item Perl Modules +=item How do I define methods for every class/object? + +=item How do I verify a credit card checksum? =back -=item NOTE +=item AUTHOR AND COPYRIGHT -=item THE PERL MODULE LIBRARY +=head2 perlfaq5 - Files and Formats ($Revision: 1.22 $, $Date: 1997/04/24 +22:44:02 $) + +=item DESCRIPTION =over -=item Pragmatic Modules +=item How do I flush/unbuffer an output filehandle? Why must I do this? -blib, diagnostics, integer, less, lib, locale, ops, overload, sigtrap, -strict, subs, vmsish, vars +=item How do I change one line in a file/delete a line in a file/insert a +line in the middle of a file/append to the beginning of a file? -=item Standard Modules +=item How do I count the number of lines in a file? -AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime, -CPAN::Nox, Carp, Class::Template, 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, 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, NDBM_File, Net::Ping, -Net::hostent, Net::netent, Net::protoent, Net::servent, Opcode, Pod::Text, -POSIX, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, -Socket, Symbol, Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, -Term::ReadLine, Test::Harness, Text::Abbrev, Text::ParseWords, -Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash, Tie::RefHash, -Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, -Time::tm, UNIVERSAL, User::grent, User::pwent +=item How do I make a temporary file name? -=item Extension Modules +=item How can I manipulate fixed-record-length files? -=back +=item How can I make a filehandle local to a subroutine? How do I pass +filehandles between subroutines? How do I make an array of filehandles? -=item CPAN +=item How can I use a filehandle indirectly? -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 +=item How can I set up a footer format to be used with write()? -=item Modules: Creation, Use, and Abuse +=item How can I write() into a string? -=over +=item How can I output my numbers with commas added? -=item Guidelines for Module Creation +=item How can I translate tildes (~) in a filename? -Do similar modules already exist in some form?, Try to design the new -module to be easy to extend and reuse, Some simple style guidelines, Select -what to export, Select a name for the module, Have you got it right?, -README and other Additional Files, A description of the -module/package/extension etc, A copyright notice - see below, Prerequisites -- what else you may need to have, How to build it - possible changes to -Makefile.PL etc, How to install it, Recent changes in this release, -especially incompatibilities, Changes / enhancements you plan to make in -the future, Adding a Copyright Notice, Give the module a -version/issue/release number, How to release and distribute a module, Take -care when changing a released module - -=item Guidelines for Converting Perl 4 Library Scripts into Modules +=item How come when I open a file read-write it wipes it out? -There is no requirement to convert anything, Consider the implications, -Make the most of the opportunity, The pl2pm utility will get you started, -Adds the standard Module prologue lines, Converts package specifiers from ' -to ::, Converts die(...) to croak(...), Several other minor changes +=item Why do I sometimes get an "Argument list too long" when I use <*>? -=item Guidelines for Reusing Application Code +=item Is there a leak/bug in glob()? -Complete applications rarely belong in the Perl Module Library, Many -applications contain some perl code which 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 +=item How can I open a file with a leading "E" or trailing blanks? -=back +=item How can I reliably rename a file? -=head2 perlform - Perl formats +=item How can I lock a file? -=item DESCRIPTION +=item What can't I just open(FH, ">file.lock")? -=over +=item I still don't get locking. I just want to increment the number in +the file. How can I do this? -=item Format Variables +=item How do I randomly update a binary file? -=back +=item How do I get a file's timestamp in perl? -=item NOTES +=item How do I set a file's timestamp in perl? -=over +=item How do I print to more than one file at once? -=item Footers +=item How can I read in a file by paragraphs? -=item Accessing Formatting Internals +=item How can I read a single character from a file? From the keyboard? -=back +=item How can I tell if there's a character waiting on a filehandle? -=item WARNINGS +=item How do I do a C in perl? -=head2 perllocale - Perl locale handling (internationalization and -localization) +=item How do I dup() a filehandle in Perl? -=item DESCRIPTION +=item How do I close a file descriptor by number? -=item PREPARING TO USE LOCALES +=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't +`C:\temp\foo.exe` work? -=item USING LOCALES +=item Why doesn't glob("*.*") get all the files? -=over +=item Why does Perl let me delete read-only files? Why does C<-i> clobber +protected files? Isn't this a bug in Perl? -=item The use locale pragma +=item How do I select a random line from a file? -=item The setlocale function +=back -=item The localeconv function +=item AUTHOR AND COPYRIGHT -=back +=head2 perlfaq6 - Regexps ($Revision: 1.17 $, $Date: 1997/04/24 22:44:10 $) -=item LOCALE CATEGORIES +=item DESCRIPTION =over -=item Category LC_COLLATE: Collation - -=item Category LC_CTYPE: Character Types +=item How can I hope to use regular expressions without creating illegible +and unmaintainable code? -=item Category LC_NUMERIC: Numeric Formatting +Comments Outside the Regexp, Comments Inside the Regexp, Different +Delimiters -=item Category LC_MONETARY: Formatting of monetary amounts +=item I'm having trouble matching over more than one line. What's wrong? -=item LC_TIME +=item How can I pull out lines between two patterns that are themselves on +different lines? -=item Other categories +=item I put a regular expression into $/ but it didn't work. What's wrong? -=back +=item How do I substitute case insensitively on the LHS, but preserving +case on the RHS? -=item SECURITY +=item How can I make C<\w> match national character sets? -B (C, C, C, C and C):, -B (with C<\l>, C<\L>, C<\u> or <\U>), -B (C):, B (C):, -B (sprintf()):, B (printf() and write()):, B (lc(), -lcfirst(), uc(), ucfirst()):, B -(localeconv(), strcoll(),strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(), -ispunct(), isspace(), isupper(), -isxdigit()): +=item How can I match a locale-smart version of C? -=item ENVIRONMENT +=item How can I quote a variable to use in a regexp? -PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, -LC_TIME, LANG +=item What is C really for? -=item NOTES +=item How do I use a regular expression to strip C style comments from a +file? -=over +=item Can I use Perl regular expressions to match balanced text? -=item Backward compatibility +=item What does it mean that regexps are greedy? How can I get around it? -=item I18N:Collate obsolete +=item How do I process each word on each line? -=item Sort speed and memory use impacts +=item How can I print out a word-frequency or line-frequency summary? -=item write() and LC_NUMERIC +=item How can I do approximate matching? -=item Freely available locale definitions +=item How do I efficiently match many regular expressions at once? -=item I18n and l10n +=item Why don't word-boundary searches with C<\b> work for me? -=item An imperfect standard +=item Why does using $&, $`, or $' slow my program down? -=back +=item What good is C<\G> in a regular expression? -=item BUGS +=item Are Perl regexps DFAs or NFAs? Are they POSIX compliant? -=over +=item What's wrong with using grep or map in a void context? -=item Broken systems +=item How can I match strings with multibyte characters? =back -=item SEE ALSO - -=item HISTORY +=item AUTHOR AND COPYRIGHT -=head2 perlref - Perl references and nested data structures +=head2 perlfaq7 - Perl Language Issues ($Revision: 1.18 $, $Date: +1997/04/24 22:44:14 $) =item DESCRIPTION =over -=item Symbolic references +=item Can I get a BNF/yacc/RE for the Perl language? -=item Not-so-symbolic references +=item What are all these $@%* punctuation signs, and how do I know when to +use them? -=back +=item Do I always/never have to quote my strings or use semicolons and +commas? -=item WARNING +=item How do I skip some return values? -=item SEE ALSO +=item How do I temporarily block warnings? -=head2 perldsc - Perl Data Structures Cookbook +=item What's an extension? -=item DESCRIPTION +=item Why do Perl operators have different precedence than C operators? -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs +=item How do I declare/create a structure? -=item REFERENCES +=item How do I create a module? -=item COMMON MISTAKES +=item How do I create a class? -=item CAVEAT ON PRECEDENCE +=item How can I tell if a variable is tainted? -=item WHY YOU SHOULD ALWAYS C +=item What's a closure? -=item DEBUGGING +=item What is variable suicide and how can I prevent it? -=item CODE EXAMPLES +=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, +Regexp}? -=item LISTS OF LISTS +Passing Variables and Functions, Passing Filehandles, Passing Regexps, +Passing Methods -=over +=item How do I create a static variable? -=item Declaration of a LIST OF LISTS +=item What's the difference between dynamic and lexical (static) scoping? +Between local() and my()? -=item Generation of a LIST OF LISTS +=item How can I access a dynamic variable while a similarly named lexical +is in scope? -=item Access and Printing of a LIST OF LISTS +=item What's the difference between deep and shallow binding? -=back +=item Why doesn't "local($foo) = ;" work right? -=item HASHES OF LISTS +=item How do I redefine a builtin function, operator, or method? -=over +=item What's the difference between calling a function as &foo and foo()? -=item Declaration of a HASH OF LISTS +=item How do I create a switch or case statement? -=item Generation of a HASH OF LISTS +=item How can I catch accesses to undefined variables/functions/methods? -=item Access and Printing of a HASH OF LISTS +=item Why can't a method included in this same file be found? -=back +=item How can I find out my current package? -=item LISTS OF HASHES +=item How can I comment out a large block of perl code? -=over +=back -=item Declaration of a LIST OF HASHES +=item AUTHOR AND COPYRIGHT -=item Generation of a LIST OF HASHES +=head2 perlfaq8 - System Interaction ($Revision: 1.21 $, $Date: 1997/04/24 +22:44:19 $) -=item Access and Printing of a LIST OF HASHES +=item DESCRIPTION -=back +=over -=item HASHES OF HASHES +=item How do I find out which operating system I'm running under? -=over +=item How come exec() doesn't return? -=item Declaration of a HASH OF HASHES +=item How do I do fancy stuff with the keyboard/screen/mouse? -=item Generation of a HASH OF HASHES +Keyboard, Screen, Mouse -=item Access and Printing of a HASH OF HASHES +=item How do I ask the user for a password? -=back +=item How do I read and write the serial port? -=item MORE ELABORATE RECORDS +lockfiles, open mode, end of line, flushing output, non-blocking input -=over +=item How do I decode encrypted password files? -=item Declaration of MORE ELABORATE RECORDS +=item How do I start a process in the background? -=item Declaration of a HASH OF COMPLEX RECORDS +STDIN, STDOUT and STDERR are shared, Signals, Zombies -=item Generation of a HASH OF COMPLEX RECORDS +=item How do I trap control characters/signals? -=back +=item How do I modify the shadow password file on a Unix system? -=item Database Ties +=item How do I set the time and date? -=item SEE ALSO +=item How can I sleep() or alarm() for under a second? -=item AUTHOR +=item How can I measure time under a second? -=head2 perllol, perlLoL - Manipulating Lists of Lists in Perl +=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) -=item DESCRIPTION +=item Why doesn't my sockets program work under System V (Solaris)? What +does the error message "Protocol not supported" mean? -=item Declaration and Access of Lists of Lists +=item How can I call my system's unique C functions from Perl? -=item Growing Your Own +=item Where do I get the include files to do ioctl() or syscall()? -=item Access and Printing +=item Why do setuid perl scripts complain about kernel problems? -=item Slices +=item How can I open a pipe both to and from a command? -=item SEE ALSO +=item Why can't I get the output of a command with system()? -=item AUTHOR +=item How can I capture STDERR from an external command? -=head2 perltoot - Tom's object-oriented tutorial for perl +=item Why doesn't open() return an error when a pipe open fails? -=item DESCRIPTION +=item What's wrong with using backticks in a void context? -=item Creating a Class +=item How can I call backticks without shell processing? -=over +=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, +^Z on MS-DOS)? -=item Object Representation +=item How can I convert my shell script to perl? -=item Class Interface +=item Can I use perl to run a telnet or ftp session? -=item Constructors and Instance Methods +=item How can I write expect in Perl? -=item Planning for the Future: Better Constructors +=item Is there a way to hide perl's command line from programs such as +"ps"? -=item Destructors +=item I {changed directory, modified my environment} in a perl script. How +come the change disappeared when I exited the script? How do I get my +changes to be visible? -=item Other Object Methods +Unix, VMS -=back +=item How do I close a process's filehandle without waiting for it to +complete? -=item Class Data +=item How do I fork a daemon process? -=over +=item How do I make my program run with sh and csh? -=item Accessing Class Data +=item How do I find out if I'm running interactively or not? -=item Debugging Methods +=item How do I timeout a slow event? -=item Class Destructors +=item How do I set CPU limits? -=item Documenting the Interface +=item How do I avoid zombies on a Unix system? -=back +=item How do I use an SQL database? -=item Aggregation +=item How do I make a system() exit on control-C? -=item Inheritance +=item How do I open a file without blocking? -=over +=item How do I install a CPAN module? -=item Overridden Methods +=item How do I keep my own module/library directory? -=item Multiple Inheritance +=item How do I add the directory my program lives in to the module/library +search path? -=item UNIVERSAL: The Root of All Objects +=item How do I add a directory to my include path at runtime? =back -=item Alternate Object Representations +=item How do I get one key from the terminal at a time, under POSIX? -=over +=item AUTHOR AND COPYRIGHT -=item Arrays as Objects +=head2 perlfaq9 - Networking ($Revision: 1.17 $, $Date: 1997/04/24 22:44:29 +$) -=item Closures as Objects +=item DESCRIPTION -=back +=over -=item AUTOLOAD: Proxy Methods +=item My CGI script runs from the command line but not the browser. Can +you help me fix it? -=over +=item How do I remove HTML from a string? -=item Autoloaded Data Methods +=item How do I extract URLs? -=item Inherited Autoloaded Data Methods +=item How do I download a file from the user's machine? How do I open a +file on another machine? -=back +=item How do I make a pop-up menu in HTML? -=item Metaclassical Tools +=item How do I fetch an HTML file? -=over +=item how do I decode or create those %-encodings on the web? -=item Class::Template +=item How do I redirect to another page? -=item Data Members as Variables +=item How do I put a password on my web pages? -=item NOTES +=item How do I edit my .htpasswd and .htgroup files with Perl? -=item Object Terminology +=item How do I make sure users can't enter values into a form that cause my +CGI script to do bad things? -=back +=item How do I parse a mail header? -=item SEE ALSO +=item How do I decode a CGI form? -=item COPYRIGHT +=item How do I check a valid mail address? -=over +=item How do I decode a MIME/BASE64 string? -=item Acknowledgments +=item How do I return the user's mail address? -=back +=item How do I send/read mail? -=head2 perlobj - Perl objects +=item How do I find out my hostname/domainname/IP address? -=item DESCRIPTION +=item How do I fetch a news article or the active newsgroups? -=over +=item How do I fetch/put an FTP file? -=item An Object is Simply a Reference +=item How can I do RPC in Perl? -=item A Class is Simply a Package +=back -=item A Method is Simply a Subroutine +=item AUTHOR AND COPYRIGHT -=item Method Invocation +=head2 perldelta - what's new for perl5.005 -=item Default UNIVERSAL methods +=item DESCRIPTION -isa(CLASS), can(METHOD), VERSION( [NEED] ) +=item Incompatible Changes -=item Destructors +=item Core Changes -=item WARNING +=item Modules -=item Summary +=over -=item Two-Phased Garbage Collection +=item Required Updates =back +=item Utility Changes + +=item C Language API Changes + +=item Documentation Changes + +=item BUGS + =item SEE ALSO -=head2 perltie - how to hide an object class in a simple variable +=item HISTORY -=item SYNOPSIS +=head2 perldata - Perl data types =item DESCRIPTION =over -=item Tying Scalars +=item Variable names -TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this +=item Context -=item Tying Arrays +=item Scalar values -TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, -DESTROY this +=item Scalar value constructors -=item Tying Hashes +=item List value constructors -USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE -this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY -this, NEXTKEY this, lastkey, DESTROY this +=item Typeglobs and Filehandles -=item Tying FileHandles +=back -TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this +=head2 perlsyn - Perl syntax -=item The C Gotcha +=item DESCRIPTION -=back +=over -=item SEE ALSO +=item Declarations -=item BUGS +=item Simple statements -=item AUTHOR +=item Compound statements -=head2 perlbot - Bag'o Object Tricks (the BOT) +=item Loop Control -=item DESCRIPTION +=item For Loops -=item OO SCALING TIPS +=item Foreach Loops -=item INSTANCE VARIABLES +=item Basic BLOCKs and Switch Statements + +=item Goto + +=item PODs: Embedded Documentation + +=item Plain Old Comments (Not!) + +=back + +=head2 perlop - Perl operators and precedence + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Terms and List Operators (Leftward) + +=item The Arrow Operator + +=item Auto-increment and Auto-decrement + +=item Exponentiation + +=item Symbolic Unary Operators + +=item Binding Operators + +=item Multiplicative Operators + +=item Additive Operators + +=item Shift Operators + +=item Named Unary Operators + +=item Relational Operators + +=item Equality Operators + +=item Bitwise And + +=item Bitwise Or and Exclusive Or + +=item C-style Logical And + +=item C-style Logical Or + +=item Range Operators + +=item Conditional Operator + +=item Assignment Operators + +=item Comma Operator + +=item List Operators (Rightward) + +=item Logical Not + +=item Logical And + +=item Logical or and Exclusive Or + +=item C Operators Missing From Perl + +unary &, unary *, (TYPE) + +=item Quote and Quote-like Operators + +=item Regexp Quote-Like Operators + +?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, +qq/STRING/, "STRING", qx/STRING/, `STRING`, qw/STRING/, +s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, +y/SEARCHLIST/REPLACEMENTLIST/cds + +=item I/O Operators + +=item Constant Folding + +=item Bitwise String Operators + +=item Integer Arithmetic + +=item Floating-point Arithmetic + +=item Bigger Numbers + +=back + +=head2 perlre - Perl regular expressions + +=item DESCRIPTION + +i, m, s, x + +=over + +=item Regular Expressions + +C<(?#text)>, C<(?:pattern)>, C<(?=pattern)>, C<(?!pattern)>, +C<(?E=pattern)>, C<(?, C<(?{ code })>, C<(?Epattern)>, +C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>, +C<(?imsx)> + +=item Backtracking + +=item Version 8 Regular Expressions + +=item WARNING on \1 vs $1 + +=item SEE ALSO + +=back + +=head2 perlrun - how to execute the Perl interpreter + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item #! and quoting on non-Unix systems + +OS/2, MS-DOS, Win95/NT, Macintosh + +=item Location of Perl + +=item Switches + +B<-0>[I], B<-a>, B<-c>, B<-d>, B<-d:>I, B<-D>I, +B<-D>I, B<-e> I, B<-F>I, B<-h>, +B<-i>[I], B<-I>I, B<-l>[I], +B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, +B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, +B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-x> I + +=back + +=item ENVIRONMENT + +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL +(specific to WIN32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL + +=head2 perlfunc - Perl builtin functions + +=item DESCRIPTION + +=over + +=item Perl Functions by Category + +Functions for SCALARs or strings, Regular expressions and pattern matching, +Numeric functions, Functions for real @ARRAYs, Functions for list data, +Functions for real %HASHes, Input and output functions, Functions for fixed +length data or records, Functions for filehandles, files, or directories, +Keywords related to the control flow of your perl program, Keywords related +to scoping, Miscellaneous functions, Functions for processes and process +groups, Keywords related to perl modules, Keywords related to classes and +object-orientedness, Low-level socket functions, System V interprocess +communication functions, Fetching user and group info, Fetching network +info, Time-related functions, Functions new in perl5, Functions obsoleted +in perl5 + +=item Alphabetical Listing of Perl Functions + +I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept +NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, +binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller, +chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE, +chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot, +close FILEHANDLE, 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/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR, +rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, +readdir DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR, +recv SOCKET,SCALAR,LEN,FLAGS, redo LABEL, redo, ref EXPR, ref, rename +OLDNAME,NEWNAME, require EXPR, require, reset EXPR, reset, return EXPR, +return, reverse LIST, rewinddir DIRHANDLE, rindex STR,SUBSTR,POSITION, +rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar EXPR, seek +FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select FILEHANDLE, +select, select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget +KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send SOCKET,MSG,FLAGS,TO, send +SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority WHICH,WHO,PRIORITY, +setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, shift, shmctl +ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite +ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep EXPR, sleep, +socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair +SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, +sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, +splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, +split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, +srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK, +sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr +EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, +sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, +sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, +sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, +syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite +FILEHANDLE,SCALAR,LENGTH, tell FILEHANDLE, tell, telldir DIRHANDLE, tie +VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate +FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, +ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack +TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module LIST, use +Module, use Module VERSION LIST, use VERSION, utime LIST, values HASH, vec +EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn LIST, write +FILEHANDLE, write EXPR, write, y/// + +=back + +=head2 perlvar - Perl predefined variables + +=item DESCRIPTION + +=over + +=item Predefined Names + +$ARG, $_, $EIE, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', +$LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE +EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR, +$INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, +$|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, +output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, +$LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, +format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%, +format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=, +format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE +EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, +format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, +$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, +$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, +$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, +$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, +$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $], +$DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $^M, +$OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, $^S, +$BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, +@_, %INC, %ENV $ENV{expr}, %SIG $SIG{expr} + +=back + +=head2 perlsub - Perl subroutines + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Private Variables via my() + +=item Peristent Private Variables + +=item Temporary Values via local() + +=item Passing Symbol Table Entries (typeglobs) + +=item When to Still Use local() + +1. You need to give a global variable a temporary value, especially $_, 2. +You need to create a local file or directory handle or a local function, 3. +You want to temporarily change just one element of an array or hash + +=item Pass by Reference + +=item Prototypes + +=item Constant Functions + +=item Overriding Builtin Functions + +=item Autoloading + +=back + +=item SEE ALSO + +=head2 perlmod - Perl modules (packages and symbol tables) + +=item DESCRIPTION + +=over + +=item Packages + +=item Symbol Tables + +=item Package Constructors and Destructors + +=item Perl Classes + +=item Perl Modules + +=back + +=item SEE ALSO + +=head2 perlmodlib - constructing new Perl modules and finding existing ones + +=item DESCRIPTION + +=item THE PERL MODULE LIBRARY + +=over + +=item Pragmatic Modules + +use autouse MODULE => qw(sub1 sub2 sub3), blib, diagnostics, integer, less, +lib, locale, ops, overload, sigtrap, strict, subs, vmsish, vars + +=item Standard Modules + +AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime, +CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB_File, Devel::SelfStubber, +DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed, +ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix, +ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest, +ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal, +Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy, +File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin, +GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File, +IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2, +IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig, +NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent, +Net::servent, Opcode, Pod::Text, POSIX, SDBM_File, Safe, Search::Dict, +SelectSaver, SelfLoader, Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog, +Term::Cap, Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev, +Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash, +Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, +Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent + +=item Extension Modules + +=back + +=item CPAN + +Language Extensions and Documentation Tools, Development Support, Operating +System Interfaces, Networking, Device Control (modems) and InterProcess +Communication, Data Types and Data Type Utilities, Database Interfaces, +User Interfaces, Interfaces to / Emulations of Other Programming Languages, +File Names, File Systems and File Locking (see also File Handles), String +Processing, Language Text Processing, Parsing, and Searching, Option, +Argument, Parameter, and Configuration File Processing, +Internationalization and Locale, Authentication, Security, and Encryption, +World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities, +Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing, +and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and +exceptions etc), File Handle and Input/Output Stream Utilities, +Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America, +South America + +=item Modules: Creation, Use, and Abuse + +=over + +=item Guidelines for Module Creation + +Do similar modules already exist in some form?, Try to design the new +module to be easy to extend and reuse, Some simple style guidelines, Select +what to export, Select a name for the module, Have you got it right?, +README and other Additional Files, A description of the +module/package/extension etc, A copyright notice - see below, Prerequisites +- what else you may need to have, How to build it - possible changes to +Makefile.PL etc, How to install it, Recent changes in this release, +especially incompatibilities, Changes / enhancements you plan to make in +the future, Adding a Copyright Notice, Give the module a +version/issue/release number, How to release and distribute a module, Take +care when changing a released module + +=item Guidelines for Converting Perl 4 Library Scripts into Modules + +There is no requirement to convert anything, Consider the implications, +Make the most of the opportunity, The pl2pm utility will get you started, +Adds the standard Module prologue lines, Converts package specifiers from ' +to ::, Converts die(...) to croak(...), Several other minor changes + +=item Guidelines for Reusing Application Code + +Complete applications rarely belong in the Perl Module Library, Many +applications contain some Perl code that could be reused, Break-out the +reusable code into one or more separate module files, Take the opportunity +to reconsider and redesign the interfaces, In some cases the 'application' +can then be reduced to a small + +=back + +=item NOTE + +=head2 perlform - Perl formats + +=item DESCRIPTION + +=over + +=item Format Variables + +=back + +=item NOTES + +=over + +=item Footers + +=item Accessing Formatting Internals + +=back + +=item WARNINGS + +=head2 perllocale - Perl locale handling (internationalization and +localization) + +=item DESCRIPTION + +=item PREPARING TO USE LOCALES + +=item USING LOCALES + +=over + +=item The use locale pragma + +=item The setlocale function + +=item Finding locales + +=item LOCALE PROBLEMS + +=item Temporarily fixing locale problems + +=item Permanently fixing locale problems + +=item Permanently fixing your locale configuration + +=item Permanently fixing system locale configuration + +=item The localeconv function + +=back + +=item LOCALE CATEGORIES + +=over + +=item Category LC_COLLATE: Collation + +=item Category LC_CTYPE: Character Types + +=item Category LC_NUMERIC: Numeric Formatting + +=item Category LC_MONETARY: Formatting of monetary amounts + +=item LC_TIME + +=item Other categories + +=back + +=item SECURITY + +B (C, C, C, C and C):, +B (with C<\l>, C<\L>, C<\u> or C<\U>), +B (C):, B (C):, +B (sprintf()):, B (printf() and write()):, B (lc(), +lcfirst(), uc(), ucfirst()):, B +(localeconv(), strcoll(),strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(), +ispunct(), isspace(), isupper(), +isxdigit()): + +=item ENVIRONMENT + +PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, +LC_TIME, LANG + +=item NOTES + +=over + +=item Backward compatibility + +=item I18N:Collate obsolete + +=item Sort speed and memory use impacts + +=item write() and LC_NUMERIC + +=item Freely available locale definitions + +=item I18n and l10n + +=item An imperfect standard + +=back + +=item BUGS + +=over + +=item Broken systems + +=back + +=item SEE ALSO + +=item HISTORY + +=head2 perlref - Perl references and nested data structures + +=item DESCRIPTION + +=over + +=item Making References + +=item Using References + +=item Symbolic references + +=item Not-so-symbolic references + +=item Function Templates + +=back + +=item WARNING + +=item SEE ALSO + +=head2 perldsc - Perl Data Structures Cookbook + +=item DESCRIPTION + +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs + +=item REFERENCES + +=item COMMON MISTAKES + +=item CAVEAT ON PRECEDENCE + +=item WHY YOU SHOULD ALWAYS C + +=item DEBUGGING + +=item CODE EXAMPLES + +=item LISTS OF LISTS + +=over + +=item Declaration of a LIST OF LISTS + +=item Generation of a LIST OF LISTS + +=item Access and Printing of a LIST OF LISTS + +=back + +=item HASHES OF LISTS + +=over + +=item Declaration of a HASH OF LISTS + +=item Generation of a HASH OF LISTS + +=item Access and Printing of a HASH OF LISTS + +=back + +=item LISTS OF HASHES + +=over + +=item Declaration of a LIST OF HASHES + +=item Generation of a LIST OF HASHES + +=item Access and Printing of a LIST OF HASHES + +=back + +=item HASHES OF HASHES + +=over + +=item Declaration of a HASH OF HASHES + +=item Generation of a HASH OF HASHES + +=item Access and Printing of a HASH OF HASHES + +=back + +=item MORE ELABORATE RECORDS + +=over + +=item Declaration of MORE ELABORATE RECORDS + +=item Declaration of a HASH OF COMPLEX RECORDS + +=item Generation of a HASH OF COMPLEX RECORDS + +=back + +=item Database Ties + +=item SEE ALSO + +=item AUTHOR + +=head2 perllol, perlLoL - Manipulating Lists of Lists in Perl + +=item DESCRIPTION + +=item Declaration and Access of Lists of Lists + +=item Growing Your Own + +=item Access and Printing + +=item Slices + +=item SEE ALSO + +=item AUTHOR + +=head2 perltoot - Tom's object-oriented tutorial for perl + +=item DESCRIPTION + +=item Creating a Class + +=over + +=item Object Representation + +=item Class Interface + +=item Constructors and Instance Methods + +=item Planning for the Future: Better Constructors + +=item Destructors + +=item Other Object Methods + +=back + +=item Class Data + +=over + +=item Accessing Class Data + +=item Debugging Methods + +=item Class Destructors + +=item Documenting the Interface + +=back + +=item Aggregation + +=item Inheritance + +=over + +=item Overridden Methods + +=item Multiple Inheritance + +=item UNIVERSAL: The Root of All Objects + +=back + +=item Alternate Object Representations + +=over + +=item Arrays as Objects + +=item Closures as Objects + +=back + +=item AUTOLOAD: Proxy Methods + +=over + +=item Autoloaded Data Methods + +=item Inherited Autoloaded Data Methods + +=back + +=item Metaclassical Tools + +=over + +=item Class::Struct + +=item Data Members as Variables + +=item NOTES + +=item Object Terminology + +=back + +=item SEE ALSO + +=item AUTHOR AND COPYRIGHT + +=item COPYRIGHT + +=over + +=item Acknowledgments + +=back + +=head2 perlobj - Perl objects + +=item DESCRIPTION + +=over + +=item An Object is Simply a Reference + +=item A Class is Simply a Package + +=item A Method is Simply a Subroutine + +=item Method Invocation + +=item Default UNIVERSAL methods + +isa(CLASS), can(METHOD), VERSION( [NEED] ) + +=item Destructors + +=item WARNING + +=item Summary + +=item Two-Phased Garbage Collection + +=back + +=item SEE ALSO + +=head2 perltie - how to hide an object class in a simple variable + +=item SYNOPSIS + +=item DESCRIPTION + +=over + +=item Tying Scalars + +TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this + +=item Tying Arrays + +TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, +DESTROY this + +=item Tying Hashes + +USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE +this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY +this, NEXTKEY this, lastkey, DESTROY this + +=item Tying FileHandles + +TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, +LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this + +=item The C Gotcha + +=back + +=item SEE ALSO + +=item BUGS + +=item AUTHOR + +=head2 perlbot - Bag'o Object Tricks (the BOT) + +=item DESCRIPTION + +=item OO SCALING TIPS + +=item INSTANCE VARIABLES =item SCALAR INSTANCE VARIABLES -=item INSTANCE VARIABLE INHERITANCE +=item INSTANCE VARIABLE INHERITANCE + +=item OBJECT RELATIONSHIPS + +=item OVERRIDING SUPERCLASS METHODS + +=item USING RELATIONSHIP WITH SDBM + +=item THINKING OF CODE REUSE + +=item CLASS CONTEXT AND THE OBJECT + +=item INHERITING A CONSTRUCTOR + +=item DELEGATION + +=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, +safe subprocesses, sockets, and semaphores) + +=item DESCRIPTION + +=item Signals + +=item Named Pipes + +=over + +=item WARNING + +=back + +=item Using open() for IPC + +=over + +=item Filehandles + +=item Background Processes + +=item Complete Dissociation of Child from Parent + +=item Safe Pipe Opens + +=item Bidirectional Communication with Another Process + +=item Bidirectional Communication with Yourself + +=back + +=item Sockets: Client/Server Communication + +=over + +=item Internet Line Terminators + +=item Internet TCP Clients and Servers + +=item Unix-Domain TCP Clients and Servers + +=back + +=item TCP Clients with IO::Socket + +=over + +=item A Simple Client + +C, C, C + +=item A Webget Client + +=item Interactive Client with IO::Socket + +=back + +=item TCP Servers with IO::Socket + +Proto, LocalPort, Listen, Reuse + +=item UDP: Message Passing + +=item SysV IPC + +=item NOTES + +=item BUGS + +=item AUTHOR + +=item SEE ALSO + +=head2 perldebug - Perl debugging + +=item DESCRIPTION + +=item The Perl Debugger + +=over + +=item Debugger Commands + +h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n +[expr], ECRE, c [line|sub], l, l min+incr, l min-max, l line, l +subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], +t, t expr, b [line] [condition], b subname [condition], b postpone subname +[condition], b load filename, b compile subname, d [line], D, a [line] +command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?].., +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, E [ command ], +EE command, E command, EE command, { [ command ], {{ +command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R, +|dbcmd, ||dbcmd, command, m expr, m package + +=item Debugger input/output + +Prompt, Multiline commands, Stack backtrace, Listing, Frame listing + +=item Debugging compile-time statements + +=item Debugger Customization + +=item Readline Support + +=item Editor Support for Debugging + +=item The Perl Profiler + +=item Debugger support in perl + +=item Debugger Internals + +=item Other resources + +=item BUGS + +=back + +=item Debugging Perl memory usage + +=over + +=item Using C<$ENV{PERL_DEBUG_MSTATS}> + +C, Free/Used, C, C, C, C, C + +=item Example of using B<-DL> switch + +C<717>, C<002>, C<054>, C<602>, C<702>, C<704> + +=item B<-DL> details + +C, C, C + +=item Limitations of B<-DL> statistic + +=back + +=head2 perldiag - various Perl diagnostics + +=item DESCRIPTION + +=head2 perlsec - Perl security + +=item DESCRIPTION + +=over + +=item Laundering and Detecting Tainted Data + +=item Switches On the "#!" Line + +=item Cleaning Up Your Path + +=item Security Bugs + +=item Protecting Your Programs + +=back + +=item SEE ALSO + +=head2 perltrap - Perl traps for the unwary + +=item DESCRIPTION + +=over + +=item Awk Traps + +=item C Traps + +=item Sed Traps + +=item Shell Traps + +=item Perl Traps + +=item Perl4 to Perl5 Traps + +Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical +Traps, General data type traps, Context Traps - scalar, list contexts, +Precedence Traps, General Regular Expression Traps using s///, etc, +Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps + +=item Discontinuance, Deprecation, and BugFix traps + +Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, +Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, +Discontinuance, Discontinuance, Deprecation, Discontinuance + +=item Parsing Traps + +Parsing, Parsing, Parsing + +=item Numerical Traps + +Numerical, Numerical, Numerical + +=item General data type traps + +(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), +(Constants), (Scalars), (Variable Suicide) + +=item Context Traps - scalar, list contexts + +(list context), (scalar context), (scalar context), (list, builtin) + +=item Precedence Traps + +Precedence, Precedence, Precedence, Precedence, Precedence, Precedence + +=item General Regular Expression Traps using s///, etc. + +Regular Expression, Regular Expression, Regular Expression, Regular +Expression, Regular Expression, Regular Expression, Regular Expression, +Regular Expression, Regular Expression + +=item Subroutine, Signal, Sorting Traps + +(Signals), (Sort Subroutine), warn() won't let you specify a filehandle + +=item OS Traps + +(SysV), (SysV) + +=item Interpolation Traps + +Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, +Interpolation, Interpolation, Interpolation, Interpolation + +=item DBM Traps + +DBM, DBM + +=item Unclassified Traps + +C/C trap using returned value, C on empty string with +LIMIT specified + +=back + +=head2 perlstyle - Perl style guide + +=item DESCRIPTION + +=head2 perlpod - plain old documentation + +=item DESCRIPTION + +=over + +=item Verbatim Paragraph + +=item Command Paragraph + +=item Ordinary Block of Text + +=item The Intent + +=item Embedding Pods in Perl Modules + +=item Common Pod Pitfalls + +=back + +=item SEE ALSO + +=item AUTHOR + +=head2 perlbook - Perl book information + +=item DESCRIPTION + +=head2 perlembed - how to embed perl in your C program + +=item DESCRIPTION + +=over + +=item PREAMBLE + +B, B, B, B, B + +=item ROADMAP + +=item Compiling your C program + +=item Adding a Perl interpreter to your C program + +=item Calling a Perl subroutine from your C program + +=item Evaluating a Perl statement from your C program + +=item Performing Perl pattern matches and substitutions from your C program -=item OBJECT RELATIONSHIPS +=item Fiddling with the Perl stack from your C program -=item OVERRIDING SUPERCLASS METHODS +=item Maintaining a persistent interpreter -=item USING RELATIONSHIP WITH SDBM +=item Maintaining multiple interpreter instances -=item THINKING OF CODE REUSE +=item Using Perl modules, which themselves use C libraries, from your C +program -=item CLASS CONTEXT AND THE OBJECT +=back -=item INHERITING A CONSTRUCTOR +=item Embedding Perl under Win32 -=item DELEGATION +=item MORAL -=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, -safe subprocesses, sockets, and semaphores) +=item AUTHOR -=item DESCRIPTION +=item COPYRIGHT -=item Signals +=head2 perlapio - perl's IO abstraction interface. -=item Named Pipes +=item SYNOPSIS -=item Using open() for IPC +=item DESCRIPTION + +B, B, B, B, +B, B, +B, B, +B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B =over -=item Safe Pipe Opens +=item Co-existence with stdio -=item Bidirectional Communication +B, B, +B, B, B, +B, B, B, +B, B, +B, B, B, +B, B =back -=item Sockets: Client/Server Communication +=head2 perlxs - XS language reference manual + +=item DESCRIPTION =over -=item Internet TCP Clients and Servers +=item Introduction -=item Unix-Domain TCP Clients and Servers +=item On The Road -=item UDP: Message Passing +=item The Anatomy of an XSUB + +=item The Argument Stack + +=item The RETVAL Variable + +=item The MODULE Keyword + +=item The PACKAGE Keyword + +=item The PREFIX Keyword + +=item The OUTPUT: Keyword + +=item The CODE: Keyword + +=item The INIT: Keyword + +=item The NO_INIT Keyword + +=item Initializing Function Parameters + +=item Default Parameter Values + +=item The PREINIT: Keyword + +=item The SCOPE: Keyword + +=item The INPUT: Keyword + +=item Variable-length Parameter Lists + +=item The C_ARGS: Keyword + +=item The PPCODE: Keyword + +=item Returning Undef And Empty Lists + +=item The REQUIRE: Keyword + +=item The CLEANUP: Keyword + +=item The BOOT: Keyword + +=item The VERSIONCHECK: Keyword + +=item The PROTOTYPES: Keyword + +=item The PROTOTYPE: Keyword + +=item The ALIAS: Keyword + +=item The INTERFACE: Keyword + +=item The INTERFACE_MACRO: Keyword + +=item The INCLUDE: Keyword + +=item The CASE: Keyword + +=item The & Unary Operator + +=item Inserting Comments and C Preprocessor Directives + +=item Using XS With C++ + +=item Interface Strategy + +=item Perl Objects And C Structures + +=item The Typemap =back -=item SysV IPC +=item EXAMPLES + +=item XS VERSION + +=item AUTHOR + +=head2 perlxstut, perlXStut - Tutorial for XSUBs + +=item DESCRIPTION + +=over + +=item VERSION CAVEAT + +=item DYNAMIC VERSUS STATIC + +=item EXAMPLE 1 + +=item EXAMPLE 2 + +=item WHAT HAS GONE ON? + +=item WRITING GOOD TEST SCRIPTS + +=item EXAMPLE 3 + +=item WHAT'S NEW HERE? + +=item INPUT AND OUTPUT PARAMETERS + +=item THE XSUBPP COMPILER + +=item THE TYPEMAP FILE =item WARNING -=item NOTES +=item EXAMPLE 4 -=item BUGS +=item WHAT HAS HAPPENED HERE? -=item AUTHOR +=item SPECIFYING ARGUMENTS TO XSUBPP + +=item THE ARGUMENT STACK + +=item EXTENDING YOUR EXTENSION + +=item DOCUMENTING YOUR EXTENSION + +=item INSTALLING YOUR EXTENSION =item SEE ALSO -=head2 perldebug - Perl debugging +=item Author + +=item Last Changed + +=back + +=head2 perlguts - Perl's Internal Functions =item DESCRIPTION -=item The Perl Debugger +=item Variables =over -=item Debugger Commands +=item Datatypes -h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n -[expr], ECRE, c [line|sub], l, l min+incr, l min-max, l line, l -subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], -t, t expr, b [line] [condition], b subname [condition], b postpone subname -[condition], b load filename, b compile subname, d [line], D, a [line] -command, A, O [opt[=val]] [opt"val"] [opt?].., C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, E [ command ], EE command, E command, -EE command, { [ command ], {{ command, ! number, ! -number, ! -pattern, !! cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, = [alias value], -command, m expr, m package +=item What is an "IV"? -=item Debugger input/output +=item Working with SVs -Prompt, Multi-line commands, Stack backtrace, Listing, Frame listing +=item What's Really Stored in an SV? -=item Debugging compile-time statements +=item Working with AVs -=item Debugger Customization +=item Working with HVs -=item Readline Support +=item Hash API Extensions -=item Editor Support for Debugging +=item References -=item The Perl Profiler +=item Blessed References and Class Objects -=item Debugger support in perl +=item Creating New Variables -=item Debugger Internals +=item Reference Counts and Mortality -=item Other resources +=item Stashes and Globs -=back +=item Double-Typed SVs -=item BUGS +=item Magic Variables -=head2 perldiag - various Perl diagnostics +=item Assigning Magic -=item DESCRIPTION +=item Magic Virtual Tables -=head2 perlsec - Perl security +=item Finding Magic -=item DESCRIPTION +=item Understanding the Magic of Tied Hashes and Arrays + +=item Localizing changes + +C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, +C, C, +C, C, C + +=back + +=item Subroutines =over -=item Laundering and Detecting Tainted Data +=item XSUBs and the Argument Stack -=item Switches On the "#!" Line +=item Calling Perl Routines from within C Programs -=item Cleaning Up Your Path +=item Memory Allocation -=item Security Bugs +=item PerlIO -=back +=item Putting a C value on Perl stack -=head2 perltrap - Perl traps for the unwary +=item Scratchpads -=item DESCRIPTION +=item Scratchpads and recursion + +=back + +=item Compiled code =over -=item Awk Traps +=item Code tree + +=item Examining the tree + +=item Compile pass 1: check routines + +=item Compile pass 1a: constant folding + +=item Compile pass 2: context propagation + +=item Compile pass 3: peephole optimization + +=back + +=item API LISTING + +av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push, +av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH, +DBsingle, DBsub, DBtrace, dMARK, dORIGMARK, 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, 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, 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, +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, sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, +XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, +XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, +XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, +Zero + +=item AUTHORS -=item C Traps +=head2 perlcall - Perl calling conventions from C -=item Sed Traps +=item DESCRIPTION -=item Shell Traps +An Error Handler, An Event Driven Program -=item Perl Traps +=item THE PERL_CALL FUNCTIONS -=item Perl4 to Perl5 Traps +B, B, B, B -Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical -Traps, General data type traps, Context Traps - scalar, list contexts, -Precedence Traps, General Regular Expression Traps using s///, etc, -Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps +=item FLAG VALUES -=item Discontinuance, Deprecation, and BugFix traps +=over -Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, -Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, -Discontinuance, Deprecation, Discontinuance +=item G_VOID -=item Parsing Traps +=item G_SCALAR -Parsing, Parsing, Parsing +=item G_ARRAY -=item Numerical Traps +=item G_DISCARD -Numerical, Numerical, Numerical +=item G_NOARGS -=item General data type traps +=item G_EVAL -(Arrays), (Arrays), (Hashes), (Globs), (Scalar String), (Constants), -(Scalars), (Variable Suicide) +=item G_KEEPERR -=item Context Traps - scalar, list contexts +=item Determining the Context -(list context), (scalar context), (scalar context), (list, builtin) +=back -=item Precedence Traps +=item KNOWN PROBLEMS -Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, -Precedence +=item EXAMPLES -=item General Regular Expression Traps using s///, etc. +=over -Regular Expression, Regular Expression, Regular Expression, Regular -Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +=item No Parameters, Nothing returned -=item Subroutine, Signal, Sorting Traps +=item Passing Parameters -Subroutine calls provide lvalue context to arguments, (Signals), (Sort -Subroutine), warn() won't let you specify a filehandle +=item Returning a Scalar -=item OS Traps +=item Returning a list of values -(SysV), (SysV) +=item Returning a list in a scalar context -=item Interpolation Traps +=item Returning Data from Perl via the parameter list -Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, -Interpolation, Interpolation, Interpolation, Interpolation +=item Using G_EVAL -=item DBM Traps +=item Using G_KEEPERR -DBM, DBM +=item Using perl_call_sv -=item Unclassified Traps +=item Using perl_call_argv -Unclassified +=item Using perl_call_method -=back +=item Using GIMME_V -=head2 perlstyle - Perl style guide +=item Using Perl to dispose of temporaries -=item DESCRIPTION +=item Strategies for storing Callback Context Information -=head2 perlpod - plain old documentation +1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of +callbacks - hard wired limit, 3. Use a parameter to map to the Perl +callback -=item DESCRIPTION +=item Alternate Stack Manipulation -=item Embedding Pods in Perl Modules +=item Creating and calling an anonymous subroutine in C -=item Common Pod Pitfalls +=back =item SEE ALSO =item AUTHOR -=head2 perlbook - Perl book information - -=item DESCRIPTION +=item DATE -=head2 perlembed - how to embed perl in your C program +=head2 perlhist - the Perl history records =item DESCRIPTION -=over - -=item PREAMBLE - -B, B, B, B, B - -=item ROADMAP - -=item Compiling your C program +=item INTRODUCTION -=item Adding a Perl interpreter to your C program +=item THE KEEPERS OF THE PUMPKIN -=item Calling a Perl subroutine from your C program +=over -=item Evaluating a Perl statement from your C program +=item PUMPKIN? -=item Performing Perl pattern matches and substitutions from your C program +=back -=item Fiddling with the Perl stack from your C program +=item THE RECORDS -=item Maintaining a persistent interpreter +=over -=item Maintaining multiple interpreter instances +=item SELECTED RELEASE SIZES -=item Using Perl modules, which themselves use C libraries, from your C -program +=item SELECTED PATCH SIZES =back -=item MORAL - -=item AUTHOR +=item THE KEEPERS OF THE RECORDS -=item COPYRIGHT +=head1 PRAGMA DOCUMENTATION -=head2 perlapio - perl's IO abstraction interface. +=head2 attrs - set/get attributes of a subroutine =item SYNOPSIS =item DESCRIPTION -B, B, B, B, -B, B, -B, B, -B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B - -=over - -=item Co-existence with stdio - -B, B, -B, B, B, -B, B, B, -B, B, -B, B, B, -B, B +method, locked -=back +=head2 autouse - postpone load of modules until a function is used -=head2 perlxs - XS language reference manual +=item SYNOPSIS =item DESCRIPTION -=over +=item WARNING -=item Introduction +=item AUTHOR -=item On The Road +=item SEE ALSO -=item The Anatomy of an XSUB +=head2 base - Establish IS-A relationship with base class at compile time -=item The Argument Stack +=item SYNOPSIS -=item The RETVAL Variable +=item DESCRIPTION -=item The MODULE Keyword +=item BUGS -=item The PACKAGE Keyword +=head2 blib - Use MakeMaker's uninstalled version of a package -=item The PREFIX Keyword +=item SYNOPSIS -=item The OUTPUT: Keyword +=item DESCRIPTION -=item The CODE: Keyword +=item BUGS -=item The INIT: Keyword +=item AUTHOR -=item The NO_INIT Keyword +=head2 constant - Perl pragma to declare constants -=item Initializing Function Parameters +=item SYNOPSIS -=item Default Parameter Values +=item DESCRIPTION -=item The PREINIT: Keyword +=item NOTES -=item The SCOPE: Keyword +=item TECHNICAL NOTE -=item The INPUT: Keyword +=item BUGS -=item Variable-length Parameter Lists +=item AUTHOR -=item The PPCODE: Keyword +=item COPYRIGHT -=item Returning Undef And Empty Lists +=head2 diagnostics - Perl compiler pragma to force verbose warning +diagnostics -=item The REQUIRE: Keyword +=item SYNOPSIS -=item The CLEANUP: Keyword +=item DESCRIPTION -=item The BOOT: Keyword +=over -=item The VERSIONCHECK: Keyword +=item The C Pragma -=item The PROTOTYPES: Keyword +=item The I Program -=item The PROTOTYPE: Keyword +=back -=item The ALIAS: Keyword +=item EXAMPLES -=item The INCLUDE: Keyword +=item INTERNALS -=item The CASE: Keyword +=item BUGS -=item The & Unary Operator +=item AUTHOR -=item Inserting Comments and C Preprocessor Directives +=head2 fields - compile-time class fields -=item Using XS With C++ +=item SYNOPSIS -=item Interface Strategy +=item DESCRIPTION -=item Perl Objects And C Structures +=head2 integer - Perl pragma to compute arithmetic in integer instead of +double -=item The Typemap +=item SYNOPSIS -=back +=item DESCRIPTION -=item EXAMPLES +=head2 less - perl pragma to request less of something from the compiler -=item XS VERSION +=item SYNOPSIS -=item AUTHOR +=item DESCRIPTION -=head2 perlxstut, perlXStut - Tutorial for XSUBs +=head2 lib - manipulate @INC at compile time + +=item SYNOPSIS =item DESCRIPTION =over -=item VERSION CAVEAT +=item ADDING DIRECTORIES TO @INC -=item DYNAMIC VERSUS STATIC +=item DELETING DIRECTORIES FROM @INC -=item EXAMPLE 1 +=item RESTORING ORIGINAL @INC -=item EXAMPLE 2 +=back -=item WHAT HAS GONE ON? +=item SEE ALSO -=item WRITING GOOD TEST SCRIPTS +=item AUTHOR -=item EXAMPLE 3 +=head2 locale - Perl pragma to use and avoid POSIX locales for built-in +operations -=item WHAT'S NEW HERE? +=item SYNOPSIS -=item INPUT AND OUTPUT PARAMETERS +=item DESCRIPTION -=item THE XSUBPP COMPILER +=head2 overload - Package for overloading perl operations -=item THE TYPEMAP FILE +=item SYNOPSIS -=item WARNING +=item CAVEAT SCRIPTOR -=item EXAMPLE 4 +=item DESCRIPTION -=item WHAT HAS HAPPENED HERE? +=over -=item SPECIFYING ARGUMENTS TO XSUBPP +=item Declaration of overloaded functions -=item THE ARGUMENT STACK +=item Calling Conventions for Binary Operations -=item EXTENDING YOUR EXTENSION +FALSE, TRUE, C -=item DOCUMENTING YOUR EXTENSION +=item Calling Conventions for Unary Operations -=item INSTALLING YOUR EXTENSION +=item Overloadable Operations -=item SEE ALSO +I, I, I, +I, I, I, I -=item Author +=item Inheritance and overloading -=item Last Changed +Strings as values of C directive, Overloading of an operation +is inherited by derived classes =back -=head2 perlguts - Perl's Internal Functions +=item SPECIAL SYMBOLS FOR C -=item DESCRIPTION +=over -=item Variables +=item Last Resort -=over +=item Fallback -=item Datatypes +C, TRUE, defined, but FALSE -=item What is an "IV"? +=item Copy Constructor -=item Working with SV's +B -=item What's Really Stored in an SV? +=back -=item Working with AV's +=item MAGIC AUTOGENERATION -=item Working with HV's +I, I, +I, C, I, I, +I, I, I -=item References +=item WARNING -=item Blessed References and Class Objects +=item Run-time Overloading -=item Creating New Variables +=item Public functions -=item Reference Counts and Mortality +overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) -=item Stashes and Globs +=item IMPLEMENTATION -=item Double-Typed SV's +=item AUTHOR -=item Magic Variables +=item DIAGNOSTICS -=item Assigning Magic +=item BUGS -=item Magic Virtual Tables +=head2 sigtrap - Perl pragma to enable simple signal handling -=item Finding Magic +=item SYNOPSIS -=back +=item DESCRIPTION -=item Subroutines +=item OPTIONS =over -=item XSUB's and the Argument Stack - -=item Calling Perl Routines from within C Programs +=item SIGNAL HANDLERS -=item Memory Allocation +B, B, B I -=item PerlIO +=item SIGNAL LISTS -=item Putting a C value on Perl stack +B, B, B -=item Scratchpads +=item OTHER -=item Scratchpads and recursions +B, B, I, I =back -=item Compiled code - -=over - -=item Code tree - -=item Examining the tree +=item EXAMPLES -=item Compile pass 1: check routines +=head2 strict - Perl pragma to restrict unsafe constructs -=item Compile pass 1a: constant folding +=item SYNOPSIS -=item Compile pass 2: context propagation +=item DESCRIPTION -=item Compile pass 3: peephole optimization +C, C, C -=back +=head2 subs - Perl pragma to predeclare sub names -=item API LISTING +=item SYNOPSIS -AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop, av_push, -av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH, -DBsingle, DBsub, DBtrace, dMARK, dORIGMARK, dowarn, dSP, dXSARGS, dXSI32, -dXSI32, ENTER, EXTEND, FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, -G_NOARGS, G_SCALAR, gv_fetchmeth, gv_fetchmethod, gv_stashpv, gv_stashsv, -GvSV, he_delayfree, he_free, hv_clear, hv_delete, hv_exists, hv_fetch, -hv_iterinit, hv_iterkey, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, -HvNAME, hv_store, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, -isUPPER, items, ix, LEAVE, MARK, mg_clear, mg_copy, mg_find, mg_free, -mg_get, mg_len, mg_magical, mg_set, Move, na, New, Newc, Newz, newAV, -newHV, newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, newSVpv, newSVrv, -newSVsv, newXS, newXSproto, 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_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, 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_catpvn, sv_catsv, sv_cmp, sv_cmp, SvCUR, SvCUR_set, sv_dec, sv_dec, -SvEND, sv_eq, SvGROW, sv_grow, sv_inc, SvIOK, SvIOK_off, SvIOK_on, -SvIOK_only, SvIOK_only, SvIOKp, sv_isa, SvIV, sv_isobject, SvIVX, SvLEN, -sv_len, sv_len, sv_magic, sv_mortalcopy, SvOK, sv_newmortal, sv_no, SvNIOK, -SvNIOK_off, SvNIOKp, SvNOK, SvNOK_off, SvNOK_on, SvNOK_only, SvNOK_only, -SvNOKp, SvNV, SvNVX, SvPOK, SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only, -SvPOKp, SvPV, SvPVX, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, -SvROK_off, SvROK_on, SvRV, sv_setiv, sv_setnv, sv_setpv, sv_setpvn, -sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setsv, SvSTASH, -SVt_IV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, -SvTYPE, svtype, SvUPGRADE, sv_upgrade, sv_undef, sv_unref, sv_usepvn, -sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XS, -XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, -XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, XST_mNO, -XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero - -=item EDITOR +=item DESCRIPTION -=item DATE +=head2 vars - Perl pragma to predeclare global variable names -=head2 perlcall - Perl calling conventions from C +=item SYNOPSIS =item DESCRIPTION -An Error Handler, An Event Driven Program +=head1 MODULE DOCUMENTATION -=item THE PERL_CALL FUNCTIONS +=head2 AnyDBM_File - provide framework for multiple DBMs -B, B, B, B +=item SYNOPSIS -=item FLAG VALUES +=item DESCRIPTION =over -=item G_SCALAR +=item DBM Comparisons -=item G_ARRAY +[0], [1], [2], [3] -=item G_DISCARD +=back -=item G_NOARGS +=item SEE ALSO -=item G_EVAL +=head2 AutoLoader - load subroutines only on demand -=item G_KEEPERR +=item SYNOPSIS -=item Determining the Context +=item DESCRIPTION -=back +=over -=item KNOWN PROBLEMS +=item Subroutine Stubs -=item EXAMPLES +=item Using B's AUTOLOAD Subroutine -=over +=item Overriding B's AUTOLOAD Subroutine -=item No Parameters, Nothing returned +=item Package Lexicals -=item Passing Parameters +=item B vs. B -=item Returning a Scalar +=back -=item Returning a list of values +=item CAVEATS -=item Returning a list in a scalar context +=item SEE ALSO -=item Returning Data from Perl via the parameter list +=head2 AutoSplit - split a package for autoloading -=item Using G_EVAL +=item SYNOPSIS -=item Using G_KEEPERR +=item DESCRIPTION -=item Using perl_call_sv +$keep, $check, $modtime -=item Using perl_call_argv +=over -=item Using perl_call_method +=item Multiple packages -=item Using GIMME +=back -=item Using Perl to dispose of temporaries +=item DIAGNOSTICS -=item Strategies for storing Callback Context Information +=head2 B::Lint - Perl lint -1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of -callbacks - hard wired limit, 3. Use a parameter to map to the Perl -callback +=item SYNOPSIS -=item Alternate Stack Manipulation +=item DESCRIPTION -=back +=item OPTIONS AND LINT CHECKS -=item SEE ALSO +B, B and B, B, +B, B, B, B, B -=item AUTHOR +=item NON LINT-CHECK OPTIONS -=item DATE +B<-u Package> -=head1 PRAGMA DOCUMENTATION +=item BUGS -=head2 blib - Use MakeMaker's uninstalled version of a package +=item AUTHOR + +=head2 B::Xref - Generates cross reference reports for Perl programs =item SYNOPSIS =item DESCRIPTION +=item OPTIONS + +C<-oFILENAME>, C<-r>, C<-D[tO]> + =item BUGS =item AUTHOR -=head2 diagnostics - Perl compiler pragma to force verbose warning -diagnostics +=head2 Benchmark - benchmark running times of code =item SYNOPSIS @@ -1634,269 +2844,311 @@ diagnostics =over -=item The C Pragma +=item Methods -=item The I Program +new, debug -=back +=item Standard Exports -=item EXAMPLES +timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), +timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( +TIMEDIFF, [ STYLE, [ FORMAT ] ] ) -=item INTERNALS +=item Optional Exports -=item BUGS +clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( ) -=item AUTHOR +=back -=head2 integer - Perl pragma to compute arithmetic in integer instead of -double +=item NOTES -=item SYNOPSIS +=item INHERITANCE -=item DESCRIPTION +=item CAVEATS -=head2 less - perl pragma to request less of something from the compiler +=item AUTHORS + +=item MODIFICATION HISTORY + +=head2 Bundle::CPAN - A bundle to play with all the other modules on CPAN =item SYNOPSIS +=item CONTENTS + =item DESCRIPTION -=head2 lib - manipulate @INC at compile time +=item AUTHOR + +=head2 CGI - Simple Common Gateway Interface Class =item SYNOPSIS +=item ABSTRACT + +=item INSTALLATION + =item DESCRIPTION =over -=item ADDING DIRECTORIES TO @INC +=item CREATING A NEW QUERY OBJECT: -=item DELETING DIRECTORIES FROM @INC +=item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE -=item RESTORING ORIGINAL @INC +=item FETCHING A LIST OF KEYWORDS FROM THE QUERY: -=back +=item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT: -=item SEE ALSO +=item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER: -=item AUTHOR +=item SETTING THE VALUE(S) OF A NAMED PARAMETER: -=head2 locale - Perl pragma to use and avoid POSIX locales for built-in -operations +=item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER: -=item SYNOPSIS +=item IMPORTING ALL PARAMETERS INTO A NAMESPACE: -=item DESCRIPTION +=item DELETING A PARAMETER COMPLETELY: -=head2 ops - Perl pragma to restrict unsafe operations when compiling +=item DELETING ALL PARAMETERS: -=item SYNOPSIS +=item SAVING THE STATE OF THE FORM TO A FILE: -=item DESCRIPTION +=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION: -=item SEE ALSO +=item COMPATIBILITY WITH CGI-LIB.PL -=head2 overload - Package for overloading perl operations +=item CALLING CGI FUNCTIONS THAT TAKE MULTIPLE ARGUMENTS -=item SYNOPSIS +=item CREATING THE HTTP HEADER: -=item CAVEAT SCRIPTOR +=item GENERATING A REDIRECTION INSTRUCTION -=item DESCRIPTION +=item CREATING THE HTML HEADER: + +B, 4, 5, 6.. + +=item ENDING THE HTML DOCUMENT: + +=back + +=item CREATING FORMS =over -=item Declaration of overloaded functions +=item CREATING AN ISINDEX TAG -=item Calling Conventions for Binary Operations +=item STARTING AND ENDING A FORM -FALSE, TRUE, C +B, B -=item Calling Conventions for Unary Operations +=item CREATING A TEXT FIELD -=item Overloadable Operations +B -I, I, I, -I, I, I, I +=item CREATING A BIG TEXT FIELD -=item Inheritance and overloading +=item CREATING A PASSWORD FIELD -Strings as values of C directive, Overloading of an operation -is inherited by derived classes +=item CREATING A FILE UPLOAD FIELD -=back +B -=item SPECIAL SYMBOLS FOR C +=item CREATING A POPUP MENU -=over +=item CREATING A SCROLLING LIST -=item Last Resort +B -=item Fallback +=item CREATING A GROUP OF RELATED CHECKBOXES -C, TRUE, defined, but FALSE +B -=item Copy Constructor +=item CREATING A STANDALONE CHECKBOX -B +B -=back +=item CREATING A RADIO BUTTON GROUP -=item MAGIC AUTOGENERATION +B -I, I, -I, C, I, I, -I, I, I +=item CREATING A SUBMIT BUTTON -=item WARNING +B -=item Run-time Overloading +=item CREATING A RESET BUTTON -=item Public functions +=item CREATING A DEFAULT BUTTON -overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) +=item CREATING A HIDDEN FIELD -=item IMPLEMENTATION +B -=item AUTHOR +=item CREATING A CLICKABLE IMAGE BUTTON -=item DIAGNOSTICS +B, 3.The third option (-align, optional) is an alignment type, +and may be +TOP, BOTTOM or MIDDLE -=item BUGS +=item CREATING A JAVASCRIPT ACTION BUTTON -=head2 sigtrap - Perl pragma to enable simple signal handling +=back -=item SYNOPSIS +=item NETSCAPE COOKIES -=item DESCRIPTION +1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, +B<-name>, B<-value>, B<-path>, B<-domain>, B<-expires>, B<-secure> -=item OPTIONS +=item WORKING WITH NETSCAPE FRAMES + +1. Create a document, 2. Specify the destination for the +document in the HTTP header, 3. Specify the destination for the document in +the
tag + +=item LIMITED SUPPORT FOR CASCADING STYLE SHEETS + +=item DEBUGGING =over -=item SIGNAL HANDLERS +=item DUMPING OUT ALL THE NAME/VALUE PAIRS -B, B, B I +=back -=item SIGNAL LISTS +=item FETCHING ENVIRONMENT VARIABLES -B, B, B +B, B, B, B, +B, B, BReturn the script +name as a partial URL, for self-refering +scripts, B, B, B, B, B, B, B, +B -=item OTHER +=item CREATING HTML ELEMENTS -B, B, I, I +=over -=back +=item PROVIDING ARGUMENTS TO HTML SHORTCUTS -=item EXAMPLES +=item Generating new HTML tags -=head2 strict - Perl pragma to restrict unsafe constructs +=back -=item SYNOPSIS +=item IMPORTING CGI METHOD CALLS INTO YOUR NAME SPACE -=item DESCRIPTION +B, B, B, B, B, B, +B, B -C, C, C +=item USING NPH SCRIPTS -=head2 subs - Perl pragma to predeclare sub names +In the B statementSimply add ":nph" to the list of symbols to be +imported into your script:, By calling the B method:, By using +B<-nph> parameters in the B and B statements: -=item SYNOPSIS +=item AUTHOR INFORMATION -=item DESCRIPTION +=item CREDITS -=head2 vars - Perl pragma to predeclare global variable names +Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor +(james.taylor@srs.gov), Scott Anguish , Mike Jewell +(mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg +(jh@axis.se), Laurent Delfosse (delfosse@csgrad1.cs.wvu.edu), Richard +Resnick (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony +Curtis (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom +Christiansen (tchrist@convex.com), Andreas Koenig +(k@franz.ww.TU-Berlin.DE), Tim MacKenzie (Tim.MacKenzie@fulcrum.com.au), +Kevin B. Hendricks (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen +(joyfire@inxpress.net), Ed Jordan (ed@fidalgo.net), David Alan Pisoni +(david@cnation.com), ...and many many more.. -=item SYNOPSIS +=item A COMPLETE EXAMPLE OF A SIMPLE FORM-BASED SCRIPT -=item DESCRIPTION +=item BUGS -=head1 MODULE DOCUMENTATION +=item SEE ALSO -=head2 AnyDBM_File - provide framework for multiple DBMs +=head2 CGI::Apache - Make things work with CGI.pm against Perl-Apache API =item SYNOPSIS =item DESCRIPTION -=over - -=item DBM Comparisons - -[0], [1], [2], [3] +=item NOTE 1 -=back +=item NOTE 2 =item SEE ALSO -=head2 AutoLoader - load functions only on demand +=item AUTHOR + +=head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or +other) error log =item SYNOPSIS =item DESCRIPTION -=over - -=item __END__ - -=item Loading Stubs +=item REDIRECTING ERROR MESSAGES -=item Package Lexicals +=item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW -=item AutoLoader vs. SelfLoader +=item CHANGE LOG -=back +=item AUTHORS -=item CAVEAT +=item SEE ALSO -=head2 AutoSplit - split a package for autoloading +=head2 CGI::Fast - CGI Interface for Fast CGI =item SYNOPSIS =item DESCRIPTION -=item CAVEATS +=item OTHER PIECES OF THE PUZZLE -=item DIAGNOSTICS +=item WRITING FASTCGI PERL SCRIPTS -=head2 Benchmark - benchmark running times of code +=item INSTALLING FASTCGI SCRIPTS -=item SYNOPSIS +=item USING FASTCGI SCRIPTS AS CGI SCRIPTS -=item DESCRIPTION +=item CAVEATS -=over +=item AUTHOR INFORMATION -=item Methods +=item BUGS -new, debug +=item SEE ALSO -=item Standard Exports +=head2 CGI::Push - Simple Interface to Server Push -timeit(COUNT, CODE), timethis, timethese, timediff, timestr +=item SYNOPSIS -=item Optional Exports +=item DESCRIPTION -=back +=item USING CGI::Push -=item NOTES +-next_page, -last_page, -type, -delay, -cookie, -target, -expires -=item INHERITANCE +=item INSTALLING CGI::Push SCRIPTS =item CAVEATS -=item AUTHORS +=item AUTHOR INFORMATION -=item MODIFICATION HISTORY +=item BUGS -=head2 Bundle::CPAN - A bundle to play with all the other modules on CPAN +=item SEE ALSO -=item SYNOPSIS +=head2 CGI::Switch - Try more than one constructors and return the first +object available -=item CONTENTS +=item SYNOPSIS =item DESCRIPTION +=item SEE ALSO + =item AUTHOR =head2 CPAN - query, download and build perl modules from CPAN sites @@ -1919,8 +3171,14 @@ distribution =item recompile +=item The four C Classes: Author, Bundle, Module, Distribution + =item ProgrammerE<39>s interface +expand($type,@things), Programming Examples + +=item Methods in the four + =item Cache Manager =item Bundles @@ -1940,6 +3198,12 @@ EvalueE, o conf Elist optionE, o conf Elist optionE [shift|pop], o conf Elist optionE [unshift|push|splice] ElistE +=over + +=item CD-ROM support + +=back + =item SECURITY =item EXPORT @@ -1965,37 +3229,40 @@ module =item SEE ALSO -=head2 Carp, carp - warn of errors (from perspective of caller) +=head2 Carp, carp - warn of errors (from perspective of caller) =item SYNOPSIS =item DESCRIPTION -=head2 Class::Template - struct/member template builder +=over -=item SYNOPSIS +=item Forcing a Stack Trace -=item DESCRIPTION +=back -=item EXAMPLES +=head2 Class::Struct - declare struct-like datatypes as Perl classes -Example 1, Example 2 +=item SYNOPSIS -=item NOTES +=item DESCRIPTION -=head2 Config - access Perl configuration information +=over -=item SYNOPSIS +=item The C function -=item DESCRIPTION +=item Element Types and Accessor Methods -myconfig(), config_sh(), config_vars(@names) +Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or +C<'*%'>), Class (C<'Class_Name'> or C<'*Class_Name'>) -=item EXAMPLE +=back -=item WARNING +=item EXAMPLES -=item NOTE +Example 1, Example 2 + +=item Author and Modification History =head2 Cwd, getcwd - get pathname of current working directory @@ -2003,7 +3270,7 @@ myconfig(), config_sh(), config_vars(@names) =item DESCRIPTION -=head2 DB_File - Perl5 access to Berkeley DB +=head2 DB_File - Perl5 access to Berkeley DB version 1.x =item SYNOPSIS @@ -2013,7 +3280,9 @@ B, B, B =over -=item How does DB_File interface to Berkeley DB? +=item Using DB_File with Berkeley DB version 2 + +=item Interface to Berkeley DB =item Opening a Berkeley DB Database File @@ -2027,7 +3296,7 @@ B, B, B =over -=item A Simple Example. +=item A Simple Example =back @@ -2037,9 +3306,9 @@ B, B, B =item Changing the BTREE sort order -=item Handling duplicate keys +=item Handling Duplicate Keys -=item The get_dup method. +=item The get_dup() Method =item Matching Partial Keys @@ -2049,7 +3318,7 @@ B, B, B =over -=item The bval option +=item The 'bval' Option =item A Simple Example @@ -2075,9 +3344,9 @@ $value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> =item Locking Databases -=item Sharing databases with C applications +=item Sharing Databases With C Applications -=item The untie gotcha +=item The untie() Gotcha =back @@ -2101,6 +3370,8 @@ $value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> =item AVAILABILITY +=item COPYRIGHT + =item SEE ALSO =item AUTHOR @@ -2117,20 +3388,6 @@ $value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> =item DESCRIPTION -=head2 DynaLoader - Dynamically load C libraries into Perl code - -=item SYNOPSIS - -=item DESCRIPTION - -@dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs, -@dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(), -dl_load_file(), dl_loadflags(), dl_find_symbol(), -dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), -bootstrap() - -=item AUTHOR - =head2 English - use nice English (or awk) names for ugly punctuation variables @@ -2158,6 +3415,8 @@ variables =item Specialised Import Lists +=item Exporting without using Export's import method + =item Module Version Checking =item Managing Unknown Symbols @@ -2166,6 +3425,23 @@ variables =back +=head2 ExtUtils::Command - utilities to replace common UNIX commands in +Makefiles etc. + +=item SYNOPSIS + +=item DESCRIPTION + +cat, eqtime src dst, rm_f files..., rm_f files..., touch files .., mv +source... destination, cp source... destination, chmod mode files.., mkpath +directory.., test_f file + +=item BUGS + +=item SEE ALSO + +=item AUTHOR + =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications =item SYNOPSIS @@ -2191,6 +3467,21 @@ ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =item DESCRIPTION +=head2 ExtUtils::Installed - Inventory management of installed modules + +=item SYNOPSIS + +=item DESCRIPTION + +=item USAGE + +=item FUNCTIONS + +new(), modules(), files(), directories(), directory_tree(), validate(), +packlist(), version() + +=item AUTHOR + =head2 ExtUtils::Liblist - determine libraries to use and how to use them =item SYNOPSIS @@ -2215,6 +3506,8 @@ For static extensions, For dynamic extensions, For dynamic extensions =item VMS implementation +=item Win32 implementation + =back =item SEE ALSO @@ -2250,16 +3543,16 @@ extliblist, file_name_is_absolute, find_perl =item Methods to actually produce chunks of text for the Makefile -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, +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, pasthru (o), path, perl_script, perldepend (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) +writedoc, xs_c (o), xs_o (o), perl_archive, export_list =back @@ -2299,6 +3592,18 @@ dist_dir (override), dist_test (override), install (override), perldepend =back +=head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in +ExtUtils::MakeMaker + +=item SYNOPSIS + +=item DESCRIPTION + +catfile, constants (o), static_lib (o), dynamic_bs (o), dynamic_lib (o), +canonpath, perl_script, pm_to_blib, test_via_harness (o), tool_autosplit +(override), tools_other (o), xs_o (o), top_targets (o), manifypods (o), +dist_ci (o), dist_core (o), pasthru (o) + =head2 ExtUtils::MakeMaker - create an extension Makefile =item SYNOPSIS @@ -2329,8 +3634,8 @@ dist_dir (override), dist_test (override), install (override), perldepend =item Using Attributes and Parameters -C, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, -EXCLUDE_EXT, EXE_FILES, NO_VC, FIRST_MAKEFILE, FULLPERL, H, INC, +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, @@ -2352,10 +3657,12 @@ tool_autosplit =item Distribution Support - make distcheck, make skipcheck, make distclean, make manifest, - make distdir, make tardist, make dist, make uutardist, make +make distcheck, make skipcheck, make distclean, make manifest, +make distdir, make tardist, make dist, make uutardist, make shdist, make zipdist, make ci +=item Disabling an extension + =back =item SEE ALSO @@ -2383,14 +3690,6 @@ C I =item AUTHOR -=head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c - -=item SYNOPSIS - -=item DESCRIPTION - -=item SEE ALSO - =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader =item SYNOPSIS @@ -2410,85 +3709,35 @@ NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE =item REVISION -=head2 ExtUtils::testlib - add blib/* directories to @INC - -=item SYNOPSIS - -=item DESCRIPTION - -=head2 Fcntl - load the C Fcntl.h defines - -=item SYNOPSIS - -=item DESCRIPTION - -=item NOTE - -=item EXPORTED SYMBOLS - -=head2 File::Basename, fileparse - split a pathname into pieces - -=item SYNOPSIS - -=item DESCRIPTION - -fileparse_set_fstype, fileparse - -=item EXAMPLES - -C, C - -=head2 File::CheckTree, validate - run many filetest checks on a tree - -=item SYNOPSIS - -=item DESCRIPTION - -=head2 File::Compare - Compare files or filehandles - -=item SYNOPSIS - -=item DESCRIPTION - -=item RETURN - -=item AUTHOR - -=head2 File::Copy - Copy files or filehandles +=head2 ExtUtils::Packlist - manage .packlist files =item SYNOPSIS =item DESCRIPTION -=over - -=item Special behavior if C is defined (VMS and OS/2) - -rmscopy($from,$to[,$date_flag]) +=item USAGE -=back +=item FUNCTIONS -=item RETURN +new(), read(), write(), validate(), packlist_file() =item AUTHOR -=head2 File::Find, find - traverse a file tree +=head2 ExtUtils::testlib - add blib/* directories to @INC =item SYNOPSIS =item DESCRIPTION -=head2 File::Path - create or remove a series of directories +=head2 Fatal - replace functions with equivalents which succeed or die =item SYNOPSIS =item DESCRIPTION -=item AUTHORS - -=item REVISION +=item AUTHOR -=head2 File::stat - by-name interface to Perl's built-in stat() functions +=head2 Fcntl - load the C Fcntl.h defines =item SYNOPSIS @@ -2496,240 +3745,205 @@ rmscopy($from,$to[,$date_flag]) =item NOTE -=item AUTHOR +=item EXPORTED SYMBOLS -=head2 FileCache - keep more files open than the system permits +=head2 File::Basename, fileparse - split a pathname into pieces =item SYNOPSIS =item DESCRIPTION -=item BUGS - -=head2 FileHandle - supply object methods for filehandles - -=item SYNOPSIS - -=item DESCRIPTION +fileparse_set_fstype, fileparse -$fh->print, $fh->printf, $fh->getline, $fh->getlines +=item EXAMPLES -=item SEE ALSO +C, C -=head2 FindBin - Locate directory of original perl script +=head2 File::CheckTree, validate - run many filetest checks on a tree =item SYNOPSIS =item DESCRIPTION -=item EXPORTABLE VARIABLES - -=item KNOWN BUGS - -=item AUTHORS - -=item COPYRIGHT - -=item REVISION - -=head2 GDBM_File - Perl5 access to the gdbm library. +=head2 File::Compare - Compare files or filehandles =item SYNOPSIS =item DESCRIPTION -=item AVAILABILITY - -=item BUGS +=item RETURN -=item SEE ALSO +=item AUTHOR -=head2 Getopt::Long, GetOptions - extended processing of command line -options +=head2 File::Copy - Copy files or filehandles =item SYNOPSIS =item DESCRIPTION -EnoneE, !, =s, :s, =i, :i, =f, :f - =over -=item Linkage specification - -=item Aliases and abbreviations - -=item Non-option call-back routine - -=item Option starters - -=item Return value - -=back +=item Special behavior if C is defined (VMS and OS/2) -=item COMPATIBILITY +rmscopy($from,$to[,$date_flag]) -=item EXAMPLES +=back -=item CONFIGURATION VARIABLES +=item RETURN -$Getopt::Long::autoabbrev, $Getopt::Long::getopt_compat, -$Getopt::Long::order, $Getopt::Long::bundling, $Getopt::Long::ignorecase, -$Getopt::Long::passthrough, $Getopt::Long::VERSION, $Getopt::Long::error, -$Getopt::Long::debug +=item AUTHOR -=head2 Getopt::Std, getopt - Process single-character switches with switch -clustering +=head2 File::DosGlob - DOS like globbing and then some =item SYNOPSIS =item DESCRIPTION -=head2 I18N::Collate - compare 8-bit scalar data according to the current -locale - -=item SYNOPSIS +=item EXPORTS (by request only) -=item DESCRIPTION +=item BUGS -=head2 IO - load various IO modules +=item AUTHOR -=item SYNOPSIS +=item HISTORY -=item DESCRIPTION +=item SEE ALSO -=head2 IO::File - supply object methods for filehandles +=head2 File::Find, find - traverse a file tree =item SYNOPSIS =item DESCRIPTION -=item CONSTRUCTOR +=item BUGS -new ([ ARGS ] ) +=head2 File::Path - create or remove a series of directories -=item METHODS +=item SYNOPSIS -open( FILENAME [,MODE [,PERMS]] ) +=item DESCRIPTION -=item SEE ALSO +=item AUTHORS -=item HISTORY +=item REVISION -=head2 IO::Handle - supply object methods for I/O handles +=head2 File::stat - by-name interface to Perl's built-in stat() functions =item SYNOPSIS =item DESCRIPTION -=item CONSTRUCTOR - -new (), new_from_fd ( FD, MODE ) +=item NOTE -=item METHODS +=item AUTHOR -$fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF, -LEN [, OFFSET }\] ), $fh->opened, $fh->untaint +=head2 FileCache - keep more files open than the system permits -=item NOTE +=item SYNOPSIS -=item SEE ALSO +=item DESCRIPTION =item BUGS -=item HISTORY - -=head2 IO::Pipe, IO::pipe - supply object methods for pipes +=head2 FileHandle - supply object methods for filehandles =item SYNOPSIS =item DESCRIPTION -=item CONSTRCUTOR +$fh->print, $fh->printf, $fh->getline, $fh->getlines -new ( [READER, WRITER] ) +=item SEE ALSO -=item METHODS +=head2 FindBin - Locate directory of original perl script -reader ([ARGS]), writer ([ARGS]), handles () +=item SYNOPSIS -=item SEE ALSO +=item DESCRIPTION -=item AUTHOR +=item EXPORTABLE VARIABLES + +=item KNOWN BUGS + +=item AUTHORS =item COPYRIGHT -=head2 IO::Seekable - supply seek based methods for I/O objects +=item REVISION + +=head2 GDBM_File - Perl5 access to the gdbm library. =item SYNOPSIS =item DESCRIPTION -=item SEE ALSO +=item AVAILABILITY -=item HISTORY +=item BUGS -=head2 IO::Select - OO interface to the select system call +=item SEE ALSO + +=head2 Getopt::Long, GetOptions - extended processing of command line +options =item SYNOPSIS =item DESCRIPTION -=item CONSTRUCTOR - -new ( [ HANDLES ] ) +!, +, :s, :i, :f -=item METHODS +=over -add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( -[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count -(), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) +=item Linkage specification -=item EXAMPLE +=item Aliases and abbreviations -=item AUTHOR +=item Non-option call-back routine -=item COPYRIGHT +=item Option starters -=head2 IO::Socket - Object interface to socket communications +=item Return values and Errors -=item SYNOPSIS +=back -=item DESCRIPTION +=item COMPATIBILITY -=item CONSTRUCTOR +=item EXAMPLES -new ( [ARGS] ) +=item CONFIGURATION OPTIONS -=item METHODS +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) -accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype, -protocol +=item OTHER USEFUL VARIABLES -=item SUB-CLASSES +$Getopt::Long::VERSION, $Getopt::Long::error -=over +=item AUTHOR -=item IO::Socket::INET +=item COPYRIGHT AND DISCLAIMER -=item METHODS +=head2 Getopt::Std, getopt - Process single-character switches with switch +clustering -sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost -() +=item SYNOPSIS -=item IO::Socket::UNIX +=item DESCRIPTION -=item METHODS +=head2 I18N::Collate - compare 8-bit scalar data according to the current +locale -hostpath(), peerpath() +=item SYNOPSIS -=back +=item DESCRIPTION -=item SEE ALSO +=head2 IO - load various IO modules -=item AUTHOR +=item SYNOPSIS -=item COPYRIGHT +=item DESCRIPTION =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles @@ -2739,7 +3953,7 @@ hostpath(), peerpath() =item CONSTRUCTOR -new ([ ARGS ] ) +new ([ ARGS ] ), new_tmpfile =item METHODS @@ -2762,8 +3976,9 @@ new (), new_from_fd ( FD, MODE ) =item METHODS -$fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF, -LEN [, OFFSET }\] ), $fh->opened, $fh->untaint +$fh->fdopen ( FD, MODE ), $fh->opened, $fh->getline, $fh->getlines, +$fh->ungetc ( ORD ), $fh->write ( BUF, LEN [, OFFSET }\] ), $fh->flush, +$fh->error, $fh->clearerr, $fh->untaint =item NOTE @@ -2928,9 +4143,35 @@ functions =item USAGE +=item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO + +=item ERRORS DUE TO INDIGESTIBLE ARGUMENTS + =item BUGS -=item AUTHOR +=item AUTHORS + +=head2 Math::Trig - trigonometric functions + +=item SYNOPSIS + +=item DESCRIPTION + +=item TRIGONOMETRIC FUNCTIONS + +=over + +=item ERRORS DUE TO DIVISION BY ZERO + +=item SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS + +=back + +=item ANGLE CONVERSIONS + +=item BUGS + +=item AUTHORS =head2 NDBM_File - Tied access to ndbm files @@ -3042,8 +4283,9 @@ opdump (PAT) =item Predefined Opcode Tags :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math, -:default, :filesys_read, :sys_db, :browse, :filesys_open, :filesys_write, -:subprocess, :ownprocess, :others, :still_to_be_decided, :dangerous +:base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open, +:filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided, +:dangerous =item SEE ALSO @@ -3082,7 +4324,7 @@ Memory, CPU, Snooping, Signals, State Changes =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when compiling -=item SYNOPSIS +=item SYNOPSIS =item DESCRIPTION @@ -3215,50 +4457,42 @@ Constants, Macros =item CREATION -=head2 Pod::Text - convert POD data to formatted ASCII text +=head2 Pod::Html - module to convert pod files to HTML =item SYNOPSIS =item DESCRIPTION -=item AUTHOR - -=item TODO - -=head2 SDBM_File - Tied access to sdbm files - -=item SYNOPSIS +=item ARGUMENTS -=item DESCRIPTION +help, htmlroot, infile, outfile, podroot, podpath, libpods, netscape, +nonetscape, index, noindex, recurse, norecurse, title, verbose -=head2 Safe - Compile and execute code in restricted compartments +=item EXAMPLE -=item SYNOPSIS +=item AUTHOR -=item DESCRIPTION +=item BUGS -a new namespace, an operator mask +=item SEE ALSO -=item WARNING +=item COPYRIGHT -=over +=head2 Pod::Text - convert POD data to formatted ASCII text -=item RECENT CHANGES +=item SYNOPSIS -=item Methods in class Safe +=item DESCRIPTION -permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP, -...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from -(PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME), -root (NAMESPACE), mask (MASK) +=item AUTHOR -=item Some Safety Issues +=item TODO -Memory, CPU, Snooping, Signals, State Changes +=head2 SDBM_File - Tied access to sdbm files -=item AUTHOR +=item SYNOPSIS -=back +=item DESCRIPTION =head2 Search::Dict, look - search for key in dictionary file @@ -3339,7 +4573,15 @@ interface to the UNIX syslog(3) calls =item DESCRIPTION openlog $ident, $logopt, $facility, syslog $priority, $format, @args, -setlogmask $mask_priority, closelog +setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_03) +Sets the socket type to be used for the next call to +C or C. + +A value of 'unix' will connect to the UNIX domain socket returned by +C<_PATH_LOG> in F. If F fails to define +C<_PATH_LOG>, C returns C; otherwise a true value is +returned. A value of 'inet' will connect to an INET socket returned by +getservbyname(). Any other value croaks, closelog =item EXAMPLES @@ -3363,8 +4605,7 @@ setlogmask $mask_priority, closelog =item DESCRIPTION -EtabEAttempts word completion. -Cannot be changed, ^D, ^U, EdelE, EbsE +EtabE, ^D, ^U, EdelE, EbsE =item DIAGNOSTICS @@ -3382,10 +4623,32 @@ no real package is found, substitutes stubs instead of basic functions. =item Minimal set of supported functions C, C, C, C, C, $C, -C, C, C +C, C, Attribs, C + +=item Additional supported functions + +C, C, C =item EXPORTS +=item ENVIRONMENT + +=head2 Test - provides a simple framework for writing test scripts + +=item SYNOPSIS + +=item DESCRIPTION + +=item TEST TYPES + +NORMAL TESTS, SKIPPED TESTS, TODO TESTS + +=item ONFAIL + +=item SEE ALSO + +=item AUTHOR + =head2 Test::Harness - run perl standard test scripts with statistics =item SYNOPSIS @@ -3421,12 +4684,21 @@ C, Cself, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE, +cond_broadcast VARIABLE + +=item METHODS + +join, eval, tid + +=item LIMITATIONS + +=item SEE ALSO + +=head2 Thread::Queue - thread-safe queues + +=item SYNOPSIS + +=item DESCRIPTION + +=item FUNCTIONS AND METHODS + +new, enqueue LIST, dequeue, dequeue_nb, pending + +=item SEE ALSO + +=head2 Thread::Semaphore - thread-safe semaphores + +=item SYNOPSIS + +=item DESCRIPTION + +=item FUNCTIONS AND METHODS + +new, new NUMBER, down, down NUMBER, up, up NUMBER + +=head2 Thread::Signal - Start a thread which runs signal handlers reliably + +=item SYNOPSIS + +=item DESCRIPTION + +=item BUGS + +=head2 Thread::Specific - thread-specific keys + +=item SYNOPSIS + +=head2 Tie::Array - base class for tied arrays + +=item SYNOPSIS + +=item DESCRIPTION + +TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index, +FETCHSIZE this, STORESIZE this, count, EXTEND this, count, CLEAR this, +DESTROY this, PUSH this, LIST, POP this, SHIFT this, UNSHIFT this, LIST, +SPLICE this, offset, length, LIST + +=item CAVEATS + +=item AUTHOR + +=head2 Tie::Handle - base class definitions for tied handles + +=item SYNOPSIS + +=item DESCRIPTION + +TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this, +LIST, PRINTF this, format, LIST, READ this, scalar, length, offset, +READLINE this, GETC this, DESTROY this + +=item MORE INFORMATION + =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes =item SYNOPSIS @@ -3553,7 +4906,8 @@ function =item DESCRIPTION -isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), isa ( REF, TYPE ) +isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL::isa ( +VAL, TYPE ), UNIVERSAL::can ( VAL, METHOD ) =head2 User::grent - by-name interface to Perl's built-in getgr*() functions @@ -3602,6 +4956,6 @@ don't all have manual pages yet: =head1 AUTHOR -Larry Wall EFE, with the help of oodles +Larry Wall >, with the help of oodles of other folks.