X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=0a7987bb367b41db87912586113b98a4446d329a;hb=9b5c3821be1f2a9a84772171c8bbadbf9cfc4a53;hp=6262f4d12769cdcd5b5f4a6c6811cb100d8c59ac;hpb=3ea7755680302231fb5fb2feb962b211d651338f;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 6262f4d..0a7987b 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -1,4 +1,8 @@ +# !!!!!!! DO NOT EDIT THIS FILE !!!!!!! +# This file is autogenerated by buildtoc from all the other pods. +# Edit those files and run buildtoc --build-toc to effect changes. + =head1 NAME perltoc - perl documentation table of contents @@ -103,111 +107,136 @@ Parentheses for capturing, Other regexp features =back -=head2 perlfaq - frequently asked questions about Perl ($Date: 2003/01/31 -17:37:17 $) +=head2 perlreftut - Mark's very short tutorial about references =over 4 =item DESCRIPTION +=item Who Needs Complicated Data Structures? + +=item The Solution + +=item Syntax + =over 4 -=item Where to get the perlfaq +=item Making References -=item How to contribute to the perlfaq +=item Using References -=item What will happen if you mail your Perl programming problems to the -authors +=item An Example + +=item Arrow Rule =back -=item Credits +=item Solution -=item Author and Copyright Information +=item The Rest + +=item Summary + +=item Credits =over 4 -=item Bundled Distributions +=item Distribution Conditions -=item Disclaimer +=back =back -=item Table of Contents +=head2 perldsc - Perl Data Structures Cookbook -perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2 -- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4 -- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular -Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System -Interaction, perlfaq9 - Networking +=over 4 -=item The Questions +=item DESCRIPTION -=over 4 +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs -=item L: General Questions About Perl +=item REFERENCES -=item L: Obtaining and Learning about Perl +=item COMMON MISTAKES -=item L: Programming Tools +=item CAVEAT ON PRECEDENCE -=item L: Data Manipulation +=item WHY YOU SHOULD ALWAYS C -=item L: Files and Formats +=item DEBUGGING -=item L: Regular Expressions +=item CODE EXAMPLES -=item L: General Perl Language Issues +=item ARRAYS OF ARRAYS -=item L: System Interaction +=over 4 -=item L: Networking +=item Declaration of an ARRAY OF ARRAYS -=back +=item Generation of an ARRAY OF ARRAYS + +=item Access and Printing of an ARRAY OF ARRAYS =back -=head2 perlbook - Perl book information +=item HASHES OF ARRAYS =over 4 -=item DESCRIPTION +=item Declaration of a HASH OF ARRAYS + +=item Generation of a HASH OF ARRAYS + +=item Access and Printing of a HASH OF ARRAYS =back -=head2 perlsyn - Perl syntax +=item ARRAYS OF HASHES =over 4 -=item DESCRIPTION +=item Declaration of an ARRAY OF HASHES -=over 4 +=item Generation of an ARRAY OF HASHES -=item Declarations +=item Access and Printing of an ARRAY OF HASHES -=item Simple Statements +=back -=item Compound Statements +=item HASHES OF HASHES -=item Loop Control +=over 4 -=item For Loops +=item Declaration of a HASH OF HASHES -=item Foreach Loops +=item Generation of a HASH OF HASHES -=item Basic BLOCKs and Switch Statements +=item Access and Printing of a HASH OF HASHES -=item Goto +=back -=item PODs: Embedded Documentation +=item MORE ELABORATE RECORDS -=item Plain Old Comments (Not!) +=over 4 + +=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 + =back -=head2 perldata - Perl data types +=head2 perllol - Manipulating Arrays of Arrays in Perl =over 4 @@ -215,798 +244,1168 @@ Interaction, perlfaq9 - Networking =over 4 -=item Variable names - -=item Context - -=item Scalar values - -=item Scalar value constructors +=item Declaration and Access of Arrays of Arrays -=item List value constructors +=item Growing Your Own -=item Subscripts +=item Access and Printing =item Slices -=item Typeglobs and Filehandles - =back =item SEE ALSO +=item AUTHOR + =back -=head2 perlop - Perl operators and precedence +=head2 perlrequick - Perl regular expressions quick start =over 4 -=item SYNOPSIS - =item DESCRIPTION +=item The Guide + =over 4 -=item Terms and List Operators (Leftward) +=item Simple word matching -=item The Arrow Operator +=item Using character classes -=item Auto-increment and Auto-decrement +=item Matching this or that -=item Exponentiation +=item Grouping things and hierarchical matching -=item Symbolic Unary Operators +=item Extracting matches -=item Binding Operators +=item Matching repetitions -=item Multiplicative Operators +=item More matching -=item Additive Operators +=item Search and replace -=item Shift Operators +=item The split operator -=item Named Unary Operators +=back -=item Relational Operators +=item BUGS -=item Equality Operators +=item SEE ALSO -=item Bitwise And +=item AUTHOR AND COPYRIGHT -=item Bitwise Or and Exclusive Or +=over 4 -=item C-style Logical And +=item Acknowledgments -=item C-style Logical Or +=back -=item C-style Logical Defined-Or +=back -=item Range Operators +=head2 perlretut - Perl regular expressions tutorial -=item Conditional Operator +=over 4 -=item Assignment Operators +=item DESCRIPTION -=item Comma Operator +=item Part 1: The basics -=item List Operators (Rightward) +=over 4 -=item Logical Not +=item Simple word matching -=item Logical And +=item Using character classes -=item Logical or, Defined or, and Exclusive Or +=item Matching this or that -=item C Operators Missing From Perl +=item Grouping things and hierarchical matching -unary &, unary *, (TYPE) +=item Extracting matches -=item Quote and Quote-like Operators +=item Matching repetitions -=item Regexp Quote-Like Operators +=item Building a regexp -?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, -qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, -s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, -y/SEARCHLIST/REPLACEMENTLIST/cds, <, C, C, C, C, C<''>, C, C<"">, -C<``>, C, C, C<< >>, C, C, C, -C,, Interpolation of regular expressions, Optimization of -regular expressions +=item Part 2: Power tools -=item I/O Operators +=over 4 -=item Constant Folding +=item More on characters, strings, and character classes -=item Bitwise String Operators +=item Compiling and saving regular expressions -=item Integer Arithmetic +=item Embedding comments and modifiers in a regular expression -=item Floating-point Arithmetic +=item Non-capturing groupings -=item Bigger Numbers +=item Looking ahead and looking behind -=back +=item Using independent subexpressions to prevent backtracking -=back +=item Conditional expressions -=head2 perlsub - Perl subroutines +=item A bit of magic: executing Perl code in a regular expression -=over 4 +=item Pragmas and debugging -=item SYNOPSIS +=back -=item DESCRIPTION +=item BUGS -=over 4 +=item SEE ALSO -=item Private Variables via my() +=item AUTHOR AND COPYRIGHT -=item Persistent Private Variables +=over 4 -=item Temporary Values via local() +=item Acknowledgments -=item Lvalue subroutines +=back -Lvalue subroutines are EXPERIMENTAL +=back -=item Passing Symbol Table Entries (typeglobs) +=head2 perlboot - Beginner's Object-Oriented Tutorial -=item When to Still Use local() +=over 4 -=item Pass by Reference +=item DESCRIPTION -=item Prototypes +=over 4 -=item Constant Functions +=item If we could talk to the animals... -=item Overriding Built-in Functions +=item Introducing the method invocation arrow -=item Autoloading +=item Invoking a barnyard -=item Subroutine Attributes - -=back +=item The extra parameter of method invocation -=item SEE ALSO +=item Calling a second method to simplify things -=back +=item Inheriting the windpipes -=head2 perlfunc - Perl builtin functions +=item A few notes about @ISA -=over 4 +=item Overriding the methods -=item DESCRIPTION +=item Starting the search from a different place -=over 4 +=item The SUPER way of doing things -=item Perl Functions by Category +=item Where we're at so far... -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 A horse is a horse, of course of course -- or is it? -=item Portability +=item Invoking an instance method -=item Alphabetical Listing of Perl Functions +=item Accessing the instance data --I FILEHANDLE, -I EXPR, -I, abs VALUE, abs, accept -NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, -binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless -REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp( -LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER, -chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, -connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT, -dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete -EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, -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 SIGNAL, LIST, -last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, -link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, -lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map -EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget -KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my -TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no -Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct -EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open -FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, -opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : -ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE, -package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, -print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, -printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, -qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, -rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read -FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, -readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, -ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, 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, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split -/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format -parameter index, flags, vector flag, (minimum) width, precision, or maximum -width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat -FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME -(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, -substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, 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, -syswrite FILEHANDLE,SCALAR, 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, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use -Module VERSION LIST, use Module VERSION, use Module LIST, use Module, 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 to build a horse -=back +=item Inheriting the constructor -=back +=item Making a method work with either classes or instances -=head2 perlreftut - Mark's very short tutorial about references +=item Adding parameters to a method -=over 4 +=item More interesting instances -=item DESCRIPTION +=item A horse of a different color -=item Who Needs Complicated Data Structures? +=item Summary -=item The Solution +=back -=item Syntax +=item SEE ALSO -=over 4 +=item COPYRIGHT -=item Making References +=back -=item Using References +=head2 perltoot - Tom's object-oriented tutorial for perl -=item An Example +=over 4 -=item Arrow Rule +=item DESCRIPTION -=back +=item Creating a Class -=item Solution +=over 4 -=item The Rest +=item Object Representation -=item Summary +=item Class Interface -=item Credits +=item Constructors and Instance Methods -=over 4 +=item Planning for the Future: Better Constructors -=item Distribution Conditions +=item Destructors -=back +=item Other Object Methods =back -=head2 perldsc - Perl Data Structures Cookbook +=item Class Data =over 4 -=item DESCRIPTION - -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs - -=item REFERENCES +=item Accessing Class Data -=item COMMON MISTAKES +=item Debugging Methods -=item CAVEAT ON PRECEDENCE +=item Class Destructors -=item WHY YOU SHOULD ALWAYS C +=item Documenting the Interface -=item DEBUGGING +=back -=item CODE EXAMPLES +=item Aggregation -=item ARRAYS OF ARRAYS +=item Inheritance =over 4 -=item Declaration of an ARRAY OF ARRAYS +=item Overridden Methods -=item Generation of an ARRAY OF ARRAYS +=item Multiple Inheritance -=item Access and Printing of an ARRAY OF ARRAYS +=item UNIVERSAL: The Root of All Objects =back -=item HASHES OF ARRAYS +=item Alternate Object Representations =over 4 -=item Declaration of a HASH OF ARRAYS - -=item Generation of a HASH OF ARRAYS +=item Arrays as Objects -=item Access and Printing of a HASH OF ARRAYS +=item Closures as Objects =back -=item ARRAYS OF HASHES +=item AUTOLOAD: Proxy Methods =over 4 -=item Declaration of an ARRAY OF HASHES - -=item Generation of an ARRAY OF HASHES +=item Autoloaded Data Methods -=item Access and Printing of an ARRAY OF HASHES +=item Inherited Autoloaded Data Methods =back -=item HASHES OF HASHES +=item Metaclassical Tools =over 4 -=item Declaration of a HASH OF HASHES - -=item Generation of a HASH OF HASHES +=item Class::Struct -=item Access and Printing of a HASH OF HASHES +=item Data Members as Variables =back -=item MORE ELABORATE RECORDS +=item NOTES =over 4 -=item Declaration of MORE ELABORATE RECORDS +=item Object Terminology -=item Declaration of a HASH OF COMPLEX RECORDS +=back -=item Generation of a HASH OF COMPLEX RECORDS +=item SEE ALSO -=back +=item AUTHOR AND COPYRIGHT -=item Database Ties +=item COPYRIGHT -=item SEE ALSO +=over 4 -=item AUTHOR +=item Acknowledgments =back -=head2 perlrequick - Perl regular expressions quick start +=back + +=head2 perltooc - Tom's OO Tutorial for Class Data in Perl =over 4 =item DESCRIPTION -=item The Guide +=item Class Data in a Can + +=item Class Data as Package Variables =over 4 -=item Simple word matching +=item Putting All Your Eggs in One Basket -=item Using character classes +=item Inheritance Concerns -=item Matching this or that +=item The Eponymous Meta-Object -=item Grouping things and hierarchical matching +=item Indirect References to Class Data -=item Extracting matches +=item Monadic Classes -=item Matching repetitions +=item Translucent Attributes -=item More matching +=back -=item Search and replace +=item Class Data as Lexical Variables -=item The split operator +=over 4 + +=item Privacy and Responsibility + +=item File-Scoped Lexicals + +=item More Inheritance Concerns + +=item Locking the Door and Throwing Away the Key + +=item Translucency Revisited =back -=item BUGS +=item NOTES =item SEE ALSO =item AUTHOR AND COPYRIGHT +=item ACKNOWLEDGEMENTS + +=item HISTORY + +=back + +=head2 perlbot - Bag'o Object Tricks (the BOT) + =over 4 -=item Acknowledgments +=item DESCRIPTION + +=item OO SCALING TIPS + +=item INSTANCE VARIABLES + +=item SCALAR INSTANCE VARIABLES + +=item INSTANCE VARIABLE INHERITANCE + +=item OBJECT RELATIONSHIPS + +=item OVERRIDING SUPERCLASS METHODS + +=item USING RELATIONSHIP WITH SDBM + +=item THINKING OF CODE REUSE + +=item CLASS CONTEXT AND THE OBJECT + +=item INHERITING A CONSTRUCTOR + +=item DELEGATION + +=item SEE ALSO + +=back + +=head2 perlstyle - Perl style guide + +=over 4 + +=item DESCRIPTION + +=back + +=head2 perlcheat - Perl 5 Cheat Sheet + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item The sheet + +=back + +=item ACKNOWLEDGEMENTS + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perltrap - Perl traps for the unwary + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Awk Traps + +=item C/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, Deprecation, Discontinuance, Discontinuance + +=item Parsing Traps + +Parsing, Parsing, Parsing, Parsing, Parsing + +=item Numerical Traps + +Numerical, Numerical, Numerical, Bitwise string ops + +=item General data type traps + +(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), +(Constants), (Scalars), (Variable Suicide) + +=item Context Traps - scalar, list contexts + +(list context), (scalar context), (scalar context), (list, builtin) + +=item Precedence Traps + +Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, +Precedence + +=item General Regular Expression Traps using s///, etc. + +Regular Expression, Regular Expression, Regular Expression, Regular +Expression, Regular Expression, Regular Expression, Regular Expression, +Regular Expression, 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 + +=back + +=head2 perldebtut - Perl debugging tutorial + +=over 4 + +=item DESCRIPTION + +=item use strict + +=item Looking at data and -w and v + +=item help + +=item Stepping through code + +=item Placeholder for a, w, t, T + +=item REGULAR EXPRESSIONS + +=item OUTPUT TIPS + +=item CGI + +=item GUIs + +=item SUMMARY + +=item SEE ALSO + +=item AUTHOR + +=item CONTRIBUTORS + +=back + +=head2 perlfaq - frequently asked questions about Perl ($Date: 2004/10/05 +22:15:44 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Where to get the perlfaq + +=item How to contribute to the perlfaq + +=item What will happen if you mail your Perl programming problems to the +authors + +=back + +=item Credits + +=item Author and Copyright Information + +=over 4 + +=item Bundled Distributions + +=item Disclaimer + +=back + +=item Table of Contents + +perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2 +- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4 +- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular +Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System +Interaction, perlfaq9 - Networking + +=item The Questions + +=over 4 + +=item L: General Questions About Perl + +=item L: Obtaining and Learning about Perl + +=item L: Programming Tools + +=item L: Data Manipulation + +=item L: Files and Formats + +=item L: Regular Expressions + +=item L: General Perl Language Issues + +=item L: System Interaction + +=item L: Networking + +=back + +=back + +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.15 $, $Date: +2004/10/11 05:06:29 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item What is Perl? + +=item Who supports Perl? Who develops it? Why is it free? + +=item Which version of Perl should I use? + +=item What are perl4 and perl5? + +=item What is Ponie? + +=item What is perl6? + +=item How stable is Perl? + +=item Is Perl difficult to learn? + +=item How does Perl compare with other languages like Java, Python, REXX, +Scheme, or Tcl? + +=item Can I do [task] in Perl? + +=item When shouldn't I program in Perl? + +=item What's the difference between "perl" and "Perl"? + +=item Is it a Perl program or a Perl script? + +=item What is a JAPH? + +=item Where can I get a list of Larry Wall witticisms? + +=item How can I convince my sysadmin/supervisor/employees to use version +5/5.6.1/Perl instead of some other language? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.29 $, +$Date: 2004/10/25 18:37:23 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item What machines support Perl? Where do I get it? + +=item How can I get a binary version of Perl? + +=item I don't have a C compiler on my system. How can I compile perl? + +=item I copied the Perl binary from one machine to another, but scripts +don't work. + +=item I grabbed the sources and tried to compile but gdbm/dynamic +loading/malloc/linking/... failed. How do I make it work? + +=item What modules and extensions are available for Perl? What is CPAN? +What does CPAN/src/... mean? + +=item Is there an ISO or ANSI certified version of Perl? + +=item Where can I get information on Perl? + +=item What are the Perl newsgroups on Usenet? Where do I post questions? + +=item Where should I post source code? + +=item Perl Books + +References, Tutorials, Task-Oriented, Special Topics + +=item Perl in Magazines + +=item Perl on the Net: FTP and WWW Access + +=item What mailing lists are there for Perl? + +=item Archives of comp.lang.perl.misc + +=item Where can I buy a commercial version of Perl? + +=item Where do I send bug reports? + +=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq3 - Programming Tools ($Revision: 1.41 $, $Date: 2004/11/03 +22:45:32 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item How do I do (anything)? + +=item How can I use Perl interactively? + +=item Is there a Perl shell? + +=item How do I find which modules are installed on my system? + +=item How do I debug my Perl programs? + +=item How do I profile my Perl programs? + +=item How do I cross-reference my Perl programs? + +=item Is there a pretty-printer (formatter) for Perl? + +=item Is there a ctags for Perl? + +=item Is there an IDE or Windows Perl Editor? + +Eclipse, Komodo, Open Perl IDE, OptiPerl, PerlBuilder, visiPerl+, Visual +Perl, GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright, +MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, Affrus, Alpha, BBEdit and +BBEdit Lite + +=item Where can I get Perl macros for vi? + +=item Where can I get perl-mode for emacs? + +=item How can I use curses with Perl? + +=item How can I use X or Tk with Perl? + +=item How can I generate simple menus without using CGI or Tk? + +=item How can I make my Perl program run faster? + +=item How can I make my Perl program take less memory? + +Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and +stringification, Pass by reference, Tie large variables to disk + +=item Is it safe to return a reference to local or lexical data? + +=item How can I free an array or hash so my program shrinks? + +=item How can I make my CGI script more efficient? + +=item How can I hide the source for my Perl program? + +=item How can I compile my Perl program into byte code or C? + +=item How can I compile Perl into Java? + +=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? + +=item Can I write useful Perl programs on the command line? + +=item Why don't Perl one-liners work on my DOS/Mac/VMS system? + +=item Where can I learn about CGI or Web programming in Perl? + +=item Where can I learn about object-oriented Perl programming? + +=item Where can I learn about linking C with Perl? [h2xs, xsubpp] + +=item I've read perlembed, perlguts, etc., but I can't embed perl in +my C program; what am I doing wrong? + +=item When I tried to run my script, I got this message. What does it mean? + +=item What's MakeMaker? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq4 - Data Manipulation ($Revision: 1.56 $, $Date: 2004/11/03 +22:47:56 $) + +=over 4 + +=item DESCRIPTION + +=item Data: Numbers + +=over 4 + +=item Why am I getting long decimals (eg, 19.9499999999999) instead of the +numbers I should be getting (eg, 19.95)? + +=item Why is int() broken? + +=item Why isn't my octal data interpreted correctly? + +=item Does Perl have a round() function? What about ceil() and floor()? +Trig functions? + +=item How do I convert between numeric representations/bases/radixes? + +How do I convert hexadecimal into decimal, How do I convert from decimal to +hexadecimal, How do I convert from octal to decimal, How do I convert from +decimal to octal, How do I convert from binary to decimal, How do I convert +from decimal to binary + +=item Why doesn't & work the way I want it to? + +=item How do I multiply matrices? + +=item How do I perform an operation on a series of integers? + +=item How can I output Roman numerals? + +=item Why aren't my random numbers random? + +=item How do I get a random number between X and Y? + +=back + +=item Data: Dates + +=over 4 + +=item How do I find the day or week of the year? + +=item How do I find the current century or millennium? + +=item How can I compare two dates and find the difference? + +=item How can I take a string and turn it into epoch seconds? + +=item How can I find the Julian Day? + +=item How do I find yesterday's date? -=back +=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? =back -=head2 perlpod - the Plain Old Documentation format +=item Data: Strings =over 4 -=item DESCRIPTION - -=over 4 +=item How do I validate input? -=item Ordinary Paragraph +=item How do I unescape a string? -=item Verbatim Paragraph +=item How do I remove consecutive pairs of characters? -=item Command Paragraph +=item How do I expand function calls in a string? -C<=head1 I>, C<=head2 I>, C<=head3 I>, C<=head4 I>, C<=over I>, C<=item -I>, C<=back>, C<=cut>, C<=pod>, C<=begin I>, C<=end -I>, C<=for I I> +=item How do I find matching/nesting anything? -=item Formatting Codes +=item How do I reverse a string? -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CfilenameE> -- used -for filenames, CtextE> -- text contains non-breaking spaces, -Ctopic nameE> -- an index entry, CE> -- a null -(zero-effect) formatting code +=item How do I expand tabs in a string? -=item The Intent +=item How do I reformat a paragraph? -=item Embedding Pods in Perl Modules +=item How can I access or change N characters of a string? -=item Hints for Writing Pod +=item How do I change the Nth occurrence of something? -=back +=item How can I count the number of occurrences of a substring within a +string? -=item SEE ALSO +=item How do I capitalize all the words on one line? -=item AUTHOR +=item How can I split a [character] delimited string except when inside +[character]? -=back +=item How do I strip blank space from the beginning/end of a string? -=head2 perlpodspec - Plain Old Documentation: format specification and -notes +=item How do I pad a string with blanks or pad a number with zeroes? -=over 4 +=item How do I extract selected columns from a string? -=item DESCRIPTION +=item How do I find the soundex value of a string? -=item Pod Definitions +=item How can I expand variables in text strings? -=item Pod Commands +=item What's wrong with always quoting "$vars"? -"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", -"=back", "=begin formatname", "=end formatname", "=for formatname text..." +=item Why don't my EEHERE documents work? -=item Pod Formatting Codes +There must be no space after the EE part, There (probably) should +be a semicolon at the end, You can't (easily) have any space in front of +the tag -CtextE> -- italic text, CtextE> -- bold text, -CcodeE> -- code text, CfilenameE> -- style for -filenames, Ctopic nameE> -- an index entry, CE> -- a -null (zero-effect) formatting code, CnameE> -- a hyperlink, -CescapeE> -- a character escape, CtextE> -- text -contains non-breaking spaces +=back -=item Notes on Implementing Pod Processors +=item Data: Arrays -=item About LE...E Codes +=over 4 -First:, Second:, Third:, Fourth:, Fifth:, Sixth: +=item What is the difference between a list and an array? -=item About =over...=back Regions +=item What is the difference between $array[1] and @array[1]? -=item About Data Paragraphs and "=begin/=end" Regions +=item How can I remove duplicate elements from a list or array? -=item SEE ALSO +a), b), c), d), e) -=item AUTHOR +=item How can I tell whether a certain element is contained in a list or +array? -=back +=item How do I compute the difference of two arrays? How do I compute the +intersection of two arrays? -=head2 perlstyle - Perl style guide +=item How do I test whether two arrays or hashes are equal? -=over 4 +=item How do I find the first array element for which a condition is true? -=item DESCRIPTION +=item How do I handle linked lists? -=back +=item How do I handle circular lists? -=head2 perltrap - Perl traps for the unwary +=item How do I shuffle an array randomly? -=over 4 +=item How do I process/modify each element of an array? -=item DESCRIPTION +=item How do I select a random element from an array? -=over 4 +=item How do I permute N elements of a list? -=item Awk Traps +=item How do I sort an array by (anything)? -=item C/C++ Traps +=item How do I manipulate arrays of bits? -=item Sed Traps +=item Why does defined() return true on empty arrays and hashes? -=item Shell Traps +=back -=item Perl Traps +=item Data: Hashes (Associative Arrays) -=item Perl4 to Perl5 Traps +=over 4 -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 How do I process an entire hash? -=item Discontinuance, Deprecation, and BugFix traps +=item What happens if I add or remove keys from a hash while iterating over +it? -Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, -Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, -Discontinuance, Deprecation, Discontinuance, Discontinuance +=item How do I look up a hash element by value? -=item Parsing Traps +=item How can I know how many entries are in a hash? -Parsing, Parsing, Parsing, Parsing, Parsing +=item How do I sort a hash (optionally by value instead of key)? -=item Numerical Traps +=item How can I always keep my hash sorted? -Numerical, Numerical, Numerical, Bitwise string ops +=item What's the difference between "delete" and "undef" with hashes? -=item General data type traps +=item Why don't my tied hashes make the defined/exists distinction? -(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), -(Constants), (Scalars), (Variable Suicide) +=item How do I reset an each() operation part-way through? -=item Context Traps - scalar, list contexts +=item How can I get the unique keys from two hashes? -(list context), (scalar context), (scalar context), (list, builtin) +=item How can I store a multidimensional array in a DBM file? -=item Precedence Traps +=item How can I make my hash remember the order I put elements into it? -Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, -Precedence +=item Why does passing a subroutine an undefined element in a hash create +it? -=item General Regular Expression Traps using s///, etc. +=item How can I make the Perl equivalent of a C structure/C++ class/hash or +array of hashes or arrays? -Regular Expression, Regular Expression, Regular Expression, Regular -Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +=item How can I use a reference as a hash key? -=item Subroutine, Signal, Sorting Traps +=back -(Signals), (Sort Subroutine), warn() won't let you specify a filehandle +=item Data: Misc -=item OS Traps +=over 4 -(SysV), (SysV) +=item How do I handle binary data correctly? -=item Interpolation Traps +=item How do I determine whether a scalar is a number/whole/integer/float? -Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, -Interpolation, Interpolation, Interpolation, Interpolation +=item How do I keep persistent data across program calls? -=item DBM Traps +=item How do I print out or copy a recursive data structure? -DBM, DBM +=item How do I define methods for every class/object? -=item Unclassified Traps +=item How do I verify a credit card checksum? -C/C trap using returned value, C on empty string with -LIMIT specified +=item How do I pack arrays of doubles or floats for XS code? =back +=item AUTHOR AND COPYRIGHT + =back -=head2 perlrun - how to execute the Perl interpreter +=head2 perlfaq5 - Files and Formats ($Revision: 1.31 $, $Date: 2004/02/07 +04:29:50 $) =over 4 -=item SYNOPSIS - =item DESCRIPTION =over 4 -=item #! and quoting on non-Unix systems +=item How do I flush/unbuffer an output filehandle? Why must I do this? -OS/2, MS-DOS, Win95/NT, Macintosh, VMS +=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 Location of Perl +=item How do I count the number of lines in a file? -=item Command Switches +=item How can I use Perl's C<-i> option from within a program? -B<-0>[I], B<-a>, B<-C [I]>, 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<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, -B<-X>, B<-x> I +=item How do I make a temporary file name? -=back +=item How can I manipulate fixed-record-length files? -=item ENVIRONMENT +=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? -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap, -:perlio, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB, -PERL5DB, PERL5SHELL (specific to the Win32 port), PERL_DEBUG_MSTATS, -PERL_DESTRUCT_LEVEL, PERL_ENCODING, PERL_ROOT (specific to the VMS port), -PERL_SIGNALS, PERL_UNICODE, SYS$LOGIN (specific to the VMS port) +=item How can I use a filehandle indirectly? -=back +=item How can I set up a footer format to be used with write()? -=head2 perldiag - various Perl diagnostics +=item How can I write() into a string? -=over 4 +=item How can I output my numbers with commas added? -=item DESCRIPTION +=item How can I translate tildes (~) in a filename? -=back +=item How come when I open a file read-write it wipes it out? -=head2 perllexwarn - Perl Lexical Warnings +=item Why do I sometimes get an "Argument list too long" when I use +E*E? -=over 4 +=item Is there a leak/bug in glob()? -=item DESCRIPTION +=item How can I open a file with a leading ">" or trailing blanks? -=over 4 +=item How can I reliably rename a file? -=item Default Warnings and Optional Warnings +=item How can I lock a file? -=item What's wrong with B<-w> and C<$^W> +=item Why can't I just open(FH, "Efile.lock")? -=item Controlling Warnings from the Command Line +=item I still don't get locking. I just want to increment the number in +the file. How can I do this? -B<-w>, B<-W>, B<-X> +=item All I want to do is append a small amount of text to the end of a +file. Do I still have to use locking? -=item Backward Compatibility +=item How do I randomly update a binary file? -=item Category Hierarchy +=item How do I get a file's timestamp in perl? -=item Fatal Warnings +=item How do I set a file's timestamp in perl? -=item Reporting Warnings from a Module +=item How do I print to more than one file at once? -=back +=item How can I read in an entire file all at once? -=item TODO +=item How can I read in a file by paragraphs? -=item SEE ALSO +=item How can I read a single character from a file? From the keyboard? -=item AUTHOR +=item How can I tell whether there's a character waiting on a filehandle? -=back +=item How do I do a C in perl? -=head2 perldebtut - Perl debugging tutorial +=item How do I dup() a filehandle in Perl? + +=item How do I close a file descriptor by number? + +=item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't +`C:\temp\foo.exe` work? -=over 4 +=item Why doesn't glob("*.*") get all the files? -=item DESCRIPTION +=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 use strict +=item How do I select a random line from a file? -=item Looking at data and -w and v +=item Why do I get weird spaces when I print an array of lines? -=item help +=back -=item Stepping through code +=item AUTHOR AND COPYRIGHT -=item Placeholder for a, w, t, T +=back -=item REGULAR EXPRESSIONS +=head2 perlfaq6 - Regular Expressions ($Revision: 1.27 $, $Date: 2004/11/03 +22:52:16 $) -=item OUTPUT TIPS +=over 4 -=item CGI +=item DESCRIPTION -=item GUIs +=over 4 -=item SUMMARY +=item How can I hope to use regular expressions without creating illegible +and unmaintainable code? -=item SEE ALSO +Comments Outside the Regex, Comments Inside the Regex, Different Delimiters -=item AUTHOR +=item I'm having trouble matching over more than one line. What's wrong? -=item CONTRIBUTORS +=item How can I pull out lines between two patterns that are themselves on +different lines? -=back +=item I put a regular expression into $/ but it didn't work. What's wrong? -=head2 perldebug - Perl debugging +=item How do I substitute case insensitively on the LHS while preserving +case on the RHS? -=over 4 +=item How can I make C<\w> match national character sets? -=item DESCRIPTION +=item How can I match a locale-smart version of C? -=item The Perl Debugger +=item How can I quote a variable to use in a regex? -=over 4 +=item What is C really for? -=item Debugger Commands +=item How do I use a regular expression to strip C style comments from a +file? -h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y -[level [vars]], T, s [expr], n [expr], r, , c [line|sub], l, l -min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/, -?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b -subname [condition], b postpone subname [condition], b load filename, b -compile subname, B line, B *, a [line] command, A line, A *, w expr, W -expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [ -command ], < *, << command, > ?, > command, > *, >> command, { ?, { [ -command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source -file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man -[manpage] +=item Can I use Perl regular expressions to match balanced text? -=item Configurable Options +=item What does it mean that regexes are greedy? How can I get around it? -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, C, -C +=item How do I process each word on each line? -=item Debugger input/output +=item How can I print out a word-frequency or line-frequency summary? -Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame -listing +=item How can I do approximate matching? -=item Debugging compile-time statements +=item How do I efficiently match many regular expressions at once? -=item Debugger Customization +=item Why don't word-boundary searches with C<\b> work for me? -=item Readline Support +=item Why does using $&, $`, or $' slow my program down? -=item Editor Support for Debugging +=item What good is C<\G> in a regular expression? -=item The Perl Profiler +=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? -=back +=item What's wrong with using grep in a void context? -=item Debugging regular expressions +=item How can I match strings with multibyte characters? -=item Debugging memory usage +=item How do I match a pattern that is supplied by the user? -=item SEE ALSO +=back -=item BUGS +=item AUTHOR AND COPYRIGHT =back -=head2 perlvar - Perl predefined variables +=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.18 $, $Date: +2004/11/03 22:54:08 $) =over 4 @@ -1014,366 +1413,348 @@ listing =over 4 -=item Predefined Names +=item Can I get a BNF/yacc/RE for the Perl language? -$ARG, $_, $a, $b, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*, -HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $, -IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/, -HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|, -IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, -IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, -$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, -HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%, -HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=, -HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, -@-, C<$`> is the same as C, C<$&> is the same as -C, C<$'> is the same as C, C<$1> is the same as C, C<$2> -is the same as C, C<$3> is the same as -C, HANDLE->format_name(EXPR), -$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, -IO::Handle->format_line_break_characters EXPR, -$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, -$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, -$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, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, -$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, -${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, -0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, -$BASETIME, $^T, ${^TAINT}, ${^UNICODE}, $PERL_VERSION, $^V, $WARNING, $^W, -${^WARNING_BITS}, $EXECUTABLE_NAME, $^X, ARGV, $ARGV, @ARGV, ARGVOUT, @F, -@INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr} +=item What are all these $@%&* punctuation signs, and how do I know when to +use them? -=item Error Indicators +=item Do I always/never have to quote my strings or use semicolons and +commas? -=item Technical Note on the Syntax of Variable Names +=item How do I skip some return values? -=back +=item How do I temporarily block warnings? -=item BUGS +=item What's an extension? -=back +=item Why do Perl operators have different precedence than C operators? -=head2 perllol - Manipulating Arrays of Arrays in Perl +=item How do I declare/create a structure? -=over 4 +=item How do I create a module? -=item DESCRIPTION +=item How do I create a class? -=over 4 +=item How can I tell if a variable is tainted? -=item Declaration and Access of Arrays of Arrays +=item What's a closure? -=item Growing Your Own +=item What is variable suicide and how can I prevent it? -=item Access and Printing +=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, +Regex}? -=item Slices +Passing Variables and Functions, Passing Filehandles, Passing Regexes, +Passing Methods -=back +=item How do I create a static variable? -=item SEE ALSO +=item What's the difference between dynamic and lexical (static) scoping? +Between local() and my()? -=item AUTHOR +=item How can I access a dynamic variable while a similarly named lexical +is in scope? -=back +=item What's the difference between deep and shallow binding? -=head2 perlopentut - tutorial on opening things in Perl +=item Why doesn't "my($foo) = EFILEE;" work right? -=over 4 +=item How do I redefine a builtin function, operator, or method? -=item DESCRIPTION +=item What's the difference between calling a function as &foo and foo()? -=item Open E la shell +=item How do I create a switch or case statement? -=over 4 +=item How can I catch accesses to undefined variables, functions, or +methods? -=item Simple Opens +=item Why can't a method included in this same file be found? -=item Indirect Filehandles +=item How can I find out my current package? -=item Pipe Opens +=item How can I comment out a large block of perl code? -=item The Minus File +=item How do I clear a package? -=item Mixing Reads and Writes +=item How can I use a variable as a variable name? -=item Filters +=item What does "bad interpreter" mean? =back -=item Open E la C +=item AUTHOR AND COPYRIGHT -=over 4 +=back -=item Permissions E la mode +=head2 perlfaq8 - System Interaction ($Revision: 1.22 $, $Date: 2004/10/05 +22:13:49 $) -=back +=over 4 -=item Obscure Open Tricks +=item DESCRIPTION =over 4 -=item Re-Opening Files (dups) +=item How do I find out which operating system I'm running under? -=item Dispelling the Dweomer +=item How come exec() doesn't return? -=item Paths as Opens +=item How do I do fancy stuff with the keyboard/screen/mouse? -=item Single Argument Open +Keyboard, Screen, Mouse -=item Playing with STDIN and STDOUT +=item How do I print something out in color? -=back +=item How do I read just one key without waiting for a return key? -=item Other I/O Issues +=item How do I check whether input is ready on the keyboard? -=over 4 +=item How do I clear the screen? -=item Opening Non-File Files +=item How do I get the screen size? -=item Opening Named Pipes +=item How do I ask the user for a password? -=item Opening Sockets +=item How do I read and write the serial port? -=item Binary Files +lockfiles, open mode, end of line, flushing output, non-blocking input -=item File Locking +=item How do I decode encrypted password files? -=item IO Layers +=item How do I start a process in the background? -=back +STDIN, STDOUT, and STDERR are shared, Signals, Zombies -=item SEE ALSO +=item How do I trap control characters/signals? -=item AUTHOR and COPYRIGHT +=item How do I modify the shadow password file on a Unix system? -=item HISTORY +=item How do I set the time and date? -=back +=item How can I sleep() or alarm() for under a second? -=head2 perlpacktut - tutorial on C and C +=item How can I measure time under a second? -=over 4 +=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 The Basic Principle +=item How can I call my system's unique C functions from Perl? -=item Packing Text +=item Where do I get the include files to do ioctl() or syscall()? -=item Packing Numbers +=item Why do setuid perl scripts complain about kernel problems? -=over 4 +=item How can I open a pipe both to and from a command? -=item Integers +=item Why can't I get the output of a command with system()? -=item Unpacking a Stack Frame +=item How can I capture STDERR from an external command? -=item How to Eat an Egg on a Net +=item Why doesn't open() return an error when a pipe open fails? -=item Floating point Numbers +=item What's wrong with using backticks in a void context? -=back +=item How can I call backticks without shell processing? -=item Exotic Templates +=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, +^Z on MS-DOS)? -=over 4 +=item How can I convert my shell script to perl? -=item Bit Strings +=item Can I use perl to run a telnet or ftp session? -=item Uuencoding +=item How can I write expect in Perl? -=item Doing Sums +=item Is there a way to hide perl's command line from programs such as +"ps"? -=item Unicode +=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 Another Portable Binary Encoding +Unix -=back +=item How do I close a process's filehandle without waiting for it to +complete? -=item Template Grouping +=item How do I fork a daemon process? -=item Lengths and Widths +=item How do I find out if I'm running interactively or not? -=over 4 +=item How do I timeout a slow event? -=item String Lengths +=item How do I set CPU limits? -=item Dynamic Templates +=item How do I avoid zombies on a Unix system? -=item Counting Repetitions +=item How do I use an SQL database? -=back +=item How do I make a system() exit on control-C? -=item Packing and Unpacking C Structures +=item How do I open a file without blocking? -=over 4 +=item How do I tell the difference between errors from the shell and perl? -=item The Alignment Pit +=item How do I install a module from CPAN? -=item Alignment, Take 2 +=item What's the difference between require and use? -=item Alignment, Take 3 +=item How do I keep my own module/library directory? -=item Pointers for How to Use Them +=item How do I add the directory my program lives in to the module/library +search path? -=back +=item How do I add a directory to my include path (@INC) at runtime? -=item Pack Recipes +=item What is socket.ph and where do I get it? -=item Funnies Section +=back -=item Authors +=item AUTHOR AND COPYRIGHT =back -=head2 perlretut - Perl regular expressions tutorial +=head2 perlfaq9 - Networking ($Revision: 1.16 $, $Date: 2004/10/30 12:20:59 +$) =over 4 =item DESCRIPTION -=item Part 1: The basics - =over 4 -=item Simple word matching +=item What is the correct form of response from a CGI script? -=item Using character classes +=item My CGI script runs from the command line but not the browser. (500 +Server Error) -=item Matching this or that +=item How can I get better error messages from a CGI program? -=item Grouping things and hierarchical matching +=item How do I remove HTML from a string? -=item Extracting matches +=item How do I extract URLs? -=item Matching repetitions +=item How do I download a file from the user's machine? How do I open a +file on another machine? -=item Building a regexp +=item How do I make a pop-up menu in HTML? -=item Using regular expressions in Perl +=item How do I fetch an HTML file? -=back +=item How do I automate an HTML form submission? -=item Part 2: Power tools +=item How do I decode or create those %-encodings on the web? -=over 4 +=item How do I redirect to another page? -=item More on characters, strings, and character classes +=item How do I put a password on my web pages? -=item Compiling and saving regular expressions +=item How do I edit my .htpasswd and .htgroup files with Perl? -=item Embedding comments and modifiers in a regular expression +=item How do I make sure users can't enter values into a form that cause my +CGI script to do bad things? -=item Non-capturing groupings +=item How do I parse a mail header? -=item Looking ahead and looking behind +=item How do I decode a CGI form? -=item Using independent subexpressions to prevent backtracking +=item How do I check a valid mail address? -=item Conditional expressions +=item How do I decode a MIME/BASE64 string? -=item A bit of magic: executing Perl code in a regular expression +=item How do I return the user's mail address? -=item Pragmas and debugging +=item How do I send mail? -=back +=item How do I use MIME to make an attachment to a mail message? -=item BUGS +=item How do I read mail? -=item SEE ALSO +=item How do I find out my hostname/domainname/IP address? -=item AUTHOR AND COPYRIGHT +=item How do I fetch a news article or the active newsgroups? -=over 4 +=item How do I fetch/put an FTP file? -=item Acknowledgments +=item How can I do RPC in Perl? =back +=item AUTHOR AND COPYRIGHT + =back -=head2 perlre - Perl regular expressions +=head2 perlsyn - Perl syntax =over 4 =item DESCRIPTION -i, m, s, x - =over 4 -=item Regular Expressions +=item Declarations -[1], [2], [3], cntrl, graph, print, punct, xdigit +=item Comments -=item Extended Patterns +=item Simple Statements -C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, -C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?, C<(?{ -code })>, C<(??{ code })>, C<< (?>pattern) >>, -C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> +=item Truth and Falsehood -=item Backtracking +=item Statement Modifiers -=item Version 8 Regular Expressions +=item Compound Statements -=item Warning on \1 vs $1 +=item Loop Control -=item Repeated patterns matching zero-length substring +=item For Loops -=item Combining pieces together +=item Foreach Loops -C, C, C, C, C, C, -C, C, C, C, C, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, -C<(?!S)>, C<(?, C<(??{ EXPR })>, -C<(?(condition)yes-pattern|no-pattern)> +=item Basic BLOCKs and Switch Statements -=item Creating custom RE engines +=item Goto -=back +=item PODs: Embedded Documentation -=item BUGS +=item Plain Old Comments (Not!) -=item SEE ALSO +=back =back -=head2 perlref - Perl references and nested data structures +=head2 perldata - Perl data types =over 4 -=item NOTE - =item DESCRIPTION =over 4 -=item Making References +=item Variable names -=item Using References +=item Context -=item Symbolic references +=item Scalar values -=item Not-so-symbolic references +=item Scalar value constructors -=item Pseudo-hashes: Using an array as a hash +=item List value constructors -=item Function Templates +=item Subscripts -=back +=item Slices -=item WARNING +=item Typeglobs and Filehandles + +=back =item SEE ALSO =back -=head2 perlform - Perl formats +=head2 perlop - Perl operators and precedence =over 4 @@ -1381,1677 +1762,1825 @@ C<(?(condition)yes-pattern|no-pattern)> =over 4 -=item Format Variables +=item Operator Precedence and Associativity -=back +=item Terms and List Operators (Leftward) -=item NOTES +=item The Arrow Operator -=over 4 +=item Auto-increment and Auto-decrement -=item Footers +=item Exponentiation -=item Accessing Formatting Internals +=item Symbolic Unary Operators -=back +=item Binding Operators -=item WARNINGS +=item Multiplicative Operators -=back +=item Additive Operators -=head2 perlboot - Beginner's Object-Oriented Tutorial +=item Shift Operators -=over 4 +=item Named Unary Operators -=item DESCRIPTION +=item Relational Operators -=over 4 +=item Equality Operators -=item If we could talk to the animals... +=item Bitwise And -=item Introducing the method invocation arrow +=item Bitwise Or and Exclusive Or -=item Invoking a barnyard +=item C-style Logical And -=item The extra parameter of method invocation +=item C-style Logical Or -=item Calling a second method to simplify things +=item C-style Logical Defined-Or -=item Inheriting the windpipes +=item Range Operators -=item A few notes about @ISA +=item Conditional Operator -=item Overriding the methods +=item Assignment Operators -=item Starting the search from a different place +=item Comma Operator -=item The SUPER way of doing things +=item List Operators (Rightward) -=item Where we're at so far... +=item Logical Not -=item A horse is a horse, of course of course -- or is it? +=item Logical And -=item Invoking an instance method +=item Logical or, Defined or, and Exclusive Or -=item Accessing the instance data +=item C Operators Missing From Perl -=item How to build a horse +unary &, unary *, (TYPE) -=item Inheriting the constructor +=item Quote and Quote-like Operators -=item Making a method work with either classes or instances +=item Regexp Quote-Like Operators -=item Adding parameters to a method +?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, +qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, +s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, +y/SEARCHLIST/REPLACEMENTLIST/cds, <, C, C, C, C, C<''>, C, C<"">, +C<``>, C, C, C<< >>, C, C, C, +C,, Interpolation of regular expressions, Optimization of +regular expressions -=item Summary +=item I/O Operators + +=item Constant Folding + +=item No-ops + +=item Bitwise String Operators + +=item Integer Arithmetic -=back +=item Floating-point Arithmetic -=item SEE ALSO +=item Bigger Numbers -=item COPYRIGHT +=back =back -=head2 perltoot - Tom's object-oriented tutorial for perl +=head2 perlsub - Perl subroutines =over 4 -=item DESCRIPTION +=item SYNOPSIS -=item Creating a Class +=item DESCRIPTION =over 4 -=item Object Representation +=item Private Variables via my() -=item Class Interface +=item Persistent Private Variables -=item Constructors and Instance Methods +=item Temporary Values via local() -=item Planning for the Future: Better Constructors +=item Lvalue subroutines -=item Destructors +Lvalue subroutines are EXPERIMENTAL -=item Other Object Methods +=item Passing Symbol Table Entries (typeglobs) -=back +=item When to Still Use local() -=item Class Data +=item Pass by Reference -=over 4 +=item Prototypes -=item Accessing Class Data +=item Constant Functions -=item Debugging Methods +=item Overriding Built-in Functions -=item Class Destructors +=item Autoloading -=item Documenting the Interface +=item Subroutine Attributes =back -=item Aggregation - -=item Inheritance - -=over 4 - -=item Overridden Methods - -=item Multiple Inheritance - -=item UNIVERSAL: The Root of All Objects +=item SEE ALSO =back -=item Alternate Object Representations +=head2 perlfunc - Perl builtin functions =over 4 -=item Arrays as Objects - -=item Closures as Objects - -=back - -=item AUTOLOAD: Proxy Methods +=item DESCRIPTION =over 4 -=item Autoloaded Data Methods - -=item Inherited Autoloaded Data Methods +=item Perl Functions by Category -=back +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 Metaclassical Tools +=item Portability -=over 4 +=item Alphabetical Listing of Perl Functions -=item Class::Struct +-I FILEHANDLE, -I EXPR, -I, abs VALUE, abs, accept +NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, +binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless +REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp( +LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER, +chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE, +connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT, +dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete +EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump, +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 SIGNAL, LIST, +last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, +link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, +lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK LIST, map +EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl ID,CMD,ARG, msgget +KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd ID,MSG,FLAGS, my EXPR, my +TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS, next LABEL, next, no +Module VERSION LIST, no Module VERSION, no Module LIST, no Module, oct +EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,MODE,EXPR, open +FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, +opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : +ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST, package NAMESPACE, +package, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, +print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, +printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, +qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, +rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read +FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, +readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, +ref EXPR, ref, rename OLDNAME,NEWNAME, require VERSION, 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, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split +/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format +parameter index, flags, vector flag, (minimum) width, precision, or maximum +width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat +FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME +(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, +substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr +EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall NUMBER, 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, +syswrite FILEHANDLE,SCALAR, 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, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use +Module VERSION LIST, use Module VERSION, use Module LIST, use Module, use +VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid +PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y/// -=item Data Members as Variables +=back =back -=item NOTES +=head2 perlopentut - tutorial on opening things in Perl =over 4 -=item Object Terminology +=item DESCRIPTION -=back +=item Open E la shell -=item SEE ALSO +=over 4 -=item AUTHOR AND COPYRIGHT +=item Simple Opens -=item COPYRIGHT +=item Indirect Filehandles -=over 4 +=item Pipe Opens -=item Acknowledgments +=item The Minus File -=back +=item Mixing Reads and Writes + +=item Filters =back -=head2 perltooc - Tom's OO Tutorial for Class Data in Perl +=item Open E la C =over 4 -=item DESCRIPTION +=item Permissions E la mode -=item Class Data in a Can +=back -=item Class Data as Package Variables +=item Obscure Open Tricks =over 4 -=item Putting All Your Eggs in One Basket - -=item Inheritance Concerns +=item Re-Opening Files (dups) -=item The Eponymous Meta-Object +=item Dispelling the Dweomer -=item Indirect References to Class Data +=item Paths as Opens -=item Monadic Classes +=item Single Argument Open -=item Translucent Attributes +=item Playing with STDIN and STDOUT =back -=item Class Data as Lexical Variables +=item Other I/O Issues =over 4 -=item Privacy and Responsibility - -=item File-Scoped Lexicals +=item Opening Non-File Files -=item More Inheritance Concerns +=item Opening Named Pipes -=item Locking the Door and Throwing Away the Key +=item Opening Sockets -=item Translucency Revisited +=item Binary Files -=back +=item File Locking -=item NOTES +=item IO Layers -=item SEE ALSO +=back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO -=item ACKNOWLEDGEMENTS +=item AUTHOR and COPYRIGHT =item HISTORY =back -=head2 perlobj - Perl objects +=head2 perlpacktut - tutorial on C and C =over 4 =item DESCRIPTION +=item The Basic Principle + +=item Packing Text + +=item Packing Numbers + =over 4 -=item An Object is Simply a Reference +=item Integers -=item A Class is Simply a Package +=item Unpacking a Stack Frame -=item A Method is Simply a Subroutine +=item How to Eat an Egg on a Net -=item Method Invocation +=item Byte-order modifiers -=item Indirect Object Syntax +=item Floating point Numbers -=item Default UNIVERSAL methods +=back -isa(CLASS), can(METHOD), VERSION( [NEED] ) +=item Exotic Templates -=item Destructors +=over 4 -=item Summary +=item Bit Strings -=item Two-Phased Garbage Collection +=item Uuencoding -=back +=item Doing Sums -=item SEE ALSO +=item Unicode + +=item Another Portable Binary Encoding =back -=head2 perlbot - Bag'o Object Tricks (the BOT) +=item Template Grouping + +=item Lengths and Widths =over 4 -=item DESCRIPTION +=item String Lengths -=item OO SCALING TIPS +=item Dynamic Templates -=item INSTANCE VARIABLES +=item Counting Repetitions -=item SCALAR INSTANCE VARIABLES +=back -=item INSTANCE VARIABLE INHERITANCE +=item Packing and Unpacking C Structures -=item OBJECT RELATIONSHIPS +=over 4 -=item OVERRIDING SUPERCLASS METHODS +=item The Alignment Pit -=item USING RELATIONSHIP WITH SDBM +=item Dealing with Endian-ness -=item THINKING OF CODE REUSE +=item Alignment, Take 2 -=item CLASS CONTEXT AND THE OBJECT +=item Alignment, Take 3 -=item INHERITING A CONSTRUCTOR +=item Pointers for How to Use Them -=item DELEGATION +=back -=item SEE ALSO +=item Pack Recipes + +=item Funnies Section + +=item Authors =back -=head2 perltie - how to hide an object class in a simple variable +=head2 perlpod - the Plain Old Documentation format =over 4 -=item SYNOPSIS - =item DESCRIPTION =over 4 -=item Tying Scalars - -TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this, -DESTROY this +=item Ordinary Paragraph -=item Tying Arrays +=item Verbatim Paragraph -TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, -FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, -key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this, -UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY -this +=item Command Paragraph -=item Tying Hashes +C<=head1 I>, C<=head2 I>, C<=head3 I>, C<=head4 I>, C<=over I>, C<=item +I>, C<=back>, C<=cut>, C<=pod>, C<=begin I>, C<=end +I>, C<=for I I>, C<=encoding +I> -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, UNTIE this, DESTROY this +=item Formatting Codes -=item Tying FileHandles +CtextE> -- italic text, CtextE> -- bold text, +CcodeE> -- code text, CnameE> -- a hyperlink, +CescapeE> -- a character escape, CfilenameE> -- used +for filenames, CtextE> -- text contains non-breaking spaces, +Ctopic nameE> -- an index entry, CE> -- a null +(zero-effect) formatting code -TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, -LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this, -DESTROY this +=item The Intent -=item UNTIE this +=item Embedding Pods in Perl Modules -=item The C Gotcha +=item Hints for Writing Pod =back =item SEE ALSO -=item BUGS - =item AUTHOR =back -=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, -safe subprocesses, sockets, and semaphores) +=head2 perlpodspec - Plain Old Documentation: format specification and +notes =over 4 =item DESCRIPTION -=item Signals +=item Pod Definitions -=over 4 +=item Pod Commands -=item Handling the SIGHUP Signal in Daemons +"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", +"=back", "=begin formatname", "=end formatname", "=for formatname text...", +"=encoding encodingname" -=back +=item Pod Formatting Codes -=item Named Pipes +CtextE> -- italic text, CtextE> -- bold text, +CcodeE> -- code text, CfilenameE> -- style for +filenames, Ctopic nameE> -- an index entry, CE> -- a +null (zero-effect) formatting code, CnameE> -- a hyperlink, +CescapeE> -- a character escape, CtextE> -- text +contains non-breaking spaces -=over 4 +=item Notes on Implementing Pod Processors + +=item About LE...E Codes + +First:, Second:, Third:, Fourth:, Fifth:, Sixth: -=item Deferred Signals (Safe signals) +=item About =over...=back Regions + +=item About Data Paragraphs and "=begin/=end" Regions + +=item SEE ALSO -Long running opcodes, Interrupting IO, Signals as "faults", Signals -triggered by operating system state +=item AUTHOR =back -=item Using open() for IPC +=head2 perlrun - how to execute the Perl interpreter =over 4 -=item Filehandles +=item SYNOPSIS -=item Background Processes +=item DESCRIPTION -=item Complete Dissociation of Child from Parent +=over 4 -=item Safe Pipe Opens +=item #! and quoting on non-Unix systems -=item Bidirectional Communication with Another Process +OS/2, MS-DOS, Win95/NT, Macintosh, VMS -=item Bidirectional Communication with Yourself +=item Location of Perl + +=item Command Switches + +B<-0>[I], B<-A [I]>, B<-a>, B<-C +[I]>, B<-c>, B<-d>, B<-dt>, B<-d:>I, +B<-dt:>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<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, +B<-X>, B<-x>, B<-x> I =back -=item Sockets: Client/Server Communication +=item ENVIRONMENT -=over 4 +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap, +:perlio, :pop, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB, +PERL5DB, PERL5DB_THREADED, PERL5SHELL (specific to the Win32 port), +PERL_ALLOW_NON_IFS_LSP (specific to the Win32 port), PERL_DEBUG_MSTATS, +PERL_DESTRUCT_LEVEL, PERL_DL_NONLAZY, PERL_ENCODING, PERL_HASH_SEED, +PERL_HASH_SEED_DEBUG, PERL_ROOT (specific to the VMS port), PERL_SIGNALS, +PERL_UNICODE, SYS$LOGIN (specific to the VMS port) -=item Internet Line Terminators +=back -=item Internet TCP Clients and Servers +=head2 perldiag - various Perl diagnostics -=item Unix-Domain TCP Clients and Servers +=over 4 + +=item DESCRIPTION =back -=item TCP Clients with IO::Socket +=head2 perllexwarn - Perl Lexical Warnings =over 4 -=item A Simple Client +=item DESCRIPTION -C, C, C +=over 4 -=item A Webget Client +=item Default Warnings and Optional Warnings -=item Interactive Client with IO::Socket +=item What's wrong with B<-w> and C<$^W> -=back +=item Controlling Warnings from the Command Line -=item TCP Servers with IO::Socket +B<-w>, B<-W>, B<-X> -Proto, LocalPort, Listen, Reuse +=item Backward Compatibility -=item UDP: Message Passing +=item Category Hierarchy -=item SysV IPC +=item Fatal Warnings -=item NOTES +=item Reporting Warnings from a Module -=item BUGS +=back -=item AUTHOR +=item TODO =item SEE ALSO +=item AUTHOR + =back -=head2 perlfork - Perl's fork() emulation +=head2 perldebug - Perl debugging =over 4 -=item SYNOPSIS - =item DESCRIPTION +=item The Perl Debugger + =over 4 -=item Behavior of other Perl features in forked pseudo-processes +=item Debugger Commands -$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept -filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to -files, directories and network sockets +h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y +[level [vars]], T, s [expr], n [expr], r, , c [line|sub], l, l +min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/, +?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b +subname [condition], b postpone subname [condition], b load filename, b +compile subname, B line, B *, a [line] command, A line, A *, w expr, W +expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [ +command ], < *, << command, > ?, > command, > *, >> command, { ?, { [ +command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source +file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man +[manpage] -=item Resource limits +=item Configurable Options -=item Killing the parent process +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, C, +C -=item Lifetime of the parent process and pseudo-processes +=item Debugger input/output -=item CAVEATS AND LIMITATIONS +Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame +listing -BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, -Global state maintained by XSUBs, Interpreter embedded in larger -application, Thread-safety of extensions +=item Debugging compile-time statements + +=item Debugger Customization + +=item Readline Support + +=item Editor Support for Debugging + +=item The Perl Profiler =back -=item BUGS +=item Debugging regular expressions -=item AUTHOR +=item Debugging memory usage =item SEE ALSO +=item BUGS + =back -=head2 perlnumber - semantics of numbers and numeric operations in Perl +=head2 perlvar - Perl predefined variables =over 4 -=item SYNOPSIS - =item DESCRIPTION -=item Storing numbers +=over 4 -=item Numeric operators and numeric conversions +=item Predefined Names -=item Flavors of Perl numeric operations +$ARG, $_, $a, $b, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', +$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+, +HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $, +IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/, +HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|, +IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, +IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, +$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $#, +HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%, +HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=, +HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, +@-, C<$`> is the same as C, C<$&> is the same as +C, C<$'> is the same as C, C<$1> is the same as C, C<$2> +is the same as C, C<$3> is the same as +C, HANDLE->format_name(EXPR), +$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^, +IO::Handle->format_line_break_characters EXPR, +$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR, +$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING}, +$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, $[, $], $COMPILING, $^C, $DEBUGGING, $^D, +$SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, +${^OPEN}, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, +0x100, 0x200, 0x400, $LAST_REGEXP_CODE_RESULT, $^R, +$EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME, $^T, ${^TAINT}, ${^UNICODE}, +$PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, $EXECUTABLE_NAME, $^X, +ARGV, $ARGV, @ARGV, ARGVOUT, @F, @INC, @_, %INC, %ENV, $ENV{expr}, %SIG, +$SIG{expr} -Arithmetic operators, ++, Arithmetic operators during C, Other -mathematical operators, Bitwise operators, Bitwise operators during C, Operators which expect an integer, Operators which expect a -string +=item Error Indicators -=item AUTHOR +=item Technical Note on the Syntax of Variable Names -=item SEE ALSO +=back + +=item BUGS =back -=head2 perlthrtut - tutorial on threads in Perl +=head2 perlre - Perl regular expressions =over 4 =item DESCRIPTION -=item Status - -=item What Is A Thread Anyway? - -=item Threaded Program Models +i, m, s, x =over 4 -=item Boss/Worker - -=item Work Crew +=item Regular Expressions -=item Pipeline +[1], [2], [3], cntrl, graph, print, punct, xdigit -=back +=item Extended Patterns -=item Native threads +C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, +C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?, C<(?{ +code })>, C<(??{ code })>, C<< (?>pattern) >>, +C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> -=item What kind of threads are Perl threads? +=item Backtracking -=item Thread-Safe Modules +=item Version 8 Regular Expressions -=item Thread Basics +=item Warning on \1 vs $1 -=over 4 +=item Repeated patterns matching zero-length substring -=item Basic Thread Support +=item Combining pieces together -=item A Note about the Examples +C, C, C, C, C, C, +C, C, C, C, C, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, +C<(?!S)>, C<(?, C<(??{ EXPR })>, +C<(?(condition)yes-pattern|no-pattern)> -=item Creating Threads +=item Creating custom RE engines -=item Giving up control +=back -=item Waiting For A Thread To Exit +=item BUGS -=item Ignoring A Thread +=item SEE ALSO =back -=item Threads And Data +=head2 perlreref - Perl Regular Expressions Reference =over 4 -=item Shared And Unshared Data - -=item Thread Pitfalls: Races - -=back - -=item Synchronization and control +=item DESCRIPTION =over 4 -=item Controlling access: lock() +=item OPERATORS -=item A Thread Pitfall: Deadlocks +=item SYNTAX -=item Queues: Passing Data Around +=item ESCAPE SEQUENCES -=item Semaphores: Synchronizing Data Access +=item CHARACTER CLASSES -=item Basic semaphores +=item ANCHORS -=item Advanced Semaphores +=item QUANTIFIERS -=item cond_wait() and cond_signal() +=item EXTENDED CONSTRUCTS -=back +=item VARIABLES -=item General Thread Utility Routines +=item FUNCTIONS -=over 4 +=item TERMINOLOGY -=item What Thread Am I In? +=back -=item Thread IDs +=item AUTHOR -=item Are These Threads The Same? +=item SEE ALSO -=item What Threads Are Running? +=item THANKS =back -=item A Complete Example +=head2 perlref - Perl references and nested data structures -=item Performance considerations +=over 4 -=item Process-scope Changes +=item NOTE -=item Thread-Safety of System Libraries +=item DESCRIPTION -=item Conclusion +=over 4 -=item Bibliography +=item Making References -=over 4 +=item Using References -=item Introductory Texts +=item Symbolic references -=item OS-Related References +=item Not-so-symbolic references -=item Other References +=item Pseudo-hashes: Using an array as a hash -=back +=item Function Templates -=item Acknowledgements +=back -=item AUTHOR +=item WARNING -=item Copyrights +=item SEE ALSO =back -=head2 perlothrtut - old tutorial on threads in Perl +=head2 perlform - Perl formats =over 4 =item DESCRIPTION -=item What Is A Thread Anyway? - -=item Threaded Program Models - =over 4 -=item Boss/Worker - -=item Work Crew - -=item Pipeline - -=back - -=item Native threads - -=item What kind of threads are perl threads? +=item Text Fields -=item Threadsafe Modules +=item Numeric Fields -=item Thread Basics +=item The Field @* for Variable Width Multi-Line Text -=over 4 +=item The Field ^* for Variable Width One-line-at-a-time Text -=item Basic Thread Support +=item Specifying Values -=item Creating Threads +=item Using Fill Mode -=item Giving up control +=item Suppressing Lines Where All Fields Are Void -=item Waiting For A Thread To Exit +=item Repeating Format Lines -=item Errors In Threads +=item Top of Form Processing -=item Ignoring A Thread +=item Format Variables =back -=item Threads And Data +=item NOTES =over 4 -=item Shared And Unshared Data - -=item Thread Pitfall: Races +=item Footers -=item Controlling access: lock() +=item Accessing Formatting Internals -=item Thread Pitfall: Deadlocks +=back -=item Queues: Passing Data Around +=item WARNINGS =back -=item Threads And Code +=head2 perlobj - Perl objects =over 4 -=item Semaphores: Synchronizing Data Access - -Basic semaphores, Advanced Semaphores +=item DESCRIPTION -=item Attributes: Restricting Access To Subroutines +=over 4 -=item Subroutine Locks +=item An Object is Simply a Reference -=item Methods +=item A Class is Simply a Package -=item Locking A Subroutine +=item A Method is Simply a Subroutine -=back +=item Method Invocation -=item General Thread Utility Routines +=item Indirect Object Syntax -=over 4 +=item Default UNIVERSAL methods -=item What Thread Am I In? +isa(CLASS), can(METHOD), VERSION( [NEED] ) -=item Thread IDs +=item Destructors -=item Are These Threads The Same? +=item Summary -=item What Threads Are Running? +=item Two-Phased Garbage Collection =back -=item A Complete Example +=item SEE ALSO -=item Conclusion +=back -=item Bibliography +=head2 perltie - how to hide an object class in a simple variable =over 4 -=item Introductory Texts - -=item OS-Related References +=item SYNOPSIS -=item Other References +=item DESCRIPTION -=back +=over 4 -=item Acknowledgements +=item Tying Scalars -=item AUTHOR +TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this, +DESTROY this -=item Copyrights +=item Tying Arrays -=back +TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, +FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, +key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this, +UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY +this -=head2 perlport - Writing portable Perl +=item Tying Hashes -=over 4 +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, SCALAR this, UNTIE this, DESTROY this -=item DESCRIPTION +=item Tying FileHandles -Not all Perl programs have to be portable, Nearly all of Perl already I -portable +TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, +LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this, +DESTROY this -=item ISSUES +=item UNTIE this -=over 4 +=item The C Gotcha -=item Newlines +=back -=item Numbers endianness and Width +=item SEE ALSO -=item Files and Filesystems +=item BUGS -=item System Interaction +=item AUTHOR -=item Command names versus file pathnames +=back -=item Interprocess Communication (IPC) +=head2 perldbmfilter - Perl DBM Filters -=item External Subroutines (XS) +=over 4 -=item Standard Modules +=item SYNOPSIS -=item Time and Date +=item DESCRIPTION -=item Character sets and character encoding +B, B, B, +B -=item Internationalisation +=over 4 -=item System Resources +=item The Filter -=item Security +=item An Example -- the NULL termination problem. -=item Style +=item Another Example -- Key is a C int. =back -=item CPAN Testers - -Mailing list: cpan-testers@perl.org, Testing results: -http://testers.cpan.org/ - -=item PLATFORMS - -=over 4 +=item SEE ALSO -=item Unix +=item AUTHOR -=item DOS and Derivatives +=back -=item S +=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, +safe subprocesses, sockets, and semaphores) -=item VMS +=over 4 -=item VOS +=item DESCRIPTION -=item EBCDIC Platforms +=item Signals -=item Acorn RISC OS +=over 4 -=item Other perls +=item Handling the SIGHUP Signal in Daemons =back -=item FUNCTION IMPLEMENTATIONS +=item Named Pipes =over 4 -=item Alphabetical Listing of Perl Functions +=item Deferred Signals (Safe Signals) --I FILEHANDLE, -I EXPR, -I, alarm SECONDS, alarm, binmode -FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt -PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec -LIST, exit EXPR, exit, fcntl FILEHANDLE,FUNCTION,SCALAR, flock -FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, getpriority -WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, getpwuid UID, -getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, -getservbyport PORT,PROTO, getpwent, getgrent, gethostbyname, gethostent, -getnetent, getprotoent, getservent, sethostent STAYOPEN, setnetent -STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, -endhostent, endnetent, endprotoent, endservent, getsockopt -SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl FILEHANDLE,FUNCTION,SCALAR, -kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat FILEHANDLE, lstat EXPR, -lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv -ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open FILEHANDLE, pipe -READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select -RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget -KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, -setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt -SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, -shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET, -socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat -EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen -FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate -FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, -wait, waitpid PID,FLAGS +Long running opcodes, Interrupting IO, Restartable system calls, Signals as +"faults", Signals triggered by operating system state =back -=item CHANGES - -v1.49, 12 August 2002, v1.48, 02 February 2001, v1.47, 22 March 2000, -v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999, -v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April -1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December -1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August -1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998 +=item Using open() for IPC -=item Supported Platforms +=over 4 -=item SEE ALSO +=item Filehandles -=item AUTHORS / CONTRIBUTORS +=item Background Processes -=back +=item Complete Dissociation of Child from Parent -=head2 perllocale - Perl locale handling (internationalization and -localization) +=item Safe Pipe Opens -=over 4 +=item Bidirectional Communication with Another Process -=item DESCRIPTION +=item Bidirectional Communication with Yourself -=item PREPARING TO USE LOCALES +=back -=item USING LOCALES +=item Sockets: Client/Server Communication =over 4 -=item The use locale pragma +=item Internet Line Terminators -=item The setlocale function +=item Internet TCP Clients and Servers -=item Finding locales +=item Unix-Domain TCP Clients and Servers -=item LOCALE PROBLEMS +=back -=item Temporarily fixing locale problems +=item TCP Clients with IO::Socket -=item Permanently fixing locale problems +=over 4 -=item Permanently fixing your system's locale configuration +=item A Simple Client -=item Fixing system locale configuration +C, C, C -=item The localeconv function +=item A Webget Client -=item I18N::Langinfo +=item Interactive Client with IO::Socket =back -=item LOCALE CATEGORIES +=item TCP Servers with IO::Socket -=over 4 +Proto, LocalPort, Listen, Reuse -=item Category LC_COLLATE: Collation +=item UDP: Message Passing -=item Category LC_CTYPE: Character Types +=item SysV IPC -=item Category LC_NUMERIC: Numeric Formatting +=item NOTES -=item Category LC_MONETARY: Formatting of monetary amounts +=item BUGS -=item LC_TIME +=item AUTHOR -=item Other categories +=item SEE ALSO =back -=item SECURITY +=head2 perlfork - Perl's fork() emulation -=item ENVIRONMENT +=over 4 -PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, -LC_NUMERIC, LC_TIME, LANG +=item SYNOPSIS -=item NOTES +=item DESCRIPTION =over 4 -=item Backward compatibility +=item Behavior of other Perl features in forked pseudo-processes -=item I18N:Collate obsolete +$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept +filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to +files, directories and network sockets -=item Sort speed and memory use impacts +=item Resource limits -=item write() and LC_NUMERIC +=item Killing the parent process -=item Freely available locale definitions +=item Lifetime of the parent process and pseudo-processes -=item I18n and l10n +=item CAVEATS AND LIMITATIONS -=item An imperfect standard +BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, +Global state maintained by XSUBs, Interpreter embedded in larger +application, Thread-safety of extensions =back -=item Unicode and UTF-8 - =item BUGS -=over 4 +=item AUTHOR -=item Broken systems +=item SEE ALSO =back -=item SEE ALSO +=head2 perlnumber - semantics of numbers and numeric operations in Perl -=item HISTORY +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item Storing numbers + +=item Numeric operators and numeric conversions + +=item Flavors of Perl numeric operations + +Arithmetic operators, ++, Arithmetic operators during C, Other +mathematical operators, Bitwise operators, Bitwise operators during C, Operators which expect an integer, Operators which expect a +string + +=item AUTHOR + +=item SEE ALSO =back -=head2 perluniintro - Perl Unicode introduction +=head2 perlthrtut - tutorial on threads in Perl =over 4 =item DESCRIPTION -=over 4 +=item Status -=item Unicode +=item What Is A Thread Anyway? -=item Perl's Unicode Support +=item Threaded Program Models -=item Perl's Unicode Model +=over 4 -=item Unicode and EBCDIC +=item Boss/Worker -=item Creating Unicode +=item Work Crew -=item Handling Unicode +=item Pipeline -=item Legacy Encodings +=back -=item Unicode I/O +=item What kind of threads are Perl threads? -=item Displaying Unicode As Text +=item Thread-Safe Modules -=item Special Cases +=item Thread Basics -=item Advanced Topics +=over 4 -=item Miscellaneous +=item Basic Thread Support -=item Questions With Answers +=item A Note about the Examples -=item Hexadecimal Notation +=item Creating Threads -=item Further Resources +=item Waiting For A Thread To Exit + +=item Ignoring A Thread =back -=item UNICODE IN OLDER PERLS +=item Threads And Data -=item SEE ALSO +=over 4 -=item ACKNOWLEDGMENTS +=item Shared And Unshared Data -=item AUTHOR, COPYRIGHT, AND LICENSE +=item Thread Pitfalls: Races =back -=head2 perlunicode - Unicode support in Perl +=item Synchronization and control =over 4 -=item DESCRIPTION +=item Controlling access: lock() -=over 4 +=item A Thread Pitfall: Deadlocks -=item Important Caveats +=item Queues: Passing Data Around -Input and Output Layers, Regular Expressions, C still needed to -enable UTF-8/UTF-EBCDIC in scripts +=item Semaphores: Synchronizing Data Access -=item Byte and Character Semantics +=item Basic semaphores -=item Effects of Character Semantics +=item Advanced Semaphores -=item Scripts +=item cond_wait() and cond_signal() -=item Blocks +=item Giving up control -=item User-Defined Character Properties +=back -=item Character Encodings for Input and Output +=item General Thread Utility Routines -=item Unicode Regular Expression Support Level +=over 4 -=item Unicode Encodings +=item What Thread Am I In? -=item Security Implications of Unicode +=item Thread IDs -=item Unicode in Perl on EBCDIC +=item Are These Threads The Same? -=item Locales +=item What Threads Are Running? -=item When Unicode Does Not Happen +=back -chmod, chmod, chown, chroot, exec, link, mkdir, rename, rmdir, stat, -symlink, truncate, unlink, utime, %ENV, glob (aka the <*>), open, opendir, -sysopen, qx (aka the backtick operator), system, readdir, readlink +=item A Complete Example -=item Forcing Unicode in Perl (Or Unforcing Unicode in Perl) +=item Different implementations of threads -=item Using Unicode in XS +=item Performance considerations -=back +=item Process-scope Changes -=item BUGS +=item Thread-Safety of System Libraries -=over 4 +=item Conclusion -=item Interaction with Locales +=item Bibliography -=item Interaction with Extensions +=over 4 -=item Speed +=item Introductory Texts -=item Porting code from perl-5.6.X +=item OS-Related References + +=item Other References =back -=item SEE ALSO +=item Acknowledgements + +=item AUTHOR + +=item Copyrights =back -=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms +=head2 perlothrtut - old tutorial on threads in Perl =over 4 =item DESCRIPTION -=item COMMON CHARACTER CODE SETS +=item What Is A Thread Anyway? + +=item Threaded Program Models =over 4 -=item ASCII +=item Boss/Worker -=item ISO 8859 +=item Work Crew -=item Latin 1 (ISO 8859-1) +=item Pipeline -=item EBCDIC +=back -=item 13 variant characters +=item Native threads -=item 0037 +=item What kind of threads are perl threads? -=item 1047 +=item Threadsafe Modules -=item POSIX-BC +=item Thread Basics -=item Unicode code points versus EBCDIC code points +=over 4 -=item Remaining Perl Unicode problems in EBCDIC +=item Basic Thread Support -=item Unicode and UTF +=item Creating Threads -=item Using Encode +=item Giving up control -=back +=item Waiting For A Thread To Exit -=item SINGLE OCTET TABLES +=item Errors In Threads -recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 +=item Ignoring A Thread -=item IDENTIFYING CHARACTER CODE SETS +=back -=item CONVERSIONS +=item Threads And Data =over 4 -=item tr/// - -=item iconv +=item Shared And Unshared Data -=item C RTL +=item Thread Pitfall: Races -=back +=item Controlling access: lock() -=item OPERATOR DIFFERENCES +=item Thread Pitfall: Deadlocks -=item FUNCTION DIFFERENCES +=item Queues: Passing Data Around -chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() +=back -=item REGULAR EXPRESSION DIFFERENCES +=item Threads And Code -=item SOCKETS +=over 4 -=item SORTING +=item Semaphores: Synchronizing Data Access -=over 4 +Basic semaphores, Advanced Semaphores -=item Ignore ASCII vs. EBCDIC sort differences. +=item Attributes: Restricting Access To Subroutines -=item MONO CASE then sort data. +=item Subroutine Locks -=item Convert, sort data, then re convert. +=item Methods -=item Perform sorting on one type of machine only. +=item Locking A Subroutine =back -=item TRANSFORMATION FORMATS +=item General Thread Utility Routines =over 4 -=item URL decoding and encoding +=item What Thread Am I In? -=item uu encoding and decoding +=item Thread IDs -=item Quoted-Printable encoding and decoding +=item Are These Threads The Same? -=item Caesarian ciphers +=item What Threads Are Running? =back -=item Hashing order and checksums - -=item I18N AND L10N +=item A Complete Example -=item MULTI OCTET CHARACTER SETS +=item Conclusion -=item OS ISSUES +=item Bibliography =over 4 -=item OS/400 - -PASE, IFS access - -=item OS/390, z/OS - -chcp, dataset access, OS/390, z/OS iconv, locales +=item Introductory Texts -=item VM/ESA? +=item OS-Related References -=item POSIX-BC? +=item Other References =back -=item BUGS - -=item SEE ALSO - -=item REFERENCES - -=item HISTORY +=item Acknowledgements =item AUTHOR +=item Copyrights + =back -=head2 perlsec - Perl security +=head2 perlport - Writing portable Perl =over 4 =item DESCRIPTION -=over 4 - -=item Laundering and Detecting Tainted Data - -=item Switches On the "#!" Line +Not all Perl programs have to be portable, Nearly all of Perl already I +portable -=item Cleaning Up Your Path +=item ISSUES -=item Security Bugs +=over 4 -=item Protecting Your Programs +=item Newlines -=item Unicode +=item Numbers endianness and Width -=back +=item Files and Filesystems -=item SEE ALSO +=item System Interaction -=back +=item Command names versus file pathnames -=head2 perlmod - Perl modules (packages and symbol tables) +=item Networking -=over 4 +=item Interprocess Communication (IPC) -=item DESCRIPTION +=item External Subroutines (XS) -=over 4 +=item Standard Modules -=item Packages +=item Time and Date -=item Symbol Tables +=item Character sets and character encoding -=item Package Constructors and Destructors +=item Internationalisation -=item Perl Classes +=item System Resources -=item Perl Modules +=item Security -=item Making your module threadsafe +=item Style =back -=item SEE ALSO +=item CPAN Testers -=back +Mailing list: cpan-testers@perl.org, Testing results: +http://testers.cpan.org/ -=head2 perlmodinstall - Installing CPAN Modules +=item PLATFORMS =over 4 -=item DESCRIPTION - -=over 4 +=item Unix -=item PREAMBLE +=item DOS and Derivatives -B the file, B the file into a directory, B the -module (sometimes unnecessary), B the module +=item S -=back +=item VMS -=item PORTABILITY +=item VOS -=item HEY +=item EBCDIC Platforms -=item AUTHOR +=item Acorn RISC OS -=item COPYRIGHT +=item Other perls =back -=head2 perlmodlib - constructing new Perl modules and finding existing ones - -=over 4 - -=item THE PERL MODULE LIBRARY +=item FUNCTION IMPLEMENTATIONS =over 4 -=item Pragmatic Modules +=item Alphabetical Listing of Perl Functions -assertions, assertions::activate, attributes, attrs, autouse, base, bigint, -bignum, bigrat, blib, bytes, charnames, constant, diagnostics, encoding, -fields, filetest, if, integer, less, lib, locale, open, ops, overload, re, -sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, version, -vmsish, warnings, warnings::register +-I FILEHANDLE, -I EXPR, -I, binmode FILEHANDLE, chmod LIST, chown +LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen +HASH,DBNAME,MODE, dump LABEL, exec LIST, exit EXPR, exit, fcntl +FILEHANDLE,FUNCTION,SCALAR, flock FILEHANDLE,OPERATION, fork, getlogin, +getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, +getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, +getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, +gethostbyname, gethostent, getnetent, getprotoent, getservent, sethostent +STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, +endpwent, endgrent, endhostent, endnetent, endprotoent, endservent, +getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl +FILEHANDLE,FUNCTION,SCALAR, kill SIGNAL, LIST, link OLDFILE,NEWFILE, lstat +FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd +ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open +FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select +RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget +KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP, +setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt +SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, +shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, sockatmark SOCKET, +socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat +EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen +FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate +FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, +wait, waitpid PID,FLAGS -=item Standard Modules +=back -AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata, -B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug, -B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, -B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, -CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, -CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, -Class::Struct, Config, Cwd, DB, DB_File, Data::Dumper, Devel::DProf, -Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5, -DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias, Encode::Byte, -Encode::CJKConstants, Encode::CN, Encode::CN::HZ, Encode::Config, -Encode::EBCDIC, Encode::Encoder, Encode::Encoding, Encode::Guess, -Encode::JP, Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, -Encode::KR::2022_KR, Encode::MIME::Header, Encode::PerlIO, -Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode, -Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy, -ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, -ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, -ExtUtils::MM, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, -ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, -ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, -ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, -ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Tutorial, -ExtUtils::MakeMaker::bytes, ExtUtils::MakeMaker::vmsish, -ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, -ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename, -File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find, -File::Glob, File::Path, File::Spec, File::Spec::Cygwin, File::Spec::Epoc, -File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, -File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, -FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File, -Getopt::Long, Getopt::Std, Hash::Util, I18N::Collate, I18N::LangTags, -I18N::LangTags::List, I18N::Langinfo, IO, IO::Dir, IO::File, IO::Handle, -IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, -IO::Socket::UNIX, IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg, -IPC::SysV::Semaphore, List::Util, Locale::Constants, Locale::Country, -Locale::Currency, Locale::Language, Locale::Maketext, -Locale::Maketext::TPJ13, Locale::Script, MIME::Base64, -MIME::Base64::QuotedPrint, Math::BigFloat, Math::BigInt, -Math::BigInt::Calc, Math::BigInt::Scalar, Math::BigRat, Math::Complex, -Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire, -Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File, -Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd, -Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3, -Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent, -Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO, -PerlIO::encoding, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint, -Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects, -Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, -Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, -Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText, -Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer, -Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, -Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util, -Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch, -Symbol, Sys::Hostname, Sys::Syslog, Term::ANSIColor, Term::Cap, -Term::Complete, Term::ReadLine, Test, Test::Builder, Test::Harness, -Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps, -Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced, -Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread, -Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific, -Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Memoize, Tie::RefHash, -Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::gmtime, -Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Normalize, -Unicode::UCD, User::grent, User::pwent, Win32, XS::APItest, XS::Typemap, -XSLoader +=item CHANGES -=item Extension Modules +v1.49, 12 August 2002, v1.48, 02 February 2001, v1.47, 22 March 2000, +v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999, +v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April +1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December +1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August +1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998 -=back +=item Supported Platforms -=item CPAN +=item SEE ALSO -=over 4 +=item AUTHORS / CONTRIBUTORS -=item Africa +=back -South Africa +=head2 perllocale - Perl locale handling (internationalization and +localization) -=item Asia +=over 4 -China, India, Indonesia, Israel, Japan, Korea, Philippines, Russian -Federation, Saudi Arabia, Singapore, South Korea, Taiwan, Thailand +=item DESCRIPTION -=item Central America +=item PREPARING TO USE LOCALES -Costa Rica +=item USING LOCALES -=item Europe +=over 4 -Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, -Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, -Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Russia, -Slovakia, Slovenia, Spain, Sweden, Switzerland, Turkey, Ukraine, United -Kingdom +=item The use locale pragma -=item North America +=item The setlocale function -Alberta, Manitoba, Nova Scotia, Ontario, Quebec, Mexico +=item Finding locales -=item United States +=item LOCALE PROBLEMS -Alabama, California, Colorado, Delaware, District of Columbia, Florida, -Illinois, Indiana, Kentucky, Massachusetts, Michigan, New Jersey, New York, -North Carolina, Ohio, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas, -Utah, Virginia, ashington, Wisconsin +=item Temporarily fixing locale problems -=item Oceania +=item Permanently fixing locale problems -Australia, New Zealand +=item Permanently fixing your system's locale configuration -=item South America +=item Fixing system locale configuration -Argentina, Brazil, Chile +=item The localeconv function -=item RSYNC Mirrors +=item I18N::Langinfo =back -=item Modules: Creation, Use, and Abuse +=item LOCALE CATEGORIES =over 4 -=item Guidelines for Module Creation +=item Category LC_COLLATE: Collation -=item Guidelines for Converting Perl 4 Library Scripts into Modules +=item Category LC_CTYPE: Character Types -=item Guidelines for Reusing Application Code +=item Category LC_NUMERIC: Numeric Formatting -=back +=item Category LC_MONETARY: Formatting of monetary amounts -=item NOTE +=item LC_TIME + +=item Other categories =back -=head2 perlmodstyle - Perl module style guide +=item SECURITY -=over 4 +=item ENVIRONMENT -=item INTRODUCTION +PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, +LC_NUMERIC, LC_TIME, LANG -=item QUICK CHECKLIST +=item NOTES =over 4 -=item Before you start +=item Backward compatibility -=item The API +=item I18N:Collate obsolete -=item Stability +=item Sort speed and memory use impacts -=item Documentation +=item write() and LC_NUMERIC -=item Release considerations +=item Freely available locale definitions + +=item I18n and l10n + +=item An imperfect standard =back -=item BEFORE YOU START WRITING A MODULE +=item Unicode and UTF-8 + +=item BUGS =over 4 -=item Has it been done before? +=item Broken systems -=item Do one thing and do it well +=back -=item What's in a name? +=item SEE ALSO + +=item HISTORY =back -=item DESIGNING AND WRITING YOUR MODULE +=head2 perluniintro - Perl Unicode introduction =over 4 -=item To OO or not to OO? +=item DESCRIPTION -=item Designing your API +=over 4 -Write simple routines to do simple things, Separate functionality from -output, Provide sensible shortcuts and defaults, Naming conventions, -Parameter passing +=item Unicode -=item Strictness and warnings +=item Perl's Unicode Support -=item Backwards compatibility +=item Perl's Unicode Model -=item Error handling and messages +=item Unicode and EBCDIC -=back +=item Creating Unicode -=item DOCUMENTING YOUR MODULE +=item Handling Unicode -=over 4 +=item Legacy Encodings -=item POD +=item Unicode I/O -=item README, INSTALL, release notes, changelogs +=item Displaying Unicode As Text -perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, -perl Build test, perl Build install +=item Special Cases + +=item Advanced Topics + +=item Miscellaneous + +=item Questions With Answers + +=item Hexadecimal Notation + +=item Further Resources =back -=item RELEASE CONSIDERATIONS +=item UNICODE IN OLDER PERLS + +=item SEE ALSO + +=item ACKNOWLEDGMENTS + +=item AUTHOR, COPYRIGHT, AND LICENSE + +=back + +=head2 perlunicode - Unicode support in Perl =over 4 -=item Version numbering +=item DESCRIPTION -=item Pre-requisites +=over 4 -=item Testing +=item Important Caveats -=item Packaging +Input and Output Layers, Regular Expressions, C still needed to +enable UTF-8/UTF-EBCDIC in scripts, BOM-marked scripts and UTF-16 scripts +autodetected, C needed to upgrade non-Latin-1 byte strings -=item Licensing +=item Byte and Character Semantics + +=item Effects of Character Semantics + +=item Scripts + +=item Blocks + +=item User-Defined Character Properties + +=item Character Encodings for Input and Output + +=item Unicode Regular Expression Support Level + +=item Unicode Encodings + +=item Security Implications of Unicode + +=item Unicode in Perl on EBCDIC + +=item Locales + +=item When Unicode Does Not Happen + +=item Forcing Unicode in Perl (Or Unforcing Unicode in Perl) + +=item Using Unicode in XS =back -=item COMMON PITFALLS +=item BUGS =over 4 -=item Reinventing the wheel +=item Interaction with Locales -=item Trying to do too much +=item Interaction with Extensions -=item Inappropriate documentation +=item Speed + +=item Porting code from perl-5.6.X =back =item SEE ALSO -L, L, L, L, Packaging Tools, -Testing tools, http://pause.perl.org/, Any good book on software -engineering - -=item AUTHOR - =back -=head2 perlnewmod - preparing a new module for distribution +=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms =over 4 =item DESCRIPTION +=item COMMON CHARACTER CODE SETS + =over 4 -=item Warning +=item ASCII -=item What should I make into a module? +=item ISO 8859 -=item Step-by-step: Preparing the ground +=item Latin 1 (ISO 8859-1) -Look around, Check it's new, Discuss the need, Choose a name, Check again +=item EBCDIC -=item Step-by-step: Making the module +=item 13 variant characters -Start with F, Use L and L, Use -L, Use L - wisely!, Use L, Write tests, Write the README +=item 0037 -=item Step-by-step: Distributing your module +=item 1047 -Get a CPAN user ID, C, Upload the -tarball, Announce to the modules list, Announce to clpa, Fix bugs! +=item POSIX-BC -=back +=item Unicode code points versus EBCDIC code points -=item AUTHOR +=item Remaining Perl Unicode problems in EBCDIC -=item SEE ALSO +=item Unicode and UTF + +=item Using Encode =back -=head2 perlfaq1 - General Questions About Perl ($Revision: 1.11 $, $Date: -2002/12/06 07:40:11 $) +=item SINGLE OCTET TABLES -=over 4 +recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 -=item DESCRIPTION +=item IDENTIFYING CHARACTER CODE SETS + +=item CONVERSIONS =over 4 -=item What is Perl? +=item tr/// -=item Who supports Perl? Who develops it? Why is it free? +=item iconv -=item Which version of Perl should I use? +=item C RTL -=item What are perl4 and perl5? +=back -=item What is perl6? +=item OPERATOR DIFFERENCES -=item How stable is Perl? +=item FUNCTION DIFFERENCES -=item Is Perl difficult to learn? +chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() -=item How does Perl compare with other languages like Java, Python, REXX, -Scheme, or Tcl? +=item REGULAR EXPRESSION DIFFERENCES + +=item SOCKETS + +=item SORTING + +=over 4 + +=item Ignore ASCII vs. EBCDIC sort differences. + +=item MONO CASE then sort data. + +=item Convert, sort data, then re convert. + +=item Perform sorting on one type of machine only. -=item Can I do [task] in Perl? +=back -=item When shouldn't I program in Perl? +=item TRANSFORMATION FORMATS -=item What's the difference between "perl" and "Perl"? +=over 4 -=item Is it a Perl program or a Perl script? +=item URL decoding and encoding -=item What is a JAPH? +=item uu encoding and decoding -=item Where can I get a list of Larry Wall witticisms? +=item Quoted-Printable encoding and decoding -=item How can I convince my sysadmin/supervisor/employees to use version -5/5.6.1/Perl instead of some other language? +=item Caesarian ciphers =back -=item AUTHOR AND COPYRIGHT +=item Hashing order and checksums -=back +=item I18N AND L10N + +=item MULTI OCTET CHARACTER SETS -=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.20 $, -$Date: 2003/01/26 17:50:56 $) +=item OS ISSUES =over 4 -=item DESCRIPTION +=item OS/400 -=over 4 +PASE, IFS access -=item What machines support Perl? Where do I get it? +=item OS/390, z/OS -=item How can I get a binary version of Perl? +chcp, dataset access, OS/390, z/OS iconv, locales -=item I don't have a C compiler on my system. How can I compile perl? +=item VM/ESA? -=item I copied the Perl binary from one machine to another, but scripts -don't work. +=item POSIX-BC? -=item I grabbed the sources and tried to compile but gdbm/dynamic -loading/malloc/linking/... failed. How do I make it work? +=back -=item What modules and extensions are available for Perl? What is CPAN? -What does CPAN/src/... mean? +=item BUGS -=item Is there an ISO or ANSI certified version of Perl? +=item SEE ALSO -=item Where can I get information on Perl? +=item REFERENCES -=item What are the Perl newsgroups on Usenet? Where do I post questions? +=item HISTORY -=item Where should I post source code? +=item AUTHOR -=item Perl Books +=back -References, Tutorials, Task-Oriented, Special Topics +=head2 perlsec - Perl security -=item Perl in Magazines +=over 4 -=item Perl on the Net: FTP and WWW Access +=item DESCRIPTION -=item What mailing lists are there for Perl? +=over 4 -=item Archives of comp.lang.perl.misc +=item Laundering and Detecting Tainted Data -=item Where can I buy a commercial version of Perl? +=item Switches On the "#!" Line -=item Where do I send bug reports? +=item Taint mode and @INC -=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? +=item Cleaning Up Your Path + +=item Security Bugs + +=item Protecting Your Programs + +=item Unicode + +=item Algorithmic Complexity Attacks =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO =back -=head2 perlfaq3 - Programming Tools ($Revision: 1.33 $, $Date: 2003/01/31 -17:34:56 $) +=head2 perlmod - Perl modules (packages and symbol tables) =over 4 @@ -3059,301 +3588,374 @@ References, Tutorials, Task-Oriented, Special Topics =over 4 -=item How do I do (anything)? +=item Packages -=item How can I use Perl interactively? +=item Symbol Tables -=item Is there a Perl shell? +=item BEGIN, CHECK, INIT and END -=item How do I find which modules are installed on my system? +=item Perl Classes -=item How do I debug my Perl programs? +=item Perl Modules -=item How do I profile my Perl programs? +=item Making your module threadsafe -=item How do I cross-reference my Perl programs? +=back -=item Is there a pretty-printer (formatter) for Perl? +=item SEE ALSO -=item Is there a ctags for Perl? +=back -=item Is there an IDE or Windows Perl Editor? +=head2 perlmodlib - constructing new Perl modules and finding existing ones -Komodo, The Object System, Open Perl IDE, PerlBuilder, visiPerl+, OptiPerl, -GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright, -MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha +=over 4 -=item Where can I get Perl macros for vi? +=item THE PERL MODULE LIBRARY -=item Where can I get perl-mode for emacs? +=over 4 -=item How can I use curses with Perl? +=item Pragmatic Modules -=item How can I use X or Tk with Perl? +assertions, assertions::activate, attributes, attrs, autouse, base, bigint, +bignum, bigrat, blib, bytes, charnames, constant, diagnostics, encoding, +fields, filetest, if, integer, less, lib, locale, open, ops, overload, re, +sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, version, +vmsish, warnings, warnings::register -=item How can I generate simple menus without using CGI or Tk? +=item Standard Modules -=item How can I make my Perl program run faster? +AnyDBM_File, Attribute::Handlers, AutoLoader, AutoSplit, B, B::Asmdata, +B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug, +B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, +B::Terse, B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, +CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CGI::Util, +CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, Class::ISA, +Class::Struct, Config, Cwd, DB, DBM_Filter, DB_File, Data::Dumper, +Devel::DProf, Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, +Digest::MD5, Digest::base, DirHandle, Dumpvalue, DynaLoader, Encode, +Encode::Alias, Encode::Byte, Encode::CJKConstants, Encode::CN, +Encode::CN::HZ, Encode::Config, Encode::EBCDIC, Encode::Encoder, +Encode::Encoding, Encode::Guess, Encode::JP, Encode::JP::H2Z, +Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR, Encode::MIME::Header, +Encode::PerlIO, Encode::Supported, Encode::Symbol, Encode::TW, +Encode::Unicode, Encode::Unicode::UTF7, English, Env, Errno, Exporter, +Exporter::Heavy, ExtUtils::Command, ExtUtils::Command::MM, +ExtUtils::Constant, ExtUtils::Embed, ExtUtils::Install, +ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_Any, +ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS, +ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_UWIN, +ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, +ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, +ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Tutorial, +ExtUtils::MakeMaker::bytes, ExtUtils::MakeMaker::vmsish, +ExtUtils::Manifest, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, +ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl, File::Basename, +File::CheckTree, File::Compare, File::Copy, File::DosGlob, File::Find, +File::Glob, File::Path, File::Spec, File::Spec::Cygwin, File::Spec::Epoc, +File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, +File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, +FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File, +Getopt::Long, Getopt::Std, Hash::Util, I18N::Collate, I18N::LangTags, +I18N::LangTags::List, I18N::Langinfo, IO, IO::Dir, IO::File, IO::Handle, +IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, +IO::Socket::UNIX, IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg, +IPC::SysV::Semaphore, List::Util, Locale::Constants, Locale::Country, +Locale::Currency, Locale::Language, Locale::Maketext, +Locale::Maketext::TPJ13, Locale::Script, MIME::Base64, +MIME::Base64::QuotedPrint, Math::BigFloat, Math::BigInt, +Math::BigInt::Calc, Math::BigInt::CalcEmu, Math::BigRat, Math::Complex, +Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire, +Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File, +Memoize::SDBM_File, Memoize::Storable, NDBM_File, NEXT, Net::Cmd, +Net::Config, Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3, +Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent, +Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, PerlIO, +PerlIO::encoding, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint, +Pod::Checker, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects, +Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, +Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, +Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText, +Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer, +Pod::Select, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, +Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util, +Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Switch, +Symbol, Sys::Hostname, Sys::Syslog, Term::ANSIColor, Term::Cap, +Term::Complete, Term::ReadLine, Test, Test::Builder, Test::Harness, +Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Straps, +Test::More, Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced, +Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread, +Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific, +Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Memoize, Tie::RefHash, +Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::gmtime, +Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Normalize, +Unicode::UCD, User::grent, User::pwent, Win32, XS::APItest, XS::Typemap, +XSLoader -=item How can I make my Perl program take less memory? +=item Extension Modules -Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and -stringification, Pass by reference, Tie large variables to disk +=back -=item Is it safe to return a reference to local or lexical data? +=item CPAN -=item How can I free an array or hash so my program shrinks? +=over 4 -=item How can I make my CGI script more efficient? +=item Africa -=item How can I hide the source for my Perl program? +South Africa -=item How can I compile my Perl program into byte code or C? +=item Asia -=item How can I compile Perl into Java? +China, Indonesia, Israel, Japan, Malaysia, Russian Federation, Saudi +Arabia, Singapore, South Korea, Taiwan, Thailand -=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? +=item Central America -=item Can I write useful Perl programs on the command line? +Costa Rica -=item Why don't Perl one-liners work on my DOS/Mac/VMS system? +=item Europe -=item Where can I learn about CGI or Web programming in Perl? +Austria, Belgium, Bosnia and Herzegovina, Bulgaria, Croatia, Czech +Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, +Iceland, Ireland, Italy, Latvia, Lithuania, Netherlands, Norway, Poland, +Portugal, Romania, Russia, Slovakia, Slovenia, Spain, Sweden, Switzerland, +Turkey, Ukraine, United Kingdom -=item Where can I learn about object-oriented Perl programming? +=item North America -=item Where can I learn about linking C with Perl? [h2xs, xsubpp] +Canada, Alberta, Manitoba, Nova Scotia, Ontario, Mexico, United States, +Alabama, California, Colorado, Delaware, District of Columbia, Florida, +Indiana, Kentucky, Massachusetts, Michigan, Nevada, New Jersey, New York, +North Carolina, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas, Utah, +Virginia, Washington, Wisconsin -=item I've read perlembed, perlguts, etc., but I can't embed perl in -my C program; what am I doing wrong? +=item Oceania -=item When I tried to run my script, I got this message. What does it mean? +Australia, New Zealand, United States -=item What's MakeMaker? +=item South America -=back +Argentina, Brazil, Chile -=item AUTHOR AND COPYRIGHT +=item RSYNC Mirrors =back -=head2 perlfaq4 - Data Manipulation ($Revision: 1.43 $, $Date: 2003/02/23 -20:25:09 $) +=item Modules: Creation, Use, and Abuse =over 4 -=item DESCRIPTION - -=item Data: Numbers +=item Guidelines for Module Creation -=over 4 +=item Guidelines for Converting Perl 4 Library Scripts into Modules -=item Why am I getting long decimals (eg, 19.9499999999999) instead of the -numbers I should be getting (eg, 19.95)? +=item Guidelines for Reusing Application Code -=item Why isn't my octal data interpreted correctly? +=back -=item Does Perl have a round() function? What about ceil() and floor()? -Trig functions? +=item NOTE -=item How do I convert between numeric representations? +=back -How do I convert hexadecimal into decimal, How do I convert from decimal to -hexadecimal, How do I convert from octal to decimal, How do I convert from -decimal to octal, How do I convert from binary to decimal, How do I convert -from decimal to binary +=head2 perlmodstyle - Perl module style guide -=item Why doesn't & work the way I want it to? +=over 4 -=item How do I multiply matrices? +=item INTRODUCTION -=item How do I perform an operation on a series of integers? +=item QUICK CHECKLIST -=item How can I output Roman numerals? +=over 4 -=item Why aren't my random numbers random? +=item Before you start -=item How do I get a random number between X and Y? +=item The API -=back +=item Stability -=item Data: Dates +=item Documentation -=over 4 +=item Release considerations -=item How do I find the day or week of the year? +=back -=item How can I compare two dates and find the difference? +=item BEFORE YOU START WRITING A MODULE -=item How can I take a string and turn it into epoch seconds? +=over 4 -=item How can I find the Julian Day? +=item Has it been done before? -=item How do I find yesterday's date? +=item Do one thing and do it well -=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? +=item What's in a name? =back -=item Data: Strings +=item DESIGNING AND WRITING YOUR MODULE =over 4 -=item How do I validate input? - -=item How do I unescape a string? +=item To OO or not to OO? -=item How do I remove consecutive pairs of characters? +=item Designing your API -=item How do I expand function calls in a string? +Write simple routines to do simple things, Separate functionality from +output, Provide sensible shortcuts and defaults, Naming conventions, +Parameter passing -=item How do I find matching/nesting anything? +=item Strictness and warnings -=item How do I reverse a string? +=item Backwards compatibility -=item How do I expand tabs in a string? +=item Error handling and messages -=item How do I reformat a paragraph? +=back -=item How can I access or change N characters of a string? +=item DOCUMENTING YOUR MODULE -=item How do I change the Nth occurrence of something? +=over 4 -=item How can I count the number of occurrences of a substring within a -string? +=item POD -=item How do I capitalize all the words on one line? +=item README, INSTALL, release notes, changelogs -=item How can I split a [character] delimited string except when inside -[character]? +perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, +perl Build test, perl Build install -=item How do I strip blank space from the beginning/end of a string? +=back -=item How do I pad a string with blanks or pad a number with zeroes? +=item RELEASE CONSIDERATIONS -=item How do I extract selected columns from a string? +=over 4 -=item How do I find the soundex value of a string? +=item Version numbering -=item How can I expand variables in text strings? +=item Pre-requisites -=item What's wrong with always quoting "$vars"? +=item Testing -=item Why don't my EEHERE documents work? +=item Packaging -There must be no space after the EE part, There (probably) should -be a semicolon at the end, You can't (easily) have any space in front of -the tag +=item Licensing =back -=item Data: Arrays +=item COMMON PITFALLS =over 4 -=item What is the difference between a list and an array? +=item Reinventing the wheel -=item What is the difference between $array[1] and @array[1]? +=item Trying to do too much -=item How can I remove duplicate elements from a list or array? +=item Inappropriate documentation -a), b), c), d), e) +=back -=item How can I tell whether a certain element is contained in a list or -array? +=item SEE ALSO -=item How do I compute the difference of two arrays? How do I compute the -intersection of two arrays? +L, L, L, L, Packaging Tools, +Testing tools, http://pause.perl.org/, Any good book on software +engineering -=item How do I test whether two arrays or hashes are equal? +=item AUTHOR -=item How do I find the first array element for which a condition is true? +=back -=item How do I handle linked lists? +=head2 perlmodinstall - Installing CPAN Modules -=item How do I handle circular lists? +=over 4 -=item How do I shuffle an array randomly? +=item DESCRIPTION -=item How do I process/modify each element of an array? +=over 4 -=item How do I select a random element from an array? +=item PREAMBLE -=item How do I permute N elements of a list? +B the file, B the file into a directory, B the +module (sometimes unnecessary), B the module -=item How do I sort an array by (anything)? +=back -=item How do I manipulate arrays of bits? +=item PORTABILITY -=item Why does defined() return true on empty arrays and hashes? +=item HEY + +=item AUTHOR + +=item COPYRIGHT =back -=item Data: Hashes (Associative Arrays) +=head2 perlnewmod - preparing a new module for distribution =over 4 -=item How do I process an entire hash? +=item DESCRIPTION -=item What happens if I add or remove keys from a hash while iterating over -it? +=over 4 -=item How do I look up a hash element by value? +=item Warning -=item How can I know how many entries are in a hash? +=item What should I make into a module? -=item How do I sort a hash (optionally by value instead of key)? +=item Step-by-step: Preparing the ground -=item How can I always keep my hash sorted? +Look around, Check it's new, Discuss the need, Choose a name, Check again -=item What's the difference between "delete" and "undef" with hashes? +=item Step-by-step: Making the module -=item Why don't my tied hashes make the defined/exists distinction? +Start with F or F, Use L and +L, Use L, Use L - wisely!, +Use L, Write tests, Write the README -=item How do I reset an each() operation part-way through? +=item Step-by-step: Distributing your module -=item How can I get the unique keys from two hashes? +Get a CPAN user ID, C, Upload the +tarball, Announce to the modules list, Announce to clpa, Fix bugs! -=item How can I store a multidimensional array in a DBM file? +=back -=item How can I make my hash remember the order I put elements into it? +=item AUTHOR -=item Why does passing a subroutine an undefined element in a hash create -it? +=item SEE ALSO -=item How can I make the Perl equivalent of a C structure/C++ class/hash or -array of hashes or arrays? +=back -=item How can I use a reference as a hash key? +=head2 perlutil - utilities packaged with the Perl distribution -=back +=over 4 -=item Data: Misc +=item DESCRIPTION =over 4 -=item How do I handle binary data correctly? +=item DOCUMENTATION -=item How do I determine whether a scalar is a number/whole/integer/float? +L, L and L, +L and L, L, +L, L, L, +L -=item How do I keep persistent data across program calls? +=item CONVERTORS -=item How do I print out or copy a recursive data structure? +L, L, L -=item How do I define methods for every class/object? +=item Administration -=item How do I verify a credit card checksum? +L -=item How do I pack arrays of doubles or floats for XS code? +=item Development -=back +L, L, L and L, +L, L, L -=item AUTHOR AND COPYRIGHT +=item SEE ALSO + +=back =back -=head2 perlfaq5 - Files and Formats ($Revision: 1.28 $, $Date: 2003/01/26 -17:45:46 $) +=head2 perlcompile - Introduction to the Perl Compiler-Translator =over 4 @@ -3361,2072 +3963,2067 @@ array of hashes or arrays? =over 4 -=item How do I flush/unbuffer an output filehandle? Why must I do this? - -=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 How do I count the number of lines in a file? +=item Layout -=item How can I use Perl's C<-i> option from within a program? +B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref -=item How do I make a temporary file name? +=back -=item How can I manipulate fixed-record-length files? +=item Using The Back Ends -=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? +=over 4 -=item How can I use a filehandle indirectly? +=item The Cross Referencing Back End -=item How can I set up a footer format to be used with write()? +i, &, s, r -=item How can I write() into a string? +=item The Decompiling Back End -=item How can I output my numbers with commas added? +=item The Lint Back End -=item How can I translate tildes (~) in a filename? +=item The Simple C Back End -=item How come when I open a file read-write it wipes it out? +=item The Bytecode Back End -=item Why do I sometimes get an "Argument list too long" when I use -E*E? +=item The Optimized C Back End -=item Is there a leak/bug in glob()? +=back -=item How can I open a file with a leading ">" or trailing blanks? +=item Module List for the Compiler Suite -=item How can I reliably rename a file? +B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, +B::Concise, B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, +B::Stackobj, B::Stash, B::Terse, B::Xref -=item How can I lock a file? +=item KNOWN PROBLEMS -=item Why can't I just open(FH, "Efile.lock")? +=item AUTHOR -=item I still don't get locking. I just want to increment the number in -the file. How can I do this? +=back -=item All I want to do is append a small amount of text to the end of a -file. Do I still have to use locking? +=head2 perlfilter - Source Filters -=item How do I randomly update a binary file? +=over 4 -=item How do I get a file's timestamp in perl? +=item DESCRIPTION -=item How do I set a file's timestamp in perl? +=item CONCEPTS -=item How do I print to more than one file at once? +=item USING FILTERS -=item How can I read in an entire file all at once? +=item WRITING A SOURCE FILTER -=item How can I read in a file by paragraphs? +=item WRITING A SOURCE FILTER IN C -=item How can I read a single character from a file? From the keyboard? +B -=item How can I tell whether there's a character waiting on a filehandle? +=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE -=item How do I do a C in perl? +=item WRITING A SOURCE FILTER IN PERL -=item How do I dup() a filehandle in Perl? +=item USING CONTEXT: THE DEBUG FILTER -=item How do I close a file descriptor by number? +=item CONCLUSION -=item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't -`C:\temp\foo.exe` work? +=item THINGS TO LOOK OUT FOR -=item Why doesn't glob("*.*") get all the files? +Some Filters Clobber the C Handle -=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 REQUIREMENTS -=item How do I select a random line from a file? +=item AUTHOR -=item Why do I get weird spaces when I print an array of lines? +=item Copyrights =back -=item AUTHOR AND COPYRIGHT +=head2 perlembed - how to embed perl in your C program -=back +=over 4 -=head2 perlfaq6 - Regular Expressions ($Revision: 1.20 $, $Date: 2003/01/03 -20:05:28 $) +=item DESCRIPTION =over 4 -=item DESCRIPTION +=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 -=over 4 +=item Performing Perl pattern matches and substitutions from your C program -=item How can I hope to use regular expressions without creating illegible -and unmaintainable code? +=item Fiddling with the Perl stack from your C program -Comments Outside the Regex, Comments Inside the Regex, Different Delimiters +=item Maintaining a persistent interpreter -=item I'm having trouble matching over more than one line. What's wrong? +=item Execution of END blocks -=item How can I pull out lines between two patterns that are themselves on -different lines? +=item Maintaining multiple interpreter instances -=item I put a regular expression into $/ but it didn't work. What's wrong? +=item Using Perl modules, which themselves use C libraries, from your C +program -=item How do I substitute case insensitively on the LHS while preserving -case on the RHS? +=back -=item How can I make C<\w> match national character sets? +=item Embedding Perl under Win32 -=item How can I match a locale-smart version of C? +=item Hiding Perl_ -=item How can I quote a variable to use in a regex? +=item MORAL -=item What is C really for? +=item AUTHOR -=item How do I use a regular expression to strip C style comments from a -file? +=item COPYRIGHT -=item Can I use Perl regular expressions to match balanced text? +=back -=item What does it mean that regexes are greedy? How can I get around it? +=head2 perldebguts - Guts of Perl debugging -=item How do I process each word on each line? +=over 4 -=item How can I print out a word-frequency or line-frequency summary? +=item DESCRIPTION -=item How can I do approximate matching? +=item Debugger Internals -=item How do I efficiently match many regular expressions at once? +=over 4 -=item Why don't word-boundary searches with C<\b> work for me? +=item Writing Your Own Debugger -=item Why does using $&, $`, or $' slow my program down? +=back -=item What good is C<\G> in a regular expression? +=item Frame Listing Output Examples -=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? +=item Debugging regular expressions -=item What's wrong with using grep or map in a void context? +=over 4 -=item How can I match strings with multibyte characters? +=item Compile-time output -=item How do I match a pattern that is supplied by the user? +C I C I, C I C +I, C, C, C +I, C, C, C, C, C, C, +C -=back +=item Types of nodes -=item AUTHOR AND COPYRIGHT +=item Run-time output =back -=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.14 $, $Date: -2003/01/31 17:38:14 $) +=item Debugging Perl memory usage =over 4 -=item DESCRIPTION - -=over 4 +=item Using C<$ENV{PERL_DEBUG_MSTATS}> -=item Can I get a BNF/yacc/RE for the Perl language? +C, Free/Used, C, C, C, C, C -=item What are all these $@%&* punctuation signs, and how do I know when to -use them? +=item Example of using B<-DL> switch -=item Do I always/never have to quote my strings or use semicolons and -commas? +C<717>, C<002>, C<054>, C<602>, C<702>, C<704> -=item How do I skip some return values? +=item B<-DL> details -=item How do I temporarily block warnings? +C, C, C -=item What's an extension? +=item Limitations of B<-DL> statistics -=item Why do Perl operators have different precedence than C operators? +=back -=item How do I declare/create a structure? +=item SEE ALSO -=item How do I create a module? +=back -=item How do I create a class? +=head2 perlxstut, perlXStut - Tutorial for writing XSUBs -=item How can I tell if a variable is tainted? +=over 4 -=item What's a closure? +=item DESCRIPTION -=item What is variable suicide and how can I prevent it? +=item SPECIAL NOTES -=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, -Regex}? +=over 4 -Passing Variables and Functions, Passing Filehandles, Passing Regexes, -Passing Methods +=item make -=item How do I create a static variable? +=item Version caveat -=item What's the difference between dynamic and lexical (static) scoping? -Between local() and my()? +=item Dynamic Loading versus Static Loading -=item How can I access a dynamic variable while a similarly named lexical -is in scope? +=back -=item What's the difference between deep and shallow binding? +=item TUTORIAL -=item Why doesn't "my($foo) = EFILEE;" work right? +=over 4 -=item How do I redefine a builtin function, operator, or method? +=item EXAMPLE 1 -=item What's the difference between calling a function as &foo and foo()? +=item EXAMPLE 2 -=item How do I create a switch or case statement? +=item What has gone on? -=item How can I catch accesses to undefined variables, functions, or -methods? +=item Writing good test scripts -=item Why can't a method included in this same file be found? +=item EXAMPLE 3 -=item How can I find out my current package? +=item What's new here? -=item How can I comment out a large block of perl code? +=item Input and Output Parameters -=item How do I clear a package? +=item The XSUBPP Program -=item How can I use a variable as a variable name? +=item The TYPEMAP file -=item What does "bad interpreter" mean? +=item Warning about Output Arguments -=back +=item EXAMPLE 4 -=item AUTHOR AND COPYRIGHT +=item What has happened here? -=back +=item Anatomy of .xs file -=head2 perlfaq8 - System Interaction ($Revision: 1.17 $, $Date: 2003/01/26 -17:44:04 $) +=item Getting the fat out of XSUBs -=over 4 +=item More about XSUB arguments -=item DESCRIPTION +=item The Argument Stack -=over 4 +=item Extending your Extension -=item How do I find out which operating system I'm running under? +=item Documenting your Extension -=item How come exec() doesn't return? +=item Installing your Extension -=item How do I do fancy stuff with the keyboard/screen/mouse? +=item EXAMPLE 5 -Keyboard, Screen, Mouse +=item New Things in this Example -=item How do I print something out in color? +=item EXAMPLE 6 -=item How do I read just one key without waiting for a return key? +=item New Things in this Example -=item How do I check whether input is ready on the keyboard? +=item EXAMPLE 7 (Coming Soon) -=item How do I clear the screen? +=item EXAMPLE 8 (Coming Soon) -=item How do I get the screen size? +=item EXAMPLE 9 Passing open files to XSes -=item How do I ask the user for a password? +=item Troubleshooting these Examples -=item How do I read and write the serial port? +=back -lockfiles, open mode, end of line, flushing output, non-blocking input +=item See also -=item How do I decode encrypted password files? +=item Author -=item How do I start a process in the background? +=over 4 -STDIN, STDOUT, and STDERR are shared, Signals, Zombies +=item Last Changed -=item How do I trap control characters/signals? +=back -=item How do I modify the shadow password file on a Unix system? +=back -=item How do I set the time and date? +=head2 perlxs - XS language reference manual -=item How can I sleep() or alarm() for under a second? +=over 4 -=item How can I measure time under a second? +=item DESCRIPTION -=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) +=over 4 -=item Why doesn't my sockets program work under System V (Solaris)? What -does the error message "Protocol not supported" mean? +=item Introduction -=item How can I call my system's unique C functions from Perl? +=item On The Road -=item Where do I get the include files to do ioctl() or syscall()? +=item The Anatomy of an XSUB -=item Why do setuid perl scripts complain about kernel problems? +=item The Argument Stack -=item How can I open a pipe both to and from a command? +=item The RETVAL Variable -=item Why can't I get the output of a command with system()? +=item Returning SVs, AVs and HVs through RETVAL -=item How can I capture STDERR from an external command? +=item The MODULE Keyword -=item Why doesn't open() return an error when a pipe open fails? +=item The PACKAGE Keyword -=item What's wrong with using backticks in a void context? +=item The PREFIX Keyword -=item How can I call backticks without shell processing? +=item The OUTPUT: Keyword -=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, -^Z on MS-DOS)? +=item The NO_OUTPUT Keyword -=item How can I convert my shell script to perl? +=item The CODE: Keyword -=item Can I use perl to run a telnet or ftp session? +=item The INIT: Keyword -=item How can I write expect in Perl? +=item The NO_INIT Keyword -=item Is there a way to hide perl's command line from programs such as -"ps"? +=item Initializing Function Parameters -=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 Default Parameter Values -Unix +=item The PREINIT: Keyword -=item How do I close a process's filehandle without waiting for it to -complete? +=item The SCOPE: Keyword -=item How do I fork a daemon process? +=item The INPUT: Keyword -=item How do I find out if I'm running interactively or not? +=item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords -=item How do I timeout a slow event? +=item The C Keyword -=item How do I set CPU limits? +=item Variable-length Parameter Lists -=item How do I avoid zombies on a Unix system? +=item The C_ARGS: Keyword -=item How do I use an SQL database? +=item The PPCODE: Keyword -=item How do I make a system() exit on control-C? +=item Returning Undef And Empty Lists -=item How do I open a file without blocking? +=item The REQUIRE: Keyword -=item How do I install a module from CPAN? +=item The CLEANUP: Keyword -=item What's the difference between require and use? +=item The POSTCALL: Keyword -=item How do I keep my own module/library directory? +=item The BOOT: Keyword -=item How do I add the directory my program lives in to the module/library -search path? +=item The VERSIONCHECK: Keyword -=item How do I add a directory to my include path at runtime? +=item The PROTOTYPES: Keyword -=item What is socket.ph and where do I get it? +=item The PROTOTYPE: Keyword -=back +=item The ALIAS: Keyword -=item AUTHOR AND COPYRIGHT +=item The OVERLOAD: Keyword -=back +=item The FALLBACK: Keyword -=head2 perlfaq9 - Networking ($Revision: 1.15 $, $Date: 2003/01/31 17:36:57 -$) +=item The INTERFACE: Keyword -=over 4 +=item The INTERFACE_MACRO: Keyword -=item DESCRIPTION +=item The INCLUDE: Keyword -=over 4 +=item The CASE: Keyword -=item What is the correct form of response from a CGI script? +=item The & Unary Operator -=item My CGI script runs from the command line but not the browser. (500 -Server Error) +=item Inserting POD, Comments and C Preprocessor Directives -=item How can I get better error messages from a CGI program? +=item Using XS With C++ -=item How do I remove HTML from a string? +=item Interface Strategy -=item How do I extract URLs? +=item Perl Objects And C Structures -=item How do I download a file from the user's machine? How do I open a -file on another machine? +=item The Typemap -=item How do I make a pop-up menu in HTML? +=item Safely Storing Static Data in XS -=item How do I fetch an HTML file? +MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT -=item How do I automate an HTML form submission? +=back -=item How do I decode or create those %-encodings on the web? +=item EXAMPLES -=item How do I redirect to another page? +=item XS VERSION -=item How do I put a password on my web pages? +=item AUTHOR -=item How do I edit my .htpasswd and .htgroup files with Perl? +=back -=item How do I make sure users can't enter values into a form that cause my -CGI script to do bad things? +=head2 perlclib - Internal replacements for standard C library functions -=item How do I parse a mail header? +=over 4 -=item How do I decode a CGI form? +=item DESCRIPTION -=item How do I check a valid mail address? +=over 4 -=item How do I decode a MIME/BASE64 string? +=item Conventions -=item How do I return the user's mail address? +C, C

, C, C -=item How do I send mail? +=item File Operations -=item How do I use MIME to make an attachment to a mail message? +=item File Input and Output -=item How do I read mail? +=item File Positioning -=item How do I find out my hostname/domainname/IP address? +=item Memory Management and String Handling -=item How do I fetch a news article or the active newsgroups? +=item Character Class Tests -=item How do I fetch/put an FTP file? +=item F functions -=item How can I do RPC in Perl? +=item Miscellaneous functions =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO =back -=head2 perlcompile - Introduction to the Perl Compiler-Translator +=head2 perlguts - Introduction to the Perl API =over 4 =item DESCRIPTION +=item Variables + =over 4 -=item Layout +=item Datatypes -B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref +=item What is an "IV"? -=back +=item Working with SVs -=item Using The Back Ends +=item Offsets -=over 4 +=item What's Really Stored in an SV? -=item The Cross Referencing Back End +=item Working with AVs -i, &, s, r +=item Working with HVs -=item The Decompiling Back End +=item Hash API Extensions -=item The Lint Back End +=item AVs, HVs and undefined values -=item The Simple C Back End +=item References -=item The Bytecode Back End +=item Blessed References and Class Objects -=item The Optimized C Back End +=item Creating New Variables -=back +GV_ADDMULTI, GV_ADDWARN -=item Module List for the Compiler Suite +=item Reference Counts and Mortality -B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, -B::Concise, B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, -B::Stackobj, B::Stash, B::Terse, B::Xref +=item Stashes and Globs -=item KNOWN PROBLEMS +=item Double-Typed SVs -=item AUTHOR +=item Magic Variables -=back +=item Assigning Magic -=head2 perlembed - how to embed perl in your C program +=item Magic Virtual Tables -=over 4 +=item Finding Magic -=item DESCRIPTION +=item Understanding the Magic of Tied Hashes and Arrays -=over 4 +=item Localizing changes -=item PREAMBLE +C, C, C, C, +C, C, C, C, C, C, C, +C, +C, +C, C, C, C, C, +C, C, +C, C, C -B, B, B, B, B +=back -=item ROADMAP +=item Subroutines -=item Compiling your C program +=over 4 -=item Adding a Perl interpreter to your C program +=item XSUBs and the Argument Stack -=item Calling a Perl subroutine from your C program +=item Calling Perl Routines from within C Programs -=item Evaluating a Perl statement from your C program +=item Memory Allocation -=item Performing Perl pattern matches and substitutions from your C program +=item PerlIO -=item Fiddling with the Perl stack from your C program +=item Putting a C value on Perl stack -=item Maintaining a persistent interpreter +=item Scratchpads -=item Execution of END blocks +=item Scratchpads and recursion -=item Maintaining multiple interpreter instances +=back -=item Using Perl modules, which themselves use C libraries, from your C -program +=item Compiled code -=back +=over 4 -=item Embedding Perl under Win32 +=item Code tree -=item Hiding Perl_ +=item Examining the tree -=item MORAL +=item Compile pass 1: check routines -=item AUTHOR +=item Compile pass 1a: constant folding -=item COPYRIGHT +=item Compile pass 2: context propagation + +=item Compile pass 3: peephole optimization + +=item Pluggable runops =back -=head2 perldebguts - Guts of Perl debugging +=item Examining internal data structures with the C functions + +=item How multiple interpreters and concurrency are supported =over 4 -=item DESCRIPTION +=item Background and PERL_IMPLICIT_CONTEXT -=item Debugger Internals +=item So what happened to dTHR? -=over 4 +=item How do I use all this in extensions? -=item Writing Your Own Debugger +=item Should I do anything special if I call perl from multiple threads? + +=item Future Plans and PERL_IMPLICIT_SYS =back -=item Frame Listing Output Examples +=item Internal Functions -=item Debugging regular expressions +A, p, d, s, n, r, f, M, o, x, m, X, E, b =over 4 -=item Compile-time output +=item Formatted Printing of IVs, UVs, and NVs -C I C I, C I C -I, C, C, C -I, C, C, C, C, C, C, -C +=item Pointer-To-Integer and Integer-To-Pointer -=item Types of nodes +=item Source Documentation -=item Run-time output +=item Backwards compatibility =back -=item Debugging Perl memory usage +=item Unicode Support =over 4 -=item Using C<$ENV{PERL_DEBUG_MSTATS}> - -C, Free/Used, C, C, C, C, C +=item What B Unicode, anyway? -=item Example of using B<-DL> switch +=item How can I recognise a UTF-8 string? -C<717>, C<002>, C<054>, C<602>, C<702>, C<704> +=item How does UTF-8 represent Unicode characters? -=item B<-DL> details +=item How does Perl store UTF-8 strings? -C, C, C +=item How do I convert a string to UTF-8? -=item Limitations of B<-DL> statistics +=item Is there anything else I need to know? =back +=item Custom Operators + +=item AUTHORS + =item SEE ALSO =back -=head2 perlxstut, perlXStut - Tutorial for writing XSUBs +=head2 perlcall - Perl calling conventions from C =over 4 =item DESCRIPTION -=item SPECIAL NOTES - -=over 4 - -=item make - -=item Version caveat +An Error Handler, An Event Driven Program -=item Dynamic Loading versus Static Loading +=item THE CALL_ FUNCTIONS -=back +call_sv, call_pv, call_method, call_argv -=item TUTORIAL +=item FLAG VALUES =over 4 -=item EXAMPLE 1 +=item G_VOID -=item EXAMPLE 2 +=item G_SCALAR -=item What has gone on? +=item G_ARRAY -=item Writing good test scripts +=item G_DISCARD -=item EXAMPLE 3 +=item G_NOARGS -=item What's new here? +=item G_EVAL -=item Input and Output Parameters +=item G_KEEPERR -=item The XSUBPP Program +=item Determining the Context -=item The TYPEMAP file +=back -=item Warning about Output Arguments +=item KNOWN PROBLEMS -=item EXAMPLE 4 +=item EXAMPLES -=item What has happened here? +=over 4 -=item Anatomy of .xs file +=item No Parameters, Nothing returned -=item Getting the fat out of XSUBs +=item Passing Parameters -=item More about XSUB arguments +=item Returning a Scalar -=item The Argument Stack +=item Returning a list of values -=item Extending your Extension +=item Returning a list in a scalar context -=item Documenting your Extension +=item Returning Data from Perl via the parameter list -=item Installing your Extension +=item Using G_EVAL -=item EXAMPLE 5 +=item Using G_KEEPERR -=item New Things in this Example +=item Using call_sv -=item EXAMPLE 6 +=item Using call_argv -=item New Things in this Example +=item Using call_method -=item EXAMPLE 7 (Coming Soon) +=item Using GIMME_V -=item EXAMPLE 8 (Coming Soon) +=item Using Perl to dispose of temporaries -=item EXAMPLE 9 Passing open files to XSes +=item Strategies for storing Callback Context Information -=item Troubleshooting these Examples +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 -=back +=item Alternate Stack Manipulation -=item See also +=item Creating and calling an anonymous subroutine in C -=item Author +=back -=over 4 +=item SEE ALSO -=item Last Changed +=item AUTHOR -=back +=item DATE =back -=head2 perlxs - XS language reference manual +=head2 perlapi - autogenerated documentation for the perl public API =over 4 =item DESCRIPTION -=over 4 - -=item Introduction +=item "Gimme" Values -=item On The Road +GIMME, GIMME_V, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID -=item The Anatomy of an XSUB +=item Array Manipulation Functions -=item The Argument Stack +AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill, +av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift, +get_av, newAV, sortsv -=item The RETVAL Variable +=item Callback Functions -=item The MODULE Keyword +call_argv, call_method, call_pv, call_sv, ENTER, eval_pv, eval_sv, +FREETMPS, LEAVE, SAVETMPS -=item The PACKAGE Keyword +=item Character classes -=item The PREFIX Keyword +isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, toLOWER, toUPPER -=item The OUTPUT: Keyword +=item Cloning an interpreter -=item The NO_OUTPUT Keyword +perl_clone -=item The CODE: Keyword +=item CV Manipulation Functions -=item The INIT: Keyword +CvSTASH, get_cv -=item The NO_INIT Keyword +=item Embedding Functions -=item Initializing Function Parameters +cv_undef, load_module, nothreadhook, perl_alloc, perl_construct, +perl_destruct, perl_free, perl_parse, perl_run, require_pv -=item Default Parameter Values +=item Functions in file pp_pack.c -=item The PREINIT: Keyword +packlist, pack_cat, unpackstring, unpack_str -=item The SCOPE: Keyword +=item Global Variables -=item The INPUT: Keyword +PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes -=item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords +=item GV Functions -=item The C Keyword +GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, +gv_fetchmeth_autoload, gv_stashpv, gv_stashpvn, gv_stashsv -=item Variable-length Parameter Lists +=item Handy Values -=item The C_ARGS: Keyword +Nullav, Nullch, Nullcv, Nullhv, Nullsv -=item The PPCODE: Keyword +=item Hash Manipulation Functions -=item Returning Undef And Empty Lists +get_hv, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, +HeSVKEY_set, HeVAL, HvNAME, hv_assert, hv_clear, hv_clear_placeholders, +hv_delete, hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent, +hv_iterinit, hv_iterkey, hv_iterkeysv, hv_iternext, hv_iternextsv, +hv_iternext_flags, hv_iterval, hv_magic, hv_scalar, hv_store, hv_store_ent, +hv_undef, newHV -=item The REQUIRE: Keyword +=item Magical Functions -=item The CLEANUP: Keyword +mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set, +SvGETMAGIC, SvLOCK, SvSETMAGIC, SvSetMagicSV, SvSetMagicSV_nosteal, +SvSetSV, SvSetSV_nosteal, SvSHARE, SvUNLOCK -=item The POSTCALL: Keyword +=item Memory Management -=item The BOOT: Keyword +Copy, CopyD, Move, MoveD, New, Newc, Newz, Poison, Renew, Renewc, Safefree, +savepv, savepvn, savesharedpv, savesvpv, StructCopy, Zero, ZeroD -=item The VERSIONCHECK: Keyword +=item Miscellaneous Functions -=item The PROTOTYPES: Keyword +fbm_compile, fbm_instr, form, getcwd_sv, new_version, scan_version, strEQ, +strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_nolocking, +sv_nosharing, sv_nounlocking, upg_version, vcmp, vnormal, vnumify, +vstringify -=item The PROTOTYPE: Keyword +=item Numeric functions -=item The ALIAS: Keyword +grok_bin, grok_hex, grok_number, grok_numeric_radix, grok_oct, scan_bin, +scan_hex, scan_oct -=item The OVERLOAD: Keyword +=item Optree Manipulation Functions -=item The FALLBACK: Keyword +cv_const_sv, newCONSTSUB, newXS -=item The INTERFACE: Keyword +=item Pad Data Structures -=item The INTERFACE_MACRO: Keyword +pad_sv -=item The INCLUDE: Keyword +=item Stack Manipulation Macros -=item The CASE: Keyword +dMARK, dORIGMARK, dSP, EXTEND, MARK, mPUSHi, mPUSHn, mPUSHp, mPUSHu, +mXPUSHi, mXPUSHn, mXPUSHp, mXPUSHu, ORIGMARK, POPi, POPl, POPn, POPp, +POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHmortal, PUSHn, PUSHp, PUSHs, +PUSHu, PUTBACK, SP, SPAGAIN, XPUSHi, XPUSHmortal, XPUSHn, XPUSHp, XPUSHs, +XPUSHu, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, +XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_UV, XSRETURN_YES, XST_mIV, XST_mNO, +XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES -=item The & Unary Operator +=item SV Flags -=item Inserting POD, Comments and C Preprocessor Directives +svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG -=item Using XS With C++ +=item SV Manipulation Functions -=item Interface Strategy +get_sv, looks_like_number, newRV_inc, newRV_noinc, newSV, NEWSV, newSViv, +newSVnv, newSVpv, newSVpvf, newSVpvn, newSVpvn_share, newSVrv, newSVsv, +newSVuv, SvCUR, SvCUR_set, SvEND, SvGROW, SvIOK, SvIOKp, SvIOK_notUV, +SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, SvIsCOW, +SvIsCOW_shared_hash, SvIV, SvIVX, SvIVx, SvIV_nomg, SvLEN, SvNIOK, SvNIOKp, +SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, SvNOK_on, SvNOK_only, SvNV, SvNVx, +SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, SvPOK_on, SvPOK_only, +SvPOK_only_UTF8, SvPV, SvPVbyte, SvPVbytex, SvPVbytex_force, +SvPVbyte_force, SvPVbyte_nolen, SvPVutf8, SvPVutf8x, SvPVutf8x_force, +SvPVutf8_force, SvPVutf8_nolen, SvPVX, SvPVx, SvPV_force, SvPV_force_nomg, +SvPV_nolen, SvPV_nomg, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, +SvROK_off, SvROK_on, SvRV, SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, +SvTAINTED_on, SvTRUE, SvTYPE, SvUOK, SvUPGRADE, SvUTF8, SvUTF8_off, +SvUTF8_on, SvUV, SvUVx, SvUVX, SvUV_nomg, SvVOK, sv_2bool, sv_2cv, sv_2io, +sv_2iv_flags, sv_2mortal, sv_2nv, sv_2pvbyte, sv_2pvbyte_nolen, sv_2pvutf8, +sv_2pvutf8_nolen, sv_2pv_flags, sv_2pv_nolen, sv_2uv_flags, sv_backoff, +sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn, sv_catpvn_flags, +sv_catpvn_mg, sv_catpvn_nomg, sv_catpv_mg, sv_catsv, sv_catsv_flags, +sv_catsv_mg, sv_catsv_nomg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, +sv_collxfrm, sv_copypv, sv_dec, sv_derived_from, sv_eq, sv_force_normal, +sv_force_normal_flags, sv_free, sv_gets, sv_grow, sv_inc, sv_insert, +sv_isa, sv_isobject, sv_iv, sv_len, sv_len_utf8, sv_magic, sv_magicext, +sv_mortalcopy, sv_newmortal, sv_newref, sv_nv, sv_pos_b2u, sv_pos_u2b, +sv_pv, sv_pvbyte, sv_pvbyten, sv_pvbyten_force, sv_pvn, sv_pvn_force, +sv_pvn_force_flags, sv_pvutf8, sv_pvutf8n, sv_pvutf8n_force, sv_reftype, +sv_replace, sv_report_used, sv_reset, sv_rvweaken, sv_setiv, sv_setiv_mg, +sv_setnv, sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv, +sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv, +sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setref_uv, sv_setsv, +sv_setsv_flags, sv_setsv_mg, sv_setsv_nomg, sv_setuv, sv_setuv_mg, +sv_taint, sv_tainted, sv_true, sv_unmagic, sv_unref, sv_unref_flags, +sv_untaint, sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_utf8_decode, +sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, sv_utf8_upgrade_flags, +sv_uv, sv_vcatpvf, sv_vcatpvfn, sv_vcatpvf_mg, sv_vsetpvf, sv_vsetpvfn, +sv_vsetpvf_mg -=item Perl Objects And C Structures +=item Unicode Support -=item The Typemap +bytes_from_utf8, bytes_to_utf8, ibcmp_utf8, is_utf8_char, is_utf8_string, +is_utf8_string_loc, pv_uni_display, sv_cat_decode, sv_recode_to_utf8, +sv_uni_display, to_utf8_case, to_utf8_fold, to_utf8_lower, to_utf8_title, +to_utf8_upper, utf8n_to_uvchr, utf8n_to_uvuni, utf8_distance, utf8_hop, +utf8_length, utf8_to_bytes, utf8_to_uvchr, utf8_to_uvuni, uvchr_to_utf8, +uvuni_to_utf8_flags -=item Safely Storing Static Data in XS +=item Variables created by C and C internal functions -MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT +ax, CLASS, dAX, dITEMS, dUNDERBAR, dXSARGS, dXSI32, items, ix, newXSproto, +RETVAL, ST, THIS, UNDERBAR, XS, XS_VERSION, XS_VERSION_BOOTCHECK -=back +=item Warning and Dieing -=item EXAMPLES +croak, warn -=item XS VERSION +=item AUTHORS -=item AUTHOR +=item SEE ALSO =back -=head2 perlclib - Internal replacements for standard C library functions +=head2 perlintern - autogenerated documentation of purely B + Perl functions =over 4 =item DESCRIPTION -=over 4 - -=item Conventions - -C, C

, C, C - -=item File Operations - -=item File Input and Output - -=item File Positioning - -=item Memory Management and String Handling +=item CV reference counts and CvOUTSIDE -=item Character Class Tests +CvWEAKOUTSIDE -=item F functions +=item Functions in file pad.h -=item Miscellaneous functions +CX_CURPAD_SAVE, CX_CURPAD_SV, PAD_BASE_SV, PAD_CLONE_VARS, +PAD_COMPNAME_FLAGS, PAD_COMPNAME_GEN, PAD_COMPNAME_OURSTASH, +PAD_COMPNAME_PV, PAD_COMPNAME_TYPE, PAD_DUP, PAD_RESTORE_LOCAL, +PAD_SAVE_LOCAL, PAD_SAVE_SETNULLPAD, PAD_SETSV, PAD_SET_CUR, +PAD_SET_CUR_NOSAVE, PAD_SV, PAD_SVl, SAVECLEARSV, SAVECOMPPAD, SAVEPADSV -=back +=item Functions in file pp_ctl.c -=item SEE ALSO +find_runcv -=back +=item Global Variables -=head2 perlguts - Introduction to the Perl API +PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_ofs_sv, +PL_rs -=over 4 +=item GV Functions -=item DESCRIPTION +is_gv_magical -=item Variables +=item IO Functions -=over 4 +start_glob -=item Datatypes +=item Pad Data Structures -=item What is an "IV"? +CvPADLIST, cv_clone, cv_dump, do_dump_pad, intro_my, pad_add_anon, +pad_add_name, pad_alloc, pad_block_start, pad_check_dup, pad_findlex, +pad_findmy, pad_fixup_inner_anons, pad_free, pad_leavemy, pad_new, +pad_push, pad_reset, pad_setsv, pad_swipe, pad_tidy, pad_undef -=item Working with SVs +=item Stack Manipulation Macros -=item Offsets +djSP, LVRET -=item What's Really Stored in an SV? +=item SV Manipulation Functions -=item Working with AVs +find_uninit_var, report_uninit, sv_add_arena, sv_clean_all, sv_clean_objs, +sv_free_arenas -=item Working with HVs +=item AUTHORS -=item Hash API Extensions +=item SEE ALSO -=item References +=back -=item Blessed References and Class Objects +=head2 perliol - C API for Perl's implementation of IO in Layers. -=item Creating New Variables +=over 4 -GV_ADDMULTI, GV_ADDWARN +=item SYNOPSIS -=item Reference Counts and Mortality +=item DESCRIPTION -=item Stashes and Globs +=over 4 -=item Double-Typed SVs +=item History and Background -=item Magic Variables +=item Basic Structure -=item Assigning Magic +=item Layers vs Disciplines -=item Magic Virtual Tables +=item Data Structures -=item Finding Magic +=item Functions and Attributes -=item Understanding the Magic of Tied Hashes and Arrays +=item Per-instance Data -=item Localizing changes +=item Layers in action. -C, C, C, C, -C, C, C, C, C, C, C, -C, -C, -C, C, C, C, C, -C, C, -C, C, C +=item Per-instance flag bits -=back +PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR, +PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8, +PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF, +PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS -=item Subroutines +=item Methods in Detail -=over 4 +fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF, +PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode, +Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof, +Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, +Set_ptrcnt -=item XSUBs and the Argument Stack +=item Utilities -=item Calling Perl Routines from within C Programs +=item Implementing PerlIO Layers -=item Memory Allocation +C implementations, Perl implementations -=item PerlIO +=item Core Layers -=item Putting a C value on Perl stack +"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8" -=item Scratchpads +=item Extension Layers -=item Scratchpads and recursion +":encoding", ":scalar", ":via" =back -=item Compiled code - -=over 4 +=item TODO -=item Code tree +=back -=item Examining the tree +=head2 perlapio - perl's IO abstraction interface. -=item Compile pass 1: check routines +=over 4 -=item Compile pass 1a: constant folding +=item SYNOPSIS -=item Compile pass 2: context propagation +=item DESCRIPTION -=item Compile pass 3: peephole optimization +1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, 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, B -=item Pluggable runops +=over 4 -=back +=item Co-existence with stdio -=item Examining internal data structures with the C functions +B, B, +B, B -=item How multiple interpreters and concurrency are supported +=item "Fast gets" Functions -=over 4 +B, B, B, +B, B, B, +B, B, B, +B -=item Background and PERL_IMPLICIT_CONTEXT +=item Other Functions -=item So what happened to dTHR? +PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), +'E' read, 'E' write, '+' read/write, PerlIO_debug(fmt,...) -=item How do I use all this in extensions? +=back -=item Should I do anything special if I call perl from multiple threads? +=back -=item Future Plans and PERL_IMPLICIT_SYS +=head2 perlhack - How to hack at the Perl internals -=back +=over 4 -=item Internal Functions +=item DESCRIPTION -A, p, d, s, n, r, f, M, o, j, x +Does concept match the general goals of Perl?, Where is the +implementation?, Backwards compatibility, Could it be a module instead?, Is +the feature generic enough?, Does it potentially introduce new bugs?, Does +it preclude other desirable features?, Is the implementation robust?, Is +the implementation generic enough to be portable?, Is the implementation +tested?, Is there enough documentation?, Is there another way to do it?, +Does it create too much work?, Patches speak louder than words =over 4 -=item Formatted Printing of IVs, UVs, and NVs +=item Keeping in sync -=item Pointer-To-Integer and Integer-To-Pointer +rsync'ing the source tree, Using rsync over the LAN, Using pushing over the +NFS, rsync'ing the patches -=item Source Documentation +=item Why rsync the source tree -=back +It's easier to rsync the source tree, It's more reliable -=item Unicode Support +=item Why rsync the patches -=over 4 +It's easier to rsync the patches, It's a good reference, Finding a start +point, Finding how to fix a bug, Finding the source of misbehaviour -=item What B Unicode, anyway? +=item Working with the source -=item How can I recognise a UTF8 string? +=item Perlbug administration -=item How does UTF8 represent Unicode characters? +=item Submitting patches -=item How does Perl store UTF8 strings? +L, L and L, L, +F, The perl5-porters FAQ -=item How do I convert a string to UTF8? +=item Finding Your Way Around -=item Is there anything else I need to know? +Core modules, Tests, Documentation, Configure, Interpreter -=back +=item Elements of the interpreter -=item Custom Operators +Startup, Parsing, Optimization, Running -=item AUTHORS +=item Internal Variable Types -=item SEE ALSO +=item Op Trees -=back +=item Stacks -=head2 perlcall - Perl calling conventions from C +Argument stack, Mark stack, Save stack -=over 4 +=item Millions of Macros -=item DESCRIPTION +=item The .i Targets -An Error Handler, An Event Driven Program +=item Poking at Perl -=item THE CALL_ FUNCTIONS +=item Using a source-level debugger -call_sv, call_pv, call_method, call_argv +run [args], break function_name, break source.c:xxx, step, next, continue, +finish, 'enter', print -=item FLAG VALUES +=item gdb macro support -=over 4 +=item Dumping Perl Data Structures -=item G_VOID +=item Patching -=item G_SCALAR +=item Patching a core module -=item G_ARRAY +=item Adding a new function to the core -=item G_DISCARD +=item Writing a test -=item G_NOARGS +F, F, F, F, F, F, +F, F, F, F, F, t/base t/comp, +t/cmd t/run t/io t/op, t/lib ext lib -=item G_EVAL +=item Special Make Test Targets -=item G_KEEPERR +coretest, test.deparse, test.taintwarn, minitest, test.valgrind +check.valgrind utest.valgrind ucheck.valgrind, test.third check.third +utest.third ucheck.third, test.torture torturetest, utest ucheck test.utf8 +check.utf8, minitest.utf16 test.utf16, test_harness -=item Determining the Context +=item Running tests by hand -=back +PERL_CORE=1, PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST -=item KNOWN PROBLEMS +=back -=item EXAMPLES +=item EXTERNAL TOOLS FOR DEBUGGING PERL =over 4 -=item No Parameters, Nothing returned +=item Rational Software's Purify -=item Passing Parameters +=item Purify on Unix -=item Returning a Scalar +-Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity -=item Returning a list of values +=item Purify on NT -=item Returning a list in a scalar context +DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -=item Returning Data from Perl via the parameter list +=item valgrind -=item Using G_EVAL +=item Compaq's/Digital's/HP's Third Degree -=item Using G_KEEPERR +=item PERL_DESTRUCT_LEVEL -=item Using call_sv +=item Profiling -=item Using call_argv +=item Gprof Profiling -=item Using call_method +-a, -b, -e routine, -f routine, -s, -z -=item Using GIMME_V +=item GCC gcov Profiling -=item Using Perl to dispose of temporaries +=item Pixie Profiling -=item Strategies for storing Callback Context Information +-h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage, +-z[ero] -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 Miscellaneous tricks -=item Alternate Stack Manipulation +=item CONCLUSION -=item Creating and calling an anonymous subroutine in C +I =back -=item SEE ALSO - =item AUTHOR -=item DATE - =back -=head2 perlutil - utilities packaged with the Perl distribution +=head2 perlbook - Perl book information =over 4 =item DESCRIPTION -=over 4 +=back -=item DOCUMENTATION +=head2 perltodo - Perl TO-DO List -L, L and L, -L and L, L, -L, L, L, -L +=over 4 -=item CONVERTORS +=item DESCRIPTION -L, L, L +=item assertions -=item Administration +=item iCOW -L +=item (?{...}) closures in regexps -=item Development +=item A re-entrant regexp engine -L, L, L and L, -L, L, L +=item pragmata -=item SEE ALSO +=over 4 -=back +=item lexical pragmas + +=item use less 'memory' =back -=head2 perlfilter - Source Filters +=item prototypes and functions =over 4 -=item DESCRIPTION +=item _ prototype character -=item CONCEPTS +=item inlining autoloaded constants -=item USING FILTERS +=item Finish off lvalue functions -=item WRITING A SOURCE FILTER +=back -=item WRITING A SOURCE FILTER IN C +=item Unicode and UTF8 -B +=over 4 -=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE +=item Implicit Latin 1 => Unicode translation -=item WRITING A SOURCE FILTER IN PERL +=item UTF8 caching code -=item USING CONTEXT: THE DEBUG FILTER +=item Unicode in Filenames -=item CONCLUSION +=item Unicode in %ENV -=item THINGS TO LOOK OUT FOR +=back -Some Filters Clobber the C Handle +=item Regexps -=item REQUIREMENTS +=over 4 -=item AUTHOR +=item regexp optimiser optional -=item Copyrights +=item common suffices/prefices in regexps (trie optimization) =back -=head2 perldbmfilter - Perl DBM Filters +=item POD =over 4 -=item SYNOPSIS +=item POD -> HTML conversion still sucks -=item DESCRIPTION +=back -B, B, B, -B +=item Misc medium sized projects =over 4 -=item The Filter +=item UNITCHECK -=item An Example -- the NULL termination problem. +=item optional optimizer -=item Another Example -- Key is a C int. +=item You WANT *how* many -=back +=item lexical aliases + +=item no 6 + +=item IPv6 -=item SEE ALSO +=item entersub XS vs Perl -=item AUTHOR +=item @INC source filter to Filter::Simple -=back +=item bincompat functions -=head2 perlapi - autogenerated documentation for the perl public API +=item Use fchown/fchmod internally -=over 4 +=item Constant folding -=item DESCRIPTION +=back -=item "Gimme" Values +=item Tests -GIMME, GIMME_V, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID +=over 4 -=item Array Manipulation Functions +=item Make Schwern poorer -AvFILL, av_clear, av_delete, av_exists, av_extend, av_fetch, av_fill, -av_len, av_make, av_pop, av_push, av_shift, av_store, av_undef, av_unshift, -get_av, newAV, Nullav, sortsv +=item test B -=item Callback Functions +=item common test code for timed bailout -call_argv, call_method, call_pv, call_sv, ENTER, eval_pv, eval_sv, -FREETMPS, LEAVE, SAVETMPS +=back -=item Character classes +=item Installation -isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, toLOWER, toUPPER +=over 4 -=item Cloning an interpreter +=item compressed man pages -perl_clone +=item Make Config.pm cope with differences between build and installed perl -=item CV Manipulation Functions +=item Relocatable perl -CvSTASH, get_cv, Nullcv +=item make HTML install work -=item Embedding Functions +=item put patchlevel in -v -cv_undef, load_module, nothreadhook, perl_alloc, perl_construct, -perl_destruct, perl_free, perl_parse, perl_run, require_pv +=back -=item Functions in file pp_pack.c +=item Incremental things -packlist, pack_cat, unpackstring, unpack_str +=over 4 -=item Global Variables +=item autovivification -PL_modglobal, PL_na, PL_sv_no, PL_sv_undef, PL_sv_yes +=item fix tainting bugs -=item GV Functions +=item Make tainting consistent -GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, -gv_fetchmeth_autoload, gv_stashpv, gv_stashsv +=item Dual life everything -=item Handy Values +=back -HEf_SVKEY, Nullch, Nullsv +=item Vague things -=item Hash Manipulation Functions +=over 4 -get_hv, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force, HeSVKEY_set, -HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists, -hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey, -hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iternext_flags, hv_iterval, -hv_magic, hv_store, hv_store_ent, hv_undef, newHV, Nullhv +=item threads -=item Magical Functions +=item POSIX memory footprint -mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set, -SvGETMAGIC, SvLOCK, SvSETMAGIC, SvSetMagicSV, SvSetMagicSV_nosteal, -SvSetSV, SvSetSV_nosteal, SvSHARE +=item Optimize away @_ -=item Memory Management +=item switch ops -Copy, Move, New, Newc, NEWSV, Newz, Poison, Renew, Renewc, Safefree, -savepv, savepvn, savesharedpv, StructCopy, Zero +=item Attach/detach debugger from running program -=item Miscellaneous Functions +=item A decent benchmark -fbm_compile, fbm_instr, form, getcwd_sv, strEQ, strGE, strGT, strLE, strLT, -strNE, strnEQ, strnNE +=item readpipe(LIST) -=item Numeric functions +=item Self ties -grok_bin, grok_hex, grok_number, grok_numeric_radix, grok_oct, scan_bin, -scan_hex, scan_oct +=back -=item Optree Manipulation Functions +=back -cv_const_sv, newCONSTSUB, newXS +=head2 perldoc - Look up Perl documentation in Pod format. -=item Pad Data Structures +=over 4 -pad_sv +=item SYNOPSIS -=item Stack Manipulation Macros +=item DESCRIPTION -dMARK, dORIGMARK, dSP, EXTEND, MARK, ORIGMARK, POPi, POPl, POPn, POPp, -POPpbytex, POPpx, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, -PUTBACK, SP, SPAGAIN, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XSRETURN, -XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, -XSRETURN_YES, XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES +=item OPTIONS -=item SV Flags +B<-h>, B<-v>, B<-t>, B<-u>, B<-m> I, B<-l>, B<-F>, B<-f> +I, B<-q> I, B<-T>, B<-d> +I, B<-o> I, B<-M> I, +B<-w> I or B<-w> I

tag =item FETCHING ENVIRONMENT VARIABLES B, B, B, B, -B, B, B, B, -B, B, B, B, -B, B, B, -B, B, B, B +B, B, B Return the script +name as a partial URL, for self-refering scripts, B, B, B, B, B, +B, B, B, B, B, B, B, B =item USING NPH SCRIPTS @@ -10894,11 +11551,35 @@ module =back +=back + +=over 4 + +=item GLOBAL VARIABLES + +=over 4 + +=item $Carp::CarpLevel + +=item $Carp::MaxEvalLen + +=item $Carp::MaxArgLen + +=item $Carp::MaxArgNums + +=item $Carp::Verbose + +=back + +=back + +=over 4 + =item BUGS =back -=head2 Carp::Heavy, Carp heavy machinery - no user serviceable parts inside +=head2 Carp::Heavy - heavy machinery, no user serviceable parts inside =head2 Class::ISA -- report the search path for a class's ISA tree @@ -11043,39 +11724,39 @@ 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, 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, 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, -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, 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, 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, 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, +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, 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, 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, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, @@ -11146,12 +11827,12 @@ 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, +C, C, C, C, C, C, -C, C, C, -C, C, C, +C, C, C, +C, C, C, C, C, C, C, C =item k @@ -11176,8 +11857,9 @@ C, C =item M -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 =item n @@ -11201,8 +11883,8 @@ 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, C =item q @@ -11223,19 +11905,19 @@ 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, 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, 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, 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, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C =item t @@ -11249,25 +11931,26 @@ 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, -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, C, C, C, C, +C, C, C, C, C, C, +C, C, C =item v 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, C, +C, C, C, +C, C, C, C, +C, C, C, +C, C, C =item x -C, C +C =item y @@ -11283,6 +11966,18 @@ C, C =back +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +dynamic, nonxs, static + +=item AUTHOR + +=back + =head2 Cwd - get pathname of current working directory =over 4 @@ -11295,7 +11990,7 @@ C, C =item getcwd and friends -getcwd, cwd, fastcwd, fastgetcwd +getcwd, cwd, fastcwd, fastgetcwd, getdcwd =item abs_path and friends @@ -11307,6 +12002,8 @@ abs_path, realpath, fast_abs_path =item NOTES +=item AUTHOR + =item SEE ALSO =back @@ -11348,6 +12045,74 @@ CLIENT->output(LIST) =back +=head2 DBM_Filter -- Filter DBM keys/values + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item What is a DBM Filter? + +=over 4 + +=item So what's new? + +=back + +=item METHODS + +=over 4 + +=item $db->Filter_Push() + +=item $db->Filter_Key_Push() + +=item $db->Filter_Value_Push() + +Filter_Push, Filter_Key_Push, Filter_Value_Push + +=item $db->Filter_Pop() + +=item $db->Filtered() + +=back + +=item Writing a Filter + +=over 4 + +=item Immediate Filters + +=item Canned Filters + +"name", params + +=back + +=item Filters Included + +utf8, encode, compress, int32, null + +=item NOTES + +=over 4 + +=item Maintain Round Trip Integrity + +=item Don't mix filtered & non-filtered data in the same database file. + +=back + +=item EXAMPLE + +=item SEE ALSO + +=item AUTHOR + +=back + =head2 DB_File - Perl5 access to Berkeley DB version 1.x =over 4 @@ -11518,6 +12283,12 @@ Dumper =item BUGS +=over 4 + +=item NOTE + +=back + =item AUTHOR =item VERSION @@ -11556,13 +12327,45 @@ Dumper =over 4 +=item Why use ppport.h? + +You should use F in modern code so that your code will work +with the widest range of Perl interpreters possible, without significant +additional work. + +=item How to use ppport.h + +=item Running ppport.h + +=back + +=item FUNCTIONS + +=over 4 + =item WriteFile =back -=item ppport.h +=item COMPATIBILITY -=item AUTHOR +=over 4 + +=item Provided Perl compatibility API + +=item Perl API not supported by ppport.h + +perl 5.9.2, perl 5.9.1, perl 5.9.0, perl 5.8.3, perl 5.8.1, perl 5.8.0, +perl 5.7.3, perl 5.7.2, perl 5.7.1, perl 5.6.1, perl 5.6.0, perl 5.005_03, +perl 5.005, perl 5.004_05, perl 5.004_04, perl 5.004 + +=back + +=item BUGS + +=item AUTHORS + +=item COPYRIGHT =item SEE ALSO @@ -11628,7 +12431,7 @@ Dumper =back -=head2 Digest:: - Modules that calculate message digests +=head2 Digest - Modules that calculate message digests =over 4 @@ -11642,9 +12445,12 @@ I, I, I $ctx = Digest->XXX($arg,...), $ctx = Digest->new(XXX => $arg,...), $ctx = Digest::XXX->new($arg,...), $other_ctx = $ctx->clone, $ctx->reset, -$ctx->add($data,...), $ctx->addfile($io_handle), $ctx->digest, +$ctx->add( $data, ... ), $ctx->addfile( $io_handle ), $ctx->add_bits( +$data, $nbits ), $ctx->add_bits( $bitstring ), $ctx->digest, $ctx->hexdigest, $ctx->b64digest +=item Digest speed + =item SEE ALSO =item AUTHOR @@ -11665,8 +12471,9 @@ md5($data,...), md5_hex($data,...), md5_base64($data,...) =item METHODS -$md5 = Digest::MD5->new, $md5->clone, $md5->reset, $md5->add($data,...), -$md5->addfile($io_handle), $md5->digest, $md5->hexdigest, $md5->b64digest +$md5 = Digest::MD5->new, $md5->reset, $md5->clone, $md5->add($data,...), +$md5->addfile($io_handle), $md5->add_bits($data, $nbits), +$md5->add_bits($bitstring), $md5->digest, $md5->hexdigest, $md5->b64digest =item EXAMPLES @@ -11678,6 +12485,18 @@ $md5->addfile($io_handle), $md5->digest, $md5->hexdigest, $md5->b64digest =back +=head2 Digest::base - Digest base class + +=over 4 + +=item SYNPOSIS + +=item DESCRIPTION + +=item SEE ALSO + +=back + =head2 DirHandle - supply object methods for directory handles =over 4 @@ -11725,10 +12544,10 @@ compactDump, veryCompact, set, get =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_unload_file(), dl_load_flags(), dl_find_symbol(), -dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), -bootstrap() +@dl_modules, @dl_shared_objects, dl_error(), $dl_debug, dl_findfile(), +dl_expandspec(), dl_load_file(), dl_unload_file(), dl_load_flags(), +dl_find_symbol(), dl_find_symbol_anywhere(), dl_undef_symbols(), +dl_install_xsub(), bootstrap() =item AUTHOR @@ -11743,6 +12562,24 @@ Perl code =item DESCRIPTION +=over 4 + +=item Migration from C + +=item Backward compatible boilerplate + +=back + +=item Order of initialization: early load() + +=over 4 + +=item The most hairy case + +=back + +=item LIMITATIONS + =item AUTHOR =back @@ -11786,11 +12623,11 @@ CHECK]); =item Handling Malformed Data -I = Encode::FB_DEFAULT ( == 0), I = Encode::FB_CROAK ( == 1), -I = Encode::FB_QUIET, I = Encode::FB_WARN, perlqq mode -(I = Encode::FB_PERLQQ), HTML charref mode (I = -Encode::FB_HTMLCREF), XML charref mode (I = Encode::FB_XMLCREF), The -bitmask +B Not all encoding suppport this feature, I = +Encode::FB_DEFAULT ( == 0), I = Encode::FB_CROAK ( == 1), I = +Encode::FB_QUIET, I = Encode::FB_WARN, perlqq mode (I = +Encode::FB_PERLQQ), HTML charref mode (I = Encode::FB_HTMLCREF), XML +charref mode (I = Encode::FB_XMLCREF), The bitmask =over 4 @@ -11906,7 +12743,8 @@ reference, e.g.: =item Other methods defined in Encode::Encodings --Ename, -Erenew, -Eperlio_ok(), -Eneeds_lines() +-Ename, -Erenew, -Erenewed, -Eperlio_ok(), +-Eneeds_lines() =item Example: Encode::ROT13 @@ -12160,6 +12998,8 @@ BOM as integer when fetched in network byte order =item Surrogate Pairs +=item Error Checking + =item SEE ALSO =back @@ -12227,7 +13067,8 @@ Implementation Base Class =item Other methods defined in Encode::Encodings --Ename, -Erenew, -Eperlio_ok(), -Eneeds_lines() +-Ename, -Erenew, -Erenewed, -Eperlio_ok(), +-Eneeds_lines() =item Example: Encode::ROT13 @@ -12460,6 +13301,8 @@ non-ascii or non-utf8 =item PerlIO layers for C +=item Implicit upgrading for byte strings + =back =item FEATURES THAT REQUIRE 5.8.1 @@ -12499,6 +13342,12 @@ Legend of characters above literals in regex that are longer than 127 bytes, EBCDIC, format +=over 4 + +=item The Logic of :locale + +=back + =item HISTORY =item SEE ALSO @@ -12605,6 +13454,8 @@ C, C, C =item Exporting without using Exporter's import method +=item Exporting without inheriting from Exporter + =item Module Version Checking =item Managing Unknown Symbols @@ -12660,6 +13511,8 @@ mkpath directory.. test_f file +dos2unix + =over 4 =item BUGS @@ -12871,7 +13724,7 @@ dynamic extensions at load time =back -=head2 ExtUtils::MM_Any - Platform agnostic MM methods +=head2 ExtUtils::MM_Any - Platform-agnostic MM methods =over 4 @@ -12881,10 +13734,16 @@ dynamic extensions at load time =item Inherently Cross-Platform Methods -os_flavor_is +installvars =back +os_flavor_is + +dir_target B + +blibdirs_target (o) + =over 4 =item File::Spec wrappers @@ -12915,7 +13774,7 @@ makemakerdflt_target special_targets -POD2MAN_EXE_macro +POD2MAN_macro test_via_harness @@ -12929,8 +13788,12 @@ all_target metafile_target +signature_target + metafile_addtomanifest_target +signature_addtomanifest_target + =over 4 =item Abstract methods @@ -13011,8 +13874,7 @@ B =back -=head2 ExtUtils::MM_MacOS - methods to override UN*X behaviour in -ExtUtils::MakeMaker +=head2 ExtUtils::MM_MacOS - once produced Makefiles for MacOS Classic =over 4 @@ -13022,46 +13884,6 @@ ExtUtils::MakeMaker =back -maybe_command - -guess_name - -macify - -patternify - -init_main - -init_others - -init_platform, platform_constants - -init_dirscan - -init_VERSION (o) - -special_targets (o) - -static (o) - -dlsyms (o) - -dynamic (o) - -clean (o) - -clean_subdirs_target - -realclean (o) - -realclean_subdirs_target - -rulez (o) - -processPL (o) - -os_flavor - =head2 ExtUtils::MM_NW5 - methods to override UN*X behaviour in ExtUtils::MakeMaker @@ -13168,7 +13990,7 @@ constants (o) depend (o) -dir_target (o) +init_DEST init_dist @@ -13389,6 +14211,8 @@ perl_script (override) replace_manpage_separator +init_DEST + init_DIRFILESEP init_main (override) @@ -13411,8 +14235,6 @@ const_cccmd (override) tool_sxubpp (override) -xsubpp_version (override) - tools_other (override) init_dist (override) @@ -13627,18 +14449,18 @@ INSTALLVENDORBIN, INSTALLVENDORLIB, INSTALLVENDORMAN1DIR, INSTALLVENDORMAN3DIR, INST_ARCHLIB, INST_BIN, INST_LIB, INST_MAN1DIR, INST_MAN3DIR, INST_SCRIPT, LD, LDDLFLAGS, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE, MAKEAPERL, MAKEFILE_OLD, MAN1PODS, MAN3PODS, MAP_TARGET, -MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, -PERL, PERL_CORE, PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, -PERLPREFIX, PERLRUN, PERLRUNINST, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, -PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, -PREFIX, PREREQ_FATAL, PREREQ_PM, PREREQ_PRINT, PRINT_PREREQ, SITEPREFIX, -SKIP, TYPEMAPS, VENDORPREFIX, VERBINST, VERSION, VERSION_FROM, VERSION_SYM, -XS, XSOPT, XSPROTOARG, XS_VERSION +MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_META, NO_VC, OBJECT, +OPTIMIZE, PERL, PERL_CORE, PERLMAINCC, PERL_ARCHLIB, PERL_LIB, +PERL_MALLOC_OK, PERLPREFIX, PERLRUN, PERLRUNINST, PERL_SRC, PERM_RW, +PERM_RWX, PL_FILES, PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, +PPM_INSTALL_SCRIPT, PREFIX, PREREQ_FATAL, PREREQ_PM, PREREQ_PRINT, +PRINT_PREREQ, SITEPREFIX, SIGN, SKIP, TYPEMAPS, VENDORPREFIX, VERBINST, +VERSION, VERSION_FROM, VERSION_SYM, XS, XSOPT, XSPROTOARG, XS_VERSION =item Additional lowercase attributes -clean, depend, dist, dynamic_lib, linkext, macro, realclean, test, -tool_autosplit +clean, depend, dist, dynamic_lib, linkext, macro, postamble, realclean, +test, tool_autosplit =item Overriding MakeMaker Methods @@ -13654,6 +14476,8 @@ C< ' '>> make distdir, make disttest, make tardist, make dist, make uutardist, make shdist, make zipdist, make ci +=item Module Meta-Data + =item Disabling an extension =item Other Handy Functions @@ -13683,15 +14507,21 @@ MakeMaker =over 4 +=item Module Installation + +How do I keep from installing man pages?, How do I use a module without +installing it? + =item Philosophy and History -Why not just use ?, What's +Why not just use ?, What is Module::Build and how does it relate to MakeMaker?, pure perl. no make, no shell commands, easier to customize, cleaner internals, less cruft =item Module Writing -How do I keep my $VERSION up to date without resetting it manually? +How do I keep my $VERSION up to date without resetting it manually?, What's +this F thing and how did it get in my F?! =item XS @@ -13732,7 +14562,7 @@ bin/ =back -=head2 ExtUtils::MakeMaker::bytes - Version agnostic bytes.pm +=head2 ExtUtils::MakeMaker::bytes - Version-agnostic bytes.pm =over 4 @@ -13742,7 +14572,7 @@ bin/ =back -=head2 ExtUtils::MakeMaker::vmsish - Platform agnostic vmsish.pm +=head2 ExtUtils::MakeMaker::vmsish - Platform-agnostic vmsish.pm =over 4 @@ -14034,6 +14864,8 @@ $dont_use_nlink, symlinks =item NOTES +=item BUGS AND CAVEATS + =item HISTORY =back @@ -14090,7 +14922,7 @@ splitdir, catpath(), abs2rel, rel2abs() =item SEE ALSO -=item AUTHORS +=item AUTHOR =back @@ -14118,10 +14950,12 @@ tmpdir (override) =item DESCRIPTION -canonpath() +=item AUTHORS =back +canonpath() + =over 4 =item SEE ALSO @@ -14196,16 +15030,6 @@ rel2abs =back -tmpdir - -canonpath - -splitpath - -splitdir - -catpath - =head2 File::Spec::OS2 - methods for OS/2 file specs =over 4 @@ -14214,6 +15038,8 @@ catpath =item DESCRIPTION +tmpdir, splitpath + =back =head2 File::Spec::Unix - File::Spec for Unix, base for other File::Spec @@ -14379,6 +15205,18 @@ catpath =over 4 +=item OO INTERFACE + +B + +=back + +B + +B + +=over 4 + =item FUNCTIONS B @@ -14427,6 +15265,10 @@ B =back +B + +B + =over 4 =item PACKAGE VARIABLES @@ -14714,8 +15556,6 @@ VersionMessage, C<-message>, C<-msg>, C<-exitval>, C<-output>, HelpMessage =over 4 -=item Warning: Ignoring '!' modifier for short option - =item GetOptions does not return a false result when an option is not supplied @@ -14733,8 +15573,8 @@ supplied =back -=head2 Getopt::Std, getopt - Process single-character switches with switch -clustering +=head2 Getopt::Std, getopt, getopts - Process single-character switches +with switch clustering =over 4 @@ -14768,6 +15608,8 @@ lock_value, unlock_value B, B +B + =over 4 =item CAVEATS @@ -14820,6 +15662,9 @@ the function alternate_language_tags($lang1) the function @langs = panic_languages(@accept_languages) +the function implicate_supers( ...languages... ), the function +implicate_supers_strictly( ...languages... ) + =over 4 =item ABOUT LOWERCASING @@ -14834,6 +15679,26 @@ the function @langs = panic_languages(@accept_languages) =back +=head2 I18N::LangTags::Detect - detect the user's language preferences + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item FUNCTIONS + +=item ENVIRONMENT + +=item SEE ALSO + +=item COPYRIGHT + +=item AUTHOR + +=back + =head2 I18N::LangTags::List -- tags and names for human languages =over 4 @@ -14846,88 +15711,93 @@ the function @langs = panic_languages(@accept_languages) =item LIST OF LANGUAGES -{ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {aa} : -Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : Afro-Asiatic (Other)], -{aka} : Akan, {akk} : Akkadian, {sq} : Albanian, {ale} : Aleut, [{alg} : -Algonquian languages], [{tut} : Altaic (Other)], {am} : Amharic, {i-ami} : -Ami, [{apa} : Apache languages], {ar} : Arabic, {arc} : Aramaic, {arp} : -Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} : Armenian, [{art} : -Artificial (Other)], {as} : Assamese, [{ath} : Athapascan languages], -[{aus} : Australian languages], [{map} : Austronesian (Other)], {ava} : -Avaric, {ae} : Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, -{ban} : Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bam} : -Bambara, [{bai} : Bamileke languages], {bad} : Banda, [{bnt} : Bantu -(Other)], {bas} : Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak -(Indonesia), {bej} : Beja, {be} : Belarusian, {bem} : Bemba, {bn} : -Bengali, [{ber} : Berber (Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : -Bikol, {bin} : Bini, {bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : -Breton, {bug} : Buginese, {bg} : Bulgarian, {i-bnn} : Bunun, {bua} : -Buriat, {my} : Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, -[{cau} : Caucasian (Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], -[{cai} : Central American Indian (Other)], {chg} : Chagatai, [{cmc} : -Chamic languages], {ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} -: Cheyenne, {chb} : Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : -Chinook Jargon, {chp} : Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, -{chk} : Chuukese, {cv} : Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : -Corsican, {cre} : Cree, {mus} : Creek, [{cpe} : English-based Creoles and -pidgins (Other)], [{cpf} : French-based Creoles and pidgins (Other)], -[{cpp} : Portuguese-based Creoles and pidgins (Other)], [{crp} : Creoles -and pidgins (Other)], {hr} : Croatian, [{cus} : Cushitic (Other)], {cs} : -Czech, {dak} : Dakota, {da} : Danish, {day} : Dayak, {i-default} : Default -(Fallthru) Language, {del} : Delaware, {din} : Dinka, {div} : Divehi, {doi} -: Dogri, {dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : -Dutch, {dum} : Middle Dutch (ca.1050-1350), {dyu} : Dyula, {dz} : Dzongkha, -{efi} : Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, -{en} : English, {enm} : Old English (1100-1500), {ang} : Old English -(ca.450-1100), {eo} : Esperanto, {et} : Estonian, {ewe} : Ewe, {ewo} : -Ewondo, {fan} : Fang, {fat} : Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : -Finnish, [{fiu} : Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} -: Middle French (ca.1400-1600), {fro} : Old French (842-ca.1400), {fy} : -Frisian, {fur} : Friulian, {ful} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, -{gl} : Gallegan, {lug} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, -{ka} : Georgian, {de} : German, {gmh} : Middle High German (ca.1050-1500), -{goh} : Old High German (ca.750-1050), [{gem} : Germanic (Other)], {gil} : -Gilbertese, {gon} : Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : -Grebo, {grc} : Ancient Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : -Gujarati, {gwi} : Gwich'in, {hai} : Haida, {ha} : Hausa, {haw} : Hawaiian, +{ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {ady} : +Adyghe, {aa} : Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : +Afro-Asiatic (Other)], {ak} : Akan, {akk} : Akkadian, {sq} : Albanian, +{ale} : Aleut, [{alg} : Algonquian languages], [{tut} : Altaic (Other)], +{am} : Amharic, {i-ami} : Ami, [{apa} : Apache languages], {ar} : Arabic, +{arc} : Aramaic, {arp} : Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} +: Armenian, {an} : Aragonese, [{art} : Artificial (Other)], {ast} : +Asturian, {as} : Assamese, [{ath} : Athapascan languages], [{aus} : +Australian languages], [{map} : Austronesian (Other)], {av} : Avaric, {ae} +: Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, {ban} : +Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bm} : Bambara, [{bai} +: Bamileke languages], {bad} : Banda, [{bnt} : Bantu (Other)], {bas} : +Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak (Indonesia), {bej} : +Beja, {be} : Belarusian, {bem} : Bemba, {bn} : Bengali, [{ber} : Berber +(Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : Bikol, {bin} : Bini, +{bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : Breton, {bug} : +Buginese, {bg} : Bulgarian, {i-bnn} : Bunun, {bua} : Buriat, {my} : +Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, [{cau} : Caucasian +(Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], [{cai} : Central +American Indian (Other)], {chg} : Chagatai, [{cmc} : Chamic languages], +{ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} : Cheyenne, {chb} +: Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : Chinook Jargon, {chp} : +Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, {chk} : Chuukese, {cv} : +Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : Corsican, {cr} : Cree, +{mus} : Creek, [{cpe} : English-based Creoles and pidgins (Other)], [{cpf} +: French-based Creoles and pidgins (Other)], [{cpp} : Portuguese-based +Creoles and pidgins (Other)], [{crp} : Creoles and pidgins (Other)], {hr} : +Croatian, [{cus} : Cushitic (Other)], {cs} : Czech, {dak} : Dakota, {da} : +Danish, {dar} : Dargwa, {day} : Dayak, {i-default} : Default (Fallthru) +Language, {del} : Delaware, {din} : Dinka, {dv} : Divehi, {doi} : Dogri, +{dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : Dutch, +{dum} : Middle Dutch (ca.1050-1350), {dyu} : Dyula, {dz} : Dzongkha, {efi} +: Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, {en} : +English, {enm} : Old English (1100-1500), {ang} : Old English +(ca.450-1100), {i-enochian} : Enochian (Artificial), {myv} : Erzya, {eo} : +Esperanto, {et} : Estonian, {ee} : Ewe, {ewo} : Ewondo, {fan} : Fang, {fat} +: Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : Finnish, [{fiu} : +Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} : Middle French +(ca.1400-1600), {fro} : Old French (842-ca.1400), {fy} : Frisian, {fur} : +Friulian, {ff} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, {gl} : Gallegan, +{lg} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, {ka} : Georgian, +{de} : German, {gmh} : Middle High German (ca.1050-1500), {goh} : Old High +German (ca.750-1050), [{gem} : Germanic (Other)], {gil} : Gilbertese, {gon} +: Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : Grebo, {grc} : Ancient +Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : Gujarati, {gwi} : +Gwich'in, {hai} : Haida, {ht} : Haitian, {ha} : Hausa, {haw} : Hawaiian, {he} : Hebrew, {hz} : Herero, {hil} : Hiligaynon, {him} : Himachali, {hi} : Hindi, {ho} : Hiri Motu, {hit} : Hittite, {hmn} : Hmong, {hu} : Hungarian, -{hup} : Hupa, {iba} : Iban, {is} : Icelandic, {ibo} : Igbo, {ijo} : Ijo, -{ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European (Other)], -{id} : Indonesian, {ia} : Interlingua (International Auxiliary Language -Association), {ie} : Interlingue, {iu} : Inuktitut, {ik} : Inupiaq, [{ira} -: Iranian (Other)], {ga} : Irish, {mga} : Middle Irish (900-1200), {sga} : -Old Irish (to 900), [{iro} : Iroquoian languages], {it} : Italian, {ja} : -Japanese, {jw} : Javanese, {jrb} : Judeo-Arabic, {jpr} : Judeo-Persian, -{kab} : Kabyle, {kac} : Kachin, {kl} : Kalaallisut, {kam} : Kamba, {kn} : -Kannada, {kau} : Kanuri, {kaa} : Kara-Kalpak, {kar} : Karen, {ks} : -Kashmiri, {kaw} : Kawi, {kk} : Kazakh, {kha} : Khasi, {km} : Khmer, [{khi} -: Khoisan (Other)], {kho} : Khotanese, {ki} : Kikuyu, {kmb} : Kimbundu, -{rw} : Kinyarwanda, {ky} : Kirghiz, {i-klingon} : Klingon, {kv} : Komi, -{kon} : Kongo, {kok} : Konkani, {ko} : Korean, {kos} : Kosraean, {kpe} : -Kpelle, {kro} : Kru, {kj} : Kuanyama, {kum} : Kumyk, {ku} : Kurdish, {kru} -: Kurukh, {kut} : Kutenai, {lad} : Ladino, {lah} : Lahnda, {lam} : Lamba, -{lo} : Lao, {la} : Latin, {lv} : Latvian, {lb} : Letzeburgesch, {lez} : -Lezghian, {ln} : Lingala, {lt} : Lithuanian, {nds} : Low German, {loz} : -Lozi, {lub} : Luba-Katanga, {lua} : Luba-Lulua, {lui} : Luiseno, {lun} : -Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, {mk} : Macedonian, -{mad} : Madurese, {mag} : Magahi, {mai} : Maithili, {mak} : Makasar, {mg} : -Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : Maltese, {mnc} : Manchu, -{mdr} : Mandar, {man} : Mandingo, {mni} : Manipuri, [{mno} : Manobo -languages], {gv} : Manx, {mi} : Maori, {mr} : Marathi, {chm} : Mari, {mh} : -Marshall, {mwr} : Marwari, {mas} : Masai, [{myn} : Mayan languages], {men} -: Mende, {mic} : Micmac, {min} : Minangkabau, {i-mingo} : Mingo, [{mis} : -Miscellaneous languages], {moh} : Mohawk, {mo} : Moldavian, [{mkh} : -Mon-Khmer (Other)], {lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} -: Multiple languages], [{mun} : Munda languages], {nah} : Nahuatl, {na} : -Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, {ng} : -Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : +{hup} : Hupa, {iba} : Iban, {is} : Icelandic, {io} : Ido, {ig} : Igbo, +{ijo} : Ijo, {ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European +(Other)], {id} : Indonesian, {inh} : Ingush, {ia} : Interlingua +(International Auxiliary Language Association), {ie} : Interlingue, {iu} : +Inuktitut, {ik} : Inupiaq, [{ira} : Iranian (Other)], {ga} : Irish, {mga} : +Middle Irish (900-1200), {sga} : Old Irish (to 900), [{iro} : Iroquoian +languages], {it} : Italian, {ja} : Japanese, {jv} : Javanese, {jrb} : +Judeo-Arabic, {jpr} : Judeo-Persian, {kbd} : Kabardian, {kab} : Kabyle, +{kac} : Kachin, {kl} : Kalaallisut, {xal} : Kalmyk, {kam} : Kamba, {kn} : +Kannada, {kr} : Kanuri, {krc} : Karachay-Balkar, {kaa} : Kara-Kalpak, {kar} +: Karen, {ks} : Kashmiri, {csb} : Kashubian, {kaw} : Kawi, {kk} : Kazakh, +{kha} : Khasi, {km} : Khmer, [{khi} : Khoisan (Other)], {kho} : Khotanese, +{ki} : Kikuyu, {kmb} : Kimbundu, {rw} : Kinyarwanda, {ky} : Kirghiz, +{i-klingon} : Klingon, {kv} : Komi, {kg} : Kongo, {kok} : Konkani, {ko} : +Korean, {kos} : Kosraean, {kpe} : Kpelle, {kro} : Kru, {kj} : Kuanyama, +{kum} : Kumyk, {ku} : Kurdish, {kru} : Kurukh, {kut} : Kutenai, {lad} : +Ladino, {lah} : Lahnda, {lam} : Lamba, {lo} : Lao, {la} : Latin, {lv} : +Latvian, {lb} : Letzeburgesch, {lez} : Lezghian, {li} : Limburgish, {ln} : +Lingala, {lt} : Lithuanian, {nds} : Low German, {art-lojban} : Lojban +(Artificial), {loz} : Lozi, {lu} : Luba-Katanga, {lua} : Luba-Lulua, {lui} +: Luiseno, {lun} : Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, +{mk} : Macedonian, {mad} : Madurese, {mag} : Magahi, {mai} : Maithili, +{mak} : Makasar, {mg} : Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : +Maltese, {mnc} : Manchu, {mdr} : Mandar, {man} : Mandingo, {mni} : +Manipuri, [{mno} : Manobo languages], {gv} : Manx, {mi} : Maori, {mr} : +Marathi, {chm} : Mari, {mh} : Marshall, {mwr} : Marwari, {mas} : Masai, +[{myn} : Mayan languages], {men} : Mende, {mic} : Micmac, {min} : +Minangkabau, {i-mingo} : Mingo, [{mis} : Miscellaneous languages], {moh} : +Mohawk, {mdf} : Moksha, {mo} : Moldavian, [{mkh} : Mon-Khmer (Other)], +{lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} : Multiple +languages], [{mun} : Munda languages], {nah} : Nahuatl, {nap} : Neapolitan, +{na} : Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, +{ng} : Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : Niger-Kordofanian (Other)], [{ssa} : Nilo-Saharan (Other)], {niu} : Niuean, -{non} : Old Norse, [{nai} : North American Indian], {se} : Northern Sami, -{no} : Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} -: Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, -{nzi} : Nzima, {oc} : Occitan (post 1500), {oji} : Ojibwa, {or} : Oriya, -{om} : Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian +{nog} : Nogai, {non} : Old Norse, [{nai} : North American Indian], {no} : +Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} : +Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, {nzi} +: Nzima, {oc} : Occitan (post 1500), {oj} : Ojibwa, {or} : Oriya, {om} : +Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian languages], {pal} : Pahlavi, {i-pwn} : Paiwan, {pau} : Palauan, {pi} : Pali, {pam} : Pampanga, {pag} : Pangasinan, {pa} : Panjabi, {pap} : Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian @@ -14937,34 +15807,37 @@ Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian Raeto-Romance, {raj} : Rajasthani, {rap} : Rapanui, {rar} : Rarotongan, [{qaa - qtz} : Reserved for local use.], [{roa} : Romance (Other)], {ro} : Romanian, {rom} : Romany, {rn} : Rundi, {ru} : Russian, [{sal} : Salishan -languages], {sam} : Samaritan Aramaic, [{smi} : Sami languages (Other)], -{sm} : Samoan, {sad} : Sandawe, {sg} : Sango, {sa} : Sanskrit, {sat} : -Santali, {sc} : Sardinian, {sas} : Sasak, {sco} : Scots, {sel} : Selkup, -[{sem} : Semitic (Other)], {sr} : Serbian, {srr} : Serer, {shn} : Shan, -{sn} : Shona, {sid} : Sidamo, {sgn-...} : Sign Languages, {bla} : Siksika, -{sd} : Sindhi, {si} : Sinhalese, [{sit} : Sino-Tibetan (Other)], [{sio} : -Siouan languages], {den} : Slave (Athapascan), [{sla} : Slavic (Other)], -{sk} : Slovak, {sl} : Slovenian, {sog} : Sogdian, {so} : Somali, {son} : -Songhai, {snk} : Soninke, {wen} : Sorbian languages, {nso} : Northern -Sotho, {st} : Southern Sotho, [{sai} : South American Indian (Other)], {es} -: Spanish, {suk} : Sukuma, {sux} : Sumerian, {su} : Sundanese, {sus} : -Susu, {sw} : Swahili, {ss} : Swati, {sv} : Swedish, {syr} : Syriac, {tl} : -Tagalog, {ty} : Tahitian, [{tai} : Tai (Other)], {tg} : Tajik, {tmh} : -Tamashek, {ta} : Tamil, {i-tao} : Tao, {tt} : Tatar, {i-tay} : Tayal, {te} -: Telugu, {ter} : Tereno, {tet} : Tetum, {th} : Thai, {bo} : Tibetan, {tig} -: Tigre, {ti} : Tigrinya, {tem} : Timne, {tiv} : Tiv, {tli} : Tlingit, -{tpi} : Tok Pisin, {tkl} : Tokelau, {tog} : Tonga (Nyasa), {to} : Tonga -(Tonga Islands), {tsi} : Tsimshian, {ts} : Tsonga, {i-tsu} : Tsou, {tn} : -Tswana, {tum} : Tumbuka, {tr} : Turkish, {ota} : Ottoman Turkish -(1500-1928), {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : Twi, -{uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, {umb} : Umbundu, {und} : -Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : Vai, {ven} : Venda, {vi} : -Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} : Wakashan languages], -{wal} : Walamo, {war} : Waray, {was} : Washo, {cy} : Welsh, {wo} : Wolof, -{x-...} : Unregistered (Semi-Private Use), {xh} : Xhosa, {sah} : Yakut, -{yao} : Yao, {yap} : Yapese, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik -languages], {znd} : Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : -Zhuang, {zu} : Zulu, {zun} : Zuni +languages], {sam} : Samaritan Aramaic, {se} : Northern Sami, {sma} : +Southern Sami, {smn} : Inari Sami, {smj} : Lule Sami, {sms} : Skolt Sami, +[{smi} : Sami languages (Other)], {sm} : Samoan, {sad} : Sandawe, {sg} : +Sango, {sa} : Sanskrit, {sat} : Santali, {sc} : Sardinian, {sas} : Sasak, +{sco} : Scots, {sel} : Selkup, [{sem} : Semitic (Other)], {sr} : Serbian, +{srr} : Serer, {shn} : Shan, {sn} : Shona, {sid} : Sidamo, {sgn-...} : Sign +Languages, {bla} : Siksika, {sd} : Sindhi, {si} : Sinhalese, [{sit} : +Sino-Tibetan (Other)], [{sio} : Siouan languages], {den} : Slave +(Athapascan), [{sla} : Slavic (Other)], {sk} : Slovak, {sl} : Slovenian, +{sog} : Sogdian, {so} : Somali, {son} : Songhai, {snk} : Soninke, {wen} : +Sorbian languages, {nso} : Northern Sotho, {st} : Southern Sotho, [{sai} : +South American Indian (Other)], {es} : Spanish, {suk} : Sukuma, {sux} : +Sumerian, {su} : Sundanese, {sus} : Susu, {sw} : Swahili, {ss} : Swati, +{sv} : Swedish, {syr} : Syriac, {tl} : Tagalog, {ty} : Tahitian, [{tai} : +Tai (Other)], {tg} : Tajik, {tmh} : Tamashek, {ta} : Tamil, {i-tao} : Tao, +{tt} : Tatar, {i-tay} : Tayal, {te} : Telugu, {ter} : Tereno, {tet} : +Tetum, {th} : Thai, {bo} : Tibetan, {tig} : Tigre, {ti} : Tigrinya, {tem} : +Timne, {tiv} : Tiv, {tli} : Tlingit, {tpi} : Tok Pisin, {tkl} : Tokelau, +{tog} : Tonga (Nyasa), {to} : Tonga (Tonga Islands), {tsi} : Tsimshian, +{ts} : Tsonga, {i-tsu} : Tsou, {tn} : Tswana, {tum} : Tumbuka, [{tup} : +Tupi languages], {tr} : Turkish, {ota} : Ottoman Turkish (1500-1928), {crh} +: Crimean Turkish, {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : +Twi, {udm} : Udmurt, {uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, +{umb} : Umbundu, {und} : Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : +Vai, {ve} : Venda, {vi} : Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} +: Wakashan languages], {wa} : Walloon, {wal} : Walamo, {war} : Waray, {was} +: Washo, {cy} : Welsh, {wo} : Wolof, {x-...} : Unregistered (Semi-Private +Use), {xh} : Xhosa, {sah} : Yakut, {yao} : Yao, {yap} : Yapese, {ii} : +Sichuan Yi, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik languages], {znd} +: Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : Zhuang, {zu} : Zulu, +{zun} : Zuni =item SEE ALSO @@ -15017,7 +15890,7 @@ Zhuang, {zu} : Zulu, {zun} : Zuni =item DESCRIPTION new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ] =item SEE ALSO @@ -15041,7 +15914,8 @@ new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile =item METHODS -open( FILENAME [,MODE [,PERMS]] ) +open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS ), binmode( +[LAYER] ) =item SEE ALSO @@ -15255,7 +16129,7 @@ handles =item DESCRIPTION new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), -rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] +rewind (), close (), tie %hash, 'IO::Dir', DIRNAME [, OPTIONS ] =item SEE ALSO @@ -15279,7 +16153,8 @@ new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile =item METHODS -open( FILENAME [,MODE [,PERMS]] ) +open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS ), binmode( +[LAYER] ) =item SEE ALSO @@ -15966,6 +16841,8 @@ Premature end of base64 data, Premature padding of base64 data =item COPYRIGHT +=item SEE ALSO + =back =head2 MIME::Base64::QuotedPrint, MIME::QuotedPrint - Encoding and decoding @@ -15977,10 +16854,13 @@ of quoted-printable strings =item DESCRIPTION -encode_qp($str), encode_qp($str, $eol), decode_qp($str); +encode_qp($str), encode_qp($str, $eol), encode_qp($str, $eol, $binmode), +decode_qp($str); =item COPYRIGHT +=item SEE ALSO + =back =head2 MIME::QuotedPrint - Encoding and decoding of quoted-printable @@ -15992,10 +16872,13 @@ strings =item DESCRIPTION -encode_qp($str), encode_qp($str, $eol), decode_qp($str); +encode_qp($str), encode_qp($str, $eol), encode_qp($str, $eol, $binmode), +decode_qp($str); =item COPYRIGHT +=item SEE ALSO + =back =head2 Math::BigFloat - Arbitrary size floating point math package @@ -16039,10 +16922,12 @@ ffround ( +$scale ), ffround ( -$scale ), ffround ( 0 ), fround ( +$scale =item BUGS -=item CAVEAT +=item CAVEATS stringify, bstr(), bdiv, Modifying and =, bpow +=item SEE ALSO + =item LICENSE =item AUTHORS @@ -16057,7 +16942,7 @@ stringify, bstr(), bdiv, Modifying and =, bpow =item DESCRIPTION -Canonical notation, Input, Output +Input, Output =item METHODS @@ -16083,10 +16968,10 @@ Canonical notation, Input, Output =item is_one()/is_zero()/is_nan()/is_inf() -=item is_positive()/is_negative() +=item is_pos()/is_neg() - $x->is_positive(); # true if >= 0 - $x->is_negative(); # true if < 0 + $x->is_pos(); # true if > 0 + $x->is_neg(); # true if < 0 =item is_odd()/is_even()/is_int() @@ -16096,7 +16981,7 @@ Canonical notation, Input, Output =item sign -=item bcmp +=item digit =item bneg @@ -16164,7 +17049,7 @@ Canonical notation, Input, Output =item copy -=item as_number +=item as_int =item bsstr @@ -16193,6 +17078,10 @@ Remarks =back +=item Infinity and Not a Number + +oct()/hex(), log(-inf), exp(), cos(), sin(), atan2() + =item INTERNALS =over 4 @@ -16235,13 +17124,14 @@ bsqrt(), div(), blog() =item BUGS -Out of Memory!, Fails to load Calc on Perl prior 5.6.0 +broot() does not work, Out of Memory!, Fails to load Calc on Perl prior +5.6.0 =item CAVEATS -stringify, bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity -handling, Modifying and =, bpow, Overloading -$x, Mixing different object -types, bsqrt(), brsft() +bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity handling, +Modifying and =, bpow, Overloading -$x, Mixing different object types, +bsqrt(), brsft() =item LICENSE @@ -16259,7 +17149,9 @@ types, bsqrt(), brsft() =item DESCRIPTION -=item EXPORT +=item STORAGE + +=item METHODS =item WRAP YOUR OWN @@ -16275,8 +17167,7 @@ the same terms as Perl itself. =back -=head2 Math::BigInt::Scalar - Pure Perl module to test Math::BigInt with -scalars +=head2 Math::BigInt::CalcEmu - Emulate low-level math with BigInt code =over 4 @@ -16284,19 +17175,31 @@ scalars =item DESCRIPTION +=item METHODS + +=over 4 + +=item __emu_bxor + +=item __emu_band + +=item __emu_bior + +=back + =item LICENSE This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. -=item AUTHOR +=item AUTHORS =item SEE ALSO =back -=head2 Math::BigRat - arbitrarily big rationales +=head2 Math::BigRat - Arbitrary big rational numbers =over 4 @@ -16324,7 +17227,11 @@ the same terms as Perl itself. =item parts() -=item as_number() +=item as_int() + +=item as_hex() + +=item as_bin() =item bfac() @@ -16332,13 +17239,15 @@ the same terms as Perl itself. =item bround()/round()/bfround() +=item bmod() + =item is_one() =item is_zero() -=item is_positive() +=item is_pos() -=item is_negative() +=item is_neg() =item is_int() @@ -16352,12 +17261,19 @@ the same terms as Perl itself. $x->bfloor(); +=item bsqrt() + + $x->bsqrt(); + +=item config + =back =item BUGS inf handling (partial), NaN handling (partial), rounding (not implemented -except for bceil/bfloor), $x ** $y where $y is not an integer +except for bceil/bfloor), $x ** $y where $y is not an integer, bmod(), +blog(), bmodinv() and bmodpow() (partial) =item LICENSE @@ -16599,7 +17515,8 @@ C, C, C =back -=head2 NEXT - Provide a pseudo-class NEXT that allows method redispatch +=head2 NEXT - Provide a pseudo-class NEXT (et al) that allows method +redispatch =over 4 @@ -16613,6 +17530,10 @@ C, C, C =item Avoiding repetitions +=item Invoking all versions of a method with a single call + +=item Using C methods + =back =item AUTHOR @@ -16640,7 +17561,7 @@ dataend () debug_print ( DIR, TEXT ), debug_text ( TEXT ), command ( CMD [, ARGS, ... ]), unsupported (), response (), parse_response ( TEXT ), getline (), -ungetline ( TEXT ), read_until_dot (), tied_fh () +ungetline ( TEXT ), rawdatasend ( DATA ), read_until_dot (), tied_fh () =item EXPORTS @@ -16699,23 +17620,23 @@ hostfqdn (), hostname (), hostdomain () =item CONSTRUCTOR -new (HOST [,OPTIONS]) +new ([ HOST ] [, OPTIONS ]) =item METHODS login ([LOGIN [,PASSWORD [, ACCOUNT] ] ]), authorize ( [AUTH [, RESP]]), -site (ARGS), type (TYPE [, ARGS]), ascii ([ARGS]) binary([ARGS]) -ebcdic([ARGS]) byte([ARGS]), rename ( OLDNAME, NEWNAME ), delete ( FILENAME -), cwd ( [ DIR ] ), cdup (), pwd (), restart ( WHERE ), rmdir ( DIR ), -mkdir ( DIR [, RECURSE ]), ls ( [ DIR ] ), dir ( [ DIR ] ), get ( -REMOTE_FILE [, LOCAL_FILE [, WHERE]] ), put ( LOCAL_FILE [, REMOTE_FILE ] -), put_unique ( LOCAL_FILE [, REMOTE_FILE ] ), append ( LOCAL_FILE [, -REMOTE_FILE ] ), unique_name (), mdtm ( FILE ), size ( FILE ), supported ( -CMD ), hash ( [FILEHANDLE_GLOB_REF],[ BYTES_PER_HASH_MARK] ), nlst ( [ DIR -] ), list ( [ DIR ] ), retr ( FILE ), stor ( FILE ), stou ( FILE ), appe ( -FILE ), port ( [ PORT ] ), pasv (), pasv_xfer ( SRC_FILE, DEST_SERVER [, -DEST_FILE ] ), pasv_xfer_unique ( SRC_FILE, DEST_SERVER [, DEST_FILE ] ), -pasv_wait ( NON_PASV_SERVER ), abort (), quit () +site (ARGS), ascii, binary, rename ( OLDNAME, NEWNAME ), delete ( FILENAME +), cwd ( [ DIR ] ), cdup (), pwd (), restart ( WHERE ), rmdir ( DIR [, +RECURSE ]), mkdir ( DIR [, RECURSE ]), alloc ( SIZE [, RECORD_SIZE] ), ls ( +[ DIR ] ), dir ( [ DIR ] ), get ( REMOTE_FILE [, LOCAL_FILE [, WHERE]] ), +put ( LOCAL_FILE [, REMOTE_FILE ] ), put_unique ( LOCAL_FILE [, REMOTE_FILE +] ), append ( LOCAL_FILE [, REMOTE_FILE ] ), unique_name (), mdtm ( FILE ), +size ( FILE ), supported ( CMD ), hash ( [FILEHANDLE_GLOB_REF],[ +BYTES_PER_HASH_MARK] ), nlst ( [ DIR ] ), list ( [ DIR ] ), retr ( FILE ), +stor ( FILE ), stou ( FILE ), appe ( FILE ), port ( [ PORT ] ), pasv (), +pasv_xfer ( SRC_FILE, DEST_SERVER [, DEST_FILE ] ), pasv_xfer_unique ( +SRC_FILE, DEST_SERVER [, DEST_FILE ] ), pasv_wait ( NON_PASV_SERVER ), +abort (), quit () =over 4 @@ -16732,7 +17653,7 @@ bytes_read (), abort (), close () =item UNIMPLEMENTED -B, B, B, B, B, B, B, B +B, B, B, B, B, B, B =item REPORTING BUGS @@ -16742,7 +17663,7 @@ B, B, B, B, B, B, B, B =item USE EXAMPLES -http://www.csh.rit.edu/~adam/Progs/autoftp-2.0.tar.gz +http://www.csh.rit.edu/~adam/Progs/ =item CREDITS @@ -16806,18 +17727,17 @@ MESSAGE-SPEC, PATTERN, Examples, C<[^]-]>, C<*bdc>, C<[0-9a-zA-Z]>, C =item DESCRIPTION -=item EXAMPLES - =item CONSTRUCTOR -new ( [ HOST, ] [ OPTIONS ] ) +new ( [ HOST ] [, OPTIONS ] 0 =item METHODS -user ( USER ), pass ( PASS ), login ( [ USER [, PASS ]] ), apop ( [ USER [, -PASS ]] ), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM -[, FH ] ), getfh ( MSGNUM ), last (), popstat (), ping ( USER ), uidl ( [ -MSGNUM ] ), delete ( MSGNUM ), reset (), quit () +auth ( USERNAME, PASSWORD ), user ( USER ), pass ( PASS ), login ( [ USER +[, PASS ]] ), apop ( [ USER [, PASS ]] ), banner (), capa (), capabilities +(), top ( MSGNUM [, NUMLINES ] ), list ( [ MSGNUM ] ), get ( MSGNUM [, FH ] +), getfh ( MSGNUM ), last (), popstat (), ping ( USER ), uidl ( [ MSGNUM ] +), delete ( MSGNUM ), reset (), quit () =item NOTES @@ -16841,8 +17761,8 @@ MSGNUM ] ), delete ( MSGNUM ), reset (), quit () =item Functions -Net::Ping->new([$proto [, $def_timeout [, $bytes [, $device ]]]]);, -$p->ping($host [, $timeout]);, $p->source_verify( { 0 | 1 } );, +Net::Ping->new([$proto [, $def_timeout [, $bytes [, $device [, $tos +]]]]]);, $p->ping($host [, $timeout]);, $p->source_verify( { 0 | 1 } );, $p->service_check( { 0 | 1 } );, $p->tcp_service_check( { 0 | 1 } );, $p->hires( { 0 | 1 } );, $p->bind($local_addr);, $p->open($host);, $p->ack( [ $host ] );, $p->nack( $failed_ack_host );, $p->close();, pingecho($host @@ -16874,17 +17794,17 @@ $p->hires( { 0 | 1 } );, $p->bind($local_addr);, $p->open($host);, $p->ack( =item CONSTRUCTOR -new Net::SMTP [ HOST, ] [ OPTIONS ] +new ( [ HOST ] [, OPTIONS ] ) =item METHODS -banner (), domain (), hello ( DOMAIN ), etrn ( DOMAIN ), auth ( USERNAME, -PASSWORD ), mail ( ADDRESS [, OPTIONS] ), send ( ADDRESS ), send_or_mail ( -ADDRESS ), send_and_mail ( ADDRESS ), reset (), recipient ( ADDRESS [, -ADDRESS [ ...]] [, OPTIONS ] ), to ( ADDRESS [, ADDRESS [...]] ), cc ( -ADDRESS [, ADDRESS [...]] ), bcc ( ADDRESS [, ADDRESS [...]] ), data ( [ -DATA ] ), expand ( ADDRESS ), verify ( ADDRESS ), help ( [ $subject ] ), -quit () +banner (), domain (), hello ( DOMAIN ), host (), etrn ( DOMAIN ), auth ( +USERNAME, PASSWORD ), mail ( ADDRESS [, OPTIONS] ), send ( ADDRESS ), +send_or_mail ( ADDRESS ), send_and_mail ( ADDRESS ), reset (), recipient ( +ADDRESS [, ADDRESS, [...]] [, OPTIONS ] ), to ( ADDRESS [, ADDRESS [...]] +), cc ( ADDRESS [, ADDRESS [...]] ), bcc ( ADDRESS [, ADDRESS [...]] ), +data ( [ DATA ] ), expand ( ADDRESS ), verify ( ADDRESS ), help ( [ +$subject ] ), quit () =item ADDRESSES @@ -17288,7 +18208,7 @@ wctomb, write =item POSIX::SigAction -new, handler, mask, flags +new, handler, mask, flags, safe =item POSIX::SigSet @@ -17380,7 +18300,7 @@ name space =item DESCRIPTION -unix, stdio, perlio, crlf, utf8, bytes, raw, pop +:unix, :stdio, :perlio, :crlf, :mmap, :utf8, :bytes, :raw, :pop, :win32 =over 4 @@ -17392,7 +18312,7 @@ unix, stdio, perlio, crlf, utf8, bytes, raw, pop =item Defaults and how to override them -=item Querying the layers of filehandle +=item Querying the layers of filehandles =back @@ -17414,7 +18334,7 @@ unix, stdio, perlio, crlf, utf8, bytes, raw, pop =back -=head2 PerlIO::scalar - support module for in-memory IO. +=head2 PerlIO::scalar - in-memory IO, scalar IO =over 4 @@ -17422,6 +18342,8 @@ unix, stdio, perlio, crlf, utf8, bytes, raw, pop =item DESCRIPTION +=item IMPLEMENTATION NOTE + =back =head2 PerlIO::via - Helper class for PerlIO layers implemented in perl @@ -17435,13 +18357,13 @@ unix, stdio, perlio, crlf, utf8, bytes, raw, pop =item EXPECTED METHODS $class->PUSHED([$mode[,$fh]]), $obj->POPPED([$fh]), -$obj->OPEN($path,$mode[,$fh]), $obj->BINMODE([,$fh]), -$obj->FDOPEN($fd[,$fh]), $obj->SYSOPEN($path,$imode,$perm,[,$fh]), -$obj->FILENO($fh), $obj->READ($buffer,$len,$fh), $obj->WRITE($buffer,$fh), -$obj->FILL($fh), $obj->CLOSE($fh), $obj->SEEK($posn,$whence,$fh), -$obj->TELL($fh), $obj->UNREAD($buffer,$fh), $obj->FLUSH($fh), -$obj->SETLINEBUF($fh), $obj->CLEARERR($fh), $obj->ERROR($fh), -$obj->EOF($fh) +$obj->UTF8($bellowFlag,[$fh]), $obj->OPEN($path,$mode[,$fh]), +$obj->BINMODE([,$fh]), $obj->FDOPEN($fd[,$fh]), +$obj->SYSOPEN($path,$imode,$perm,[,$fh]), $obj->FILENO($fh), +$obj->READ($buffer,$len,$fh), $obj->WRITE($buffer,$fh), $obj->FILL($fh), +$obj->CLOSE($fh), $obj->SEEK($posn,$whence,$fh), $obj->TELL($fh), +$obj->UNREAD($buffer,$fh), $obj->FLUSH($fh), $obj->SETLINEBUF($fh), +$obj->CLEARERR($fh), $obj->ERROR($fh), $obj->EOF($fh) =item EXAMPLES @@ -17461,8 +18383,12 @@ $obj->EOF($fh) =item DESCRIPTION +=item REQUIRED MODULES + =item SEE ALSO +=item ACKNOWLEDGEMENTS + =item COPYRIGHT =back @@ -17607,9 +18533,9 @@ C<-inc =E 1>, C<-dirs =E [ $dir1, $dir2, ... ]>, C<-verbose =E =item ARGUMENTS -backlink, cachedir, css, flush, header, help, htmldir, htmlroot, index, -infile, libpods, netscape, outfile, podpath, podroot, quiet, recurse, -title, verbose +backlink, cachedir, css, flush, header, help, hiddendirs, htmldir, +htmlroot, index, infile, libpods, netscape, outfile, podpath, podroot, +quiet, recurse, title, verbose =item EXAMPLE @@ -18896,10 +19822,16 @@ set_prototype CODEREF, PROTOTYPE, tainted EXPR, weaken REF =over 4 -=item OBJECT ORIENTED SYNTAX +=item Caveats + +=item Escaping Magic Characters + +=item Configuration =back +=item BUGS + =item AUTHOR =back @@ -19017,7 +19949,7 @@ C =item BUGS -=item LIMITATION +=item LIMITATIONS =item COPYRIGHT @@ -19031,6 +19963,8 @@ C =item DESCRIPTION +=item BUGS + =back =head2 Sys::Hostname - Try every conceivable way to get hostname @@ -19236,6 +20170,8 @@ NORMAL TESTS, SKIPPED TESTS, TODO TESTS =item BUGS and CAVEATS +=item ENVIRONMENT + =item NOTE =item SEE ALSO @@ -19262,6 +20198,8 @@ B =back +B + =over 4 =item Setting up tests @@ -19328,6 +20266,8 @@ B B<_print> +B<_print_diag> + B, B, B =over 4 @@ -19354,6 +20294,8 @@ B<_my_exit> =over 4 +=item EXIT CODES + =item THREADS =item EXAMPLES @@ -19366,7 +20308,13 @@ B<_my_exit> =back -=head2 Test::Harness - run perl standard test scripts with statistics +=head2 Test::Harness - Run Perl standard test scripts with statistics + +=over 4 + +=item VERSION + +=back =over 4 @@ -19386,7 +20334,7 @@ else> =item Configuration variables. -B<$Test::Harness::verbose>, B<$Test::Harness::switches> +B<$Test::Harness::Verbose>, B<$Test::Harness::switches> =item Failure @@ -19425,7 +20373,8 @@ C, C, C, C, -C, C, C, +C, C, C, +C, C, C, C, C =item EXAMPLE @@ -19440,6 +20389,10 @@ C, C =item BUGS +=item AUTHORS + +=item COPYRIGHT + =back =head2 Test::Harness::Assert - simple assert @@ -19450,11 +20403,11 @@ C, C =item DESCRIPTION -=over 4 +=item FUNCTIONS -=item Functions +=over 4 -B +=item C =back @@ -19476,6 +20429,14 @@ B =item DESCRIPTION +=over 4 + +=item new() + +=item next() + +=back + =back =head2 Test::Harness::Straps - detailed analysis of test results @@ -19486,59 +20447,133 @@ B =item DESCRIPTION -=over 4 - =item Construction -B +=over 4 + +=item C =back =back -B<_init> +=over 4 + +=item C<_init> + +=back =over 4 =item Analysis -B +=over 4 + +=item C + +=back + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item C<_command_line( $file )> + +=back + +=over 4 + +=item C<_command> + +=back + +=over 4 + +=item C<_switches> + +=back + +=over 4 + +=item C<_cleaned_switches> + +=back + +=over 4 + +=item C<_INC2PERL5LIB> =back -B +=over 4 -B +=item C<_filtered_INC> -B<_switches> +=back -B<_INC2PERL5LIB> +=over 4 -B<_filtered_INC> +=item C<_restore_PERL5LIB> -B<_restore_PERL5LIB> +=back =over 4 =item Parsing -B<_is_comment> +=over 4 + +=item C<_is_comment> + +=back + +=back + +=over 4 + +=item C<_is_header> + +=back + +=over 4 + +=item C<_is_test> =back -B<_is_header> +=over 4 + +=item C<_is_bail_out> + +=back -B<_is_test> +=over 4 -B<_is_bail_out> +=item C<_reset_file_state> -B<_reset_file_state> +=back =over 4 =item Results -B<_detailize> +=over 4 + +=item C<_detailize> + +=back =back @@ -19646,12 +20681,11 @@ B =over 4 -=item NOTES +=item EXIT CODES -=item BUGS and CAVEATS +=item CAVEATS and NOTES -Making your own ok(), The eq_* family has some caveats, Test::Harness -upgrades +Backwards compatibility, Overloaded objects, Threads, Test::Harness upgrade =item HISTORY @@ -19659,6 +20693,8 @@ upgrades =item AUTHORS +=item BUGS + =item COPYRIGHT =back @@ -19768,6 +20804,10 @@ L =item C +=item C + +[0], [1], [2] + =item C C $listref>, C $listref>, C $str>, @@ -20076,13 +21116,14 @@ tied hashes =item DESCRIPTION TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY -this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this +this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR +this, SCALAR this =item Inheriting from B =item Inheriting from B -=item C and C +=item C, C and C =item MORE INFORMATION @@ -20162,8 +21203,9 @@ timers gettimeofday (), usleep ( $useconds ), ualarm ( $useconds [, $interval_useconds ] ), tv_interval, time (), sleep ( $floating_seconds ), -alarm ( $floating_seconds [, $interval_floating_seconds ] ), setitimer, -getitimer ( $which ) +alarm ( $floating_seconds [, $interval_floating_seconds ] ), setitimer ( +$which, $floating_seconds [, $interval_floating_seconds ] ), getitimer ( +$which ) =item EXAMPLES @@ -20195,10 +21237,24 @@ getitimer ( $which ) =item DESCRIPTION +=over 4 + +=item Ambiguous Local Times (DST) + +=item Non-Existent Local Times (DST) + +=item Negative Epoch Values + +=back + =item IMPLEMENTATION =item BUGS +=item SUPPORT + +=item AUTHOR + =back =head2 Time::gmtime - by-name interface to Perl's built-in gmtime() @@ -20271,9 +21327,10 @@ CLASS->can( METHOD ) >>, C, C =item Constructor and Tailoring -UCA_Version, alternate, backwards, entry, ignoreName, ignoreChar, level, -normalization, overrideCJK, overrideHangul, preprocess, rearrange, table, -undefName, undefChar, katakana_before_hiragana, upper_before_lower +UCA_Version, backwards, entry, hangul_terminator, ignoreName, ignoreChar, +level, normalization, overrideCJK, overrideHangul, preprocess, rearrange, +table, undefName, undefChar, katakana_before_hiragana, upper_before_lower, +variable, alternate =item Methods for Collation @@ -20297,13 +21354,11 @@ $Collator-Egsubst($string, $substring, $replacement)> =item Other Methods -C<%old_tailoring = $Collator-Echange(%new_tailoring)>, UCA_Version, -Base_Unicode_Version +C<%old_tailoring = $Collator-Echange(%new_tailoring)>, C<$version = +$Collator-Eversion()>, C, C =item EXPORT -=item TODO - =item CAVEAT =item Conformance Test @@ -20314,11 +21369,9 @@ Base_Unicode_Version =item SEE ALSO -http://www.unicode.org/reports/tr10/, -http://www.unicode.org/reports/tr10/allkeys.txt, -http://www.unicode.org/reports/tr10/CollationTest.html -http://www.unicode.org/reports/tr10/CollationTest.zip, -http://www.unicode.org/reports/tr15/, L +Unicode Collation Algorithm - UTS #10, The Default Unicode Collation +Element Table (DUCET), The conformance test for the UCA, Hangul Syllable +Type, Unicode Normalization Forms - UAX #15, L =back @@ -20336,6 +21389,7 @@ http://www.unicode.org/reports/tr15/, L C<$NFD_string = NFD($string)>, C<$NFC_string = NFC($string)>, C<$NFKD_string = NFKD($string)>, C<$NFKC_string = NFKC($string)>, +C<$FCD_string = FCD($string)>, C<$FCC_string = FCC($string)>, C<$normalized_string = normalize($form_name, $string)> =item Decomposition and Composition @@ -20348,6 +21402,7 @@ reorder($string)>, C<$composed_string = compose($string)> C<$result = checkNFD($string)>, C<$result = checkNFC($string)>, C<$result = checkNFKD($string)>, C<$result = checkNFKC($string)>, C<$result = +checkFCD($string)>, C<$result = checkFCC($string)>, C<$result = check($form_name, $string)> =item Character Data @@ -20368,8 +21423,9 @@ C<$may_be_composed_with_prev_char = isComp2nd($codepoint)> =item SEE ALSO -http://www.unicode.org/unicode/reports/tr15/, -http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt +http://www.unicode.org/reports/tr15/, +http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt, +http://www.unicode.org/notes/tn5/ =back @@ -20503,46 +21559,31 @@ March 18th, 2000 =back -=head2 Win32 - Interfaces to some Win32 API Functions +=head2 XSLoader - Dynamically load C libraries into Perl code =over 4 +=item SYNOPSIS + =item DESCRIPTION =over 4 -=item Alphabetical Listing of Win32 Functions +=item Migration from C -Win32::AbortSystemShutdown(MACHINE), Win32::BuildNumber(), -Win32::CopyFile(FROM, TO, OVERWRITE), Win32::DomainName(), -Win32::ExpandEnvironmentStrings(STRING), Win32::FormatMessage(ERRORCODE), -Win32::FsType(), Win32::FreeLibrary(HANDLE), Win32::GetArchName(), -Win32::GetChipName(), Win32::GetCwd(), Win32::GetFolderPath(FOLDER [, -CREATE]), Win32::GetFullPathName(FILENAME), Win32::GetLastError(), -Win32::GetLongPathName(PATHNAME), Win32::GetNextAvailDrive(), -Win32::GetOSVersion(), Win32::GetOSName(), -Win32::GetShortPathName(PATHNAME), Win32::GetProcAddress(INSTANCE, -PROCNAME), Win32::GetTickCount(), Win32::InitiateSystemShutdown, -Win32::IsWinNT(), Win32::IsWin95(), Win32::LoadLibrary(LIBNAME), -Win32::LoginName(), Win32::LookupAccountName(SYSTEM, ACCOUNT, DOMAIN, SID, -SIDTYPE), Win32::LookupAccountSID(SYSTEM, SID, ACCOUNT, DOMAIN, SIDTYPE), -Win32::MsgBox(MESSAGE [, FLAGS [, TITLE]]), Win32::NodeName(), -Win32::RegisterServer(LIBRARYNAME), Win32::SetChildShowWindow(SHOWWINDOW), -Win32::SetCwd(NEWDIRECTORY), Win32::SetLastError(ERROR), -Win32::Sleep(TIME), Win32::Spawn(COMMAND, ARGS, PID), -Win32::UnregisterServer(LIBRARYNAME) +=item Backward compatible boilerplate =back -=back - -=head2 XSLoader - Dynamically load C libraries into Perl code +=item Order of initialization: early load() =over 4 -=item SYNOPSIS +=item The most hairy case -=item DESCRIPTION +=back + +=item LIMITATIONS =item AUTHOR @@ -20557,21 +21598,29 @@ don't all have manual pages yet: =item a2p -=item s2p +=item c2ph -=item find2perl +=item dprofpp =item h2ph -=item c2ph - =item h2xs -=item xsubpp +=item perlbug + +=item perldoc + +=item pl2pm + +=item pod2html =item pod2man -=item wrapsuid +=item s2p + +=item splain + +=item xsubpp =back