X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltoc.pod;h=1c7705482005302721761ae88af8235696649dcb;hb=5a17876fec93d2d9eeb8689d271a67aeaf8a99e2;hp=96ec7f0e7542614f97c390d4fcedb7fff595b355;hpb=954c1994944eafa74aaac1bab94e820b6e447da9;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltoc.pod b/pod/perltoc.pod index 96ec7f0..1c77054 100644 --- a/pod/perltoc.pod +++ b/pod/perltoc.pod @@ -13,22 +13,12 @@ through to locate the proper section you're looking for. =head2 perl - Practical Extraction and Report Language -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -modularity and reusability using innumerable modules, embeddable and -extensible, roll-your-own magic variables (including multiple simultaneous -DBM implementations), subroutines can now be overridden, autoloaded, and -prototyped, arbitrarily nested data structures and anonymous functions, -object-oriented programming, compilability into C code or Perl bytecode, -support for light-weight processes (threads), support for -internationalization, localization, and Unicode, lexical scoping, regular -expression enhancements, enhanced debugger and interactive Perl -environment, with integrated editor support, POSIX 1003.1 compliant library - =item AVAILABILITY =item ENVIRONMENT @@ -50,232 +40,41 @@ environment, with integrated editor support, POSIX 1003.1 compliant library =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23 20:38:02 $) -=over - -=item DESCRIPTION - -perlfaq: Structural overview of the FAQ, L: General Questions -About Perl, What is Perl?, Who supports Perl? Who develops it? Why is it -free?, Which version of Perl should I use?, What are perl4 and perl5?, What -is perl6?, How stable is Perl?, Is Perl difficult to learn?, How does Perl -compare with other languages like Java, Python, REXX, Scheme, or Tcl?, Can -I do [task] in Perl?, When shouldn't I program in Perl?, What's the -difference between "perl" and "Perl"?, Is it a Perl program or a Perl -script?, What is a JAPH?, Where can I get a list of Larry Wall witticisms?, -How can I convince my sysadmin/supervisor/employees to use version -(5/5.005/Perl instead of some other language)?, L: Obtaining and -Learning about Perl, What machines support Perl? Where do I get it?, How -can I get a binary version of Perl?, I don't have a C compiler on my -system. How can I compile perl?, I copied the Perl binary from one machine -to another, but scripts don't work, I grabbed the sources and tried to -compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make -it work?, What modules and extensions are available for Perl? What is -CPAN? What does CPAN/src/... mean?, Is there an ISO or ANSI certified -version of Perl?, Where can I get information on Perl?, What are the Perl -newsgroups on USENET? Where do I post questions?, Where should I post -source code?, Perl Books, Perl in Magazines, Perl on the Net: FTP and WWW -Access, What mailing lists are there for perl?, Archives of -comp.lang.perl.misc, Where can I buy a commercial version of Perl?, Where -do I send bug reports?, What is perl.com?, L: Programming Tools, -How do I do (anything)?, How can I use Perl interactively?, Is there a Perl -shell?, How do I debug my Perl programs?, How do I profile my Perl -programs?, How do I cross-reference my Perl programs?, Is there a -pretty-printer (formatter) for Perl?, Is there a ctags for Perl?, Is there -an IDE or Windows Perl Editor?, Where can I get Perl macros for vi?, Where -can I get perl-mode for emacs?, How can I use curses with Perl?, How can I -use X or Tk with Perl?, How can I generate simple menus without using CGI -or Tk?, What is undump?, How can I make my Perl program run faster?, How -can I make my Perl program take less memory?, Is it unsafe to return a -pointer to local data?, How can I free an array or hash so my program -shrinks?, How can I make my CGI script more efficient?, How can I hide the -source for my Perl program?, How can I compile my Perl program into byte -code or C?, How can I compile Perl into Java?, How can I get C<#!perl> to -work on [MS-DOS,NT,...]?, Can I write useful perl programs on the command -line?, Why don't perl one-liners work on my DOS/Mac/VMS system?, Where can -I learn about CGI or Web programming in Perl?, Where can I learn about -object-oriented Perl programming?, Where can I learn about linking C with -Perl? [h2xs, xsubpp], I've read perlembed, perlguts, etc., but I can't -embed perl inmy C program, what am I doing wrong?, When I tried to run my -script, I got this message. What does itmean?, What's MakeMaker?, -L: Data Manipulation, Why am I getting long decimals (eg, -19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?, -Why isn't my octal data interpreted correctly?, Does Perl have a round() -function? What about ceil() and floor()? Trig functions?, How do I -convert bits into ints?, Why doesn't & work the way I want it to?, How do I -multiply matrices?, How do I perform an operation on a series of integers?, -How can I output Roman numerals?, Why aren't my random numbers random?, How -do I find the week-of-the-year/day-of-the-year?, How do I find the current -century or millennium?, How can I compare two dates and find the -difference?, How can I take a string and turn it into epoch seconds?, How -can I find the Julian Day?, How do I find yesterday's date?, Does Perl have -a year 2000 problem? Is Perl Y2K compliant?, How do I validate input?, How -do I unescape a string?, How do I remove consecutive pairs of characters?, -How do I expand function calls in a string?, How do I find matching/nesting -anything?, How do I reverse a string?, How do I expand tabs in a string?, -How do I reformat a paragraph?, How can I access/change the first N letters -of a string?, How do I change the Nth occurrence of something?, How can I -count the number of occurrences of a substring within a string?, How do I -capitalize all the words on one line?, How can I split a [character] -delimited string except when inside[character]? (Comma-separated files), -How do I strip blank space from the beginning/end of a string?, How do I -pad a string with blanks or pad a number with zeroes?, How do I extract -selected columns from a string?, How do I find the soundex value of a -string?, How can I expand variables in text strings?, What's wrong with -always quoting "$vars"?, Why don't my EEHERE documents work?, What -is the difference between a list and an array?, What is the difference -between $array[1] and @array[1]?, How can I remove duplicate elements from -a list or array?, How can I tell whether a list or array contains a certain -element?, How do I compute the difference of two arrays? How do I compute -the intersection of two arrays?, How do I test whether two arrays or hashes -are equal?, How do I find the first array element for which a condition is -true?, How do I handle linked lists?, How do I handle circular lists?, How -do I shuffle an array randomly?, How do I process/modify each element of an -array?, How do I select a random element from an array?, How do I permute N -elements of a list?, How do I sort an array by (anything)?, How do I -manipulate arrays of bits?, Why does defined() return true on empty arrays -and hashes?, How do I process an entire hash?, What happens if I add or -remove keys from a hash while iterating over it?, How do I look up a hash -element by value?, How can I know how many entries are in a hash?, How do I -sort a hash (optionally by value instead of key)?, How can I always keep my -hash sorted?, What's the difference between "delete" and "undef" with -hashes?, Why don't my tied hashes make the defined/exists distinction?, How -do I reset an each() operation part-way through?, How can I get the unique -keys from two hashes?, How can I store a multidimensional array in a DBM -file?, How can I make my hash remember the order I put elements into it?, -Why does passing a subroutine an undefined element in a hash create it?, -How can I make the Perl equivalent of a C structure/C++ class/hash or array -of hashes or arrays?, How can I use a reference as a hash key?, How do I -handle binary data correctly?, How do I determine whether a scalar is a -number/whole/integer/float?, How do I keep persistent data across program -calls?, How do I print out or copy a recursive data structure?, How do I -define methods for every class/object?, How do I verify a credit card -checksum?, How do I pack arrays of doubles or floats for XS code?, -L: Files and Formats, How do I flush/unbuffer an output -filehandle? Why must I do this?, 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?, How do I count the number of lines in a file?, How do -I make a temporary file name?, How can I manipulate fixed-record-length -files?, 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?, -How can I use a filehandle indirectly?, How can I set up a footer format to -be used with write()?, How can I write() into a string?, How can I output -my numbers with commas added?, How can I translate tildes (~) in a -filename?, How come when I open a file read-write it wipes it out?, Why do -I sometimes get an "Argument list too long" when I use E*E?, Is -there a leak/bug in glob()?, How can I open a file with a leading "E" -or trailing blanks?, How can I reliably rename a file?, How can I lock a -file?, Why can't I just open(FH, ">file.lock")?, I still don't get locking. - I just want to increment the number in the file. How can I do this?, How -do I randomly update a binary file?, How do I get a file's timestamp in -perl?, How do I set a file's timestamp in perl?, How do I print to more -than one file at once?, How can I read in an entire file all at once?, How -can I read in a file by paragraphs?, How can I read a single character from -a file? From the keyboard?, How can I tell whether there's a character -waiting on a filehandle?, How do I do a C in perl?, How do I dup() -a filehandle in Perl?, How do I close a file descriptor by number?, Why -can't I use "C:\temp\foo" in DOS paths? What doesn't `C:\temp\foo.exe` -work?, Why doesn't glob("*.*") get all the files?, Why does Perl let me -delete read-only files? Why does C<-i> clobber protected files? Isn't -this a bug in Perl?, How do I select a random line from a file?, Why do I -get weird spaces when I print an array of lines?, L: Regexps, How -can I hope to use regular expressions without creating illegible and -unmaintainable code?, I'm having trouble matching over more than one line. -What's wrong?, How can I pull out lines between two patterns that are -themselves on different lines?, I put a regular expression into $/ but it -didn't work. What's wrong?, How do I substitute case insensitively on the -LHS, but preserving case on the RHS?, How can I make C<\w> match national -character sets?, How can I match a locale-smart version of C?, -How can I quote a variable to use in a regex?, What is C really for?, -How do I use a regular expression to strip C style comments from a file?, -Can I use Perl regular expressions to match balanced text?, What does it -mean that regexes are greedy? How can I get around it?, How do I process -each word on each line?, How can I print out a word-frequency or -line-frequency summary?, How can I do approximate matching?, How do I -efficiently match many regular expressions at once?, Why don't -word-boundary searches with C<\b> work for me?, Why does using $&, $`, or -$' slow my program down?, What good is C<\G> in a regular expression?, Are -Perl regexes DFAs or NFAs? Are they POSIX compliant?, What's wrong with -using grep or map in a void context?, How can I match strings with -multibyte characters?, How do I match a pattern that is supplied by the -user?, L: General Perl Language Issues, Can I get a BNF/yacc/RE -for the Perl language?, What are all these $@%&* punctuation signs, and how -do I know when to use them?, Do I always/never have to quote my strings or -use semicolons and commas?, How do I skip some return values?, How do I -temporarily block warnings?, What's an extension?, Why do Perl operators -have different precedence than C operators?, How do I declare/create a -structure?, How do I create a module?, How do I create a class?, How can I -tell if a variable is tainted?, What's a closure?, What is variable suicide -and how can I prevent it?, How can I pass/return a {Function, FileHandle, -Array, Hash, Method, Regex}?, How do I create a static variable?, What's -the difference between dynamic and lexical (static) scoping? Between -local() and my()?, How can I access a dynamic variable while a similarly -named lexical is in scope?, What's the difference between deep and shallow -binding?, Why doesn't "my($foo) = EFILEE;" work right?, How do I -redefine a builtin function, operator, or method?, What's the difference -between calling a function as &foo and foo()?, How do I create a switch or -case statement?, How can I catch accesses to undefined -variables/functions/methods?, Why can't a method included in this same file -be found?, How can I find out my current package?, How can I comment out a -large block of perl code?, How do I clear a package?, How can I use a -variable as a variable name?, L: System Interaction, How do I -find out which operating system I'm running under?, How come exec() doesn't -return?, How do I do fancy stuff with the keyboard/screen/mouse?, How do I -print something out in color?, How do I read just one key without waiting -for a return key?, How do I check whether input is ready on the keyboard?, -How do I clear the screen?, How do I get the screen size?, How do I ask the -user for a password?, How do I read and write the serial port?, How do I -decode encrypted password files?, How do I start a process in the -background?, How do I trap control characters/signals?, How do I modify the -shadow password file on a Unix system?, How do I set the time and date?, -How can I sleep() or alarm() for under a second?, How can I measure time -under a second?, How can I do an atexit() or setjmp()/longjmp()? (Exception -handling), Why doesn't my sockets program work under System V (Solaris)? -What does the error message "Protocol not supported" mean?, How can I call -my system's unique C functions from Perl?, Where do I get the include files -to do ioctl() or syscall()?, Why do setuid perl scripts complain about -kernel problems?, How can I open a pipe both to and from a command?, Why -can't I get the output of a command with system()?, How can I capture -STDERR from an external command?, Why doesn't open() return an error when a -pipe open fails?, What's wrong with using backticks in a void context?, How -can I call backticks without shell processing?, Why can't my script read -from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?, How can I -convert my shell script to perl?, Can I use perl to run a telnet or ftp -session?, How can I write expect in Perl?, Is there a way to hide perl's -command line from programs such as "ps"?, 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?, How do I close -a process's filehandle without waiting for it to complete?, How do I fork a -daemon process?, How do I make my program run with sh and csh?, How do I -find out if I'm running interactively or not?, How do I timeout a slow -event?, How do I set CPU limits?, How do I avoid zombies on a Unix system?, -How do I use an SQL database?, How do I make a system() exit on control-C?, -How do I open a file without blocking?, How do I install a module from -CPAN?, What's the difference between require and use?, How do I keep my own -module/library directory?, How do I add the directory my program lives in -to the module/library search path?, How do I add a directory to my include -path at runtime?, What is socket.ph and where do I get it?, L: -Networking, My CGI script runs from the command line but not the browser. -(500 Server Error), How can I get better error messages from a CGI -program?, How do I remove HTML from a string?, How do I extract URLs?, How -do I download a file from the user's machine? How do I open a file on -another machine?, How do I make a pop-up menu in HTML?, How do I fetch an -HTML file?, How do I automate an HTML form submission?, How do I decode or -create those %-encodings on the web?, How do I redirect to another page?, -How do I put a password on my web pages?, How do I edit my .htpasswd and -.htgroup files with Perl?, How do I make sure users can't enter values into -a form that cause my CGI script to do bad things?, How do I parse a mail -header?, How do I decode a CGI form?, How do I check a valid mail address?, -How do I decode a MIME/BASE64 string?, How do I return the user's mail -address?, How do I send mail?, How do I read mail?, How do I find out my -hostname/domainname/IP address?, How do I fetch a news article or the -active newsgroups?, How do I fetch/put an FTP file?, How can I do RPC in -Perl? - -=over - -=item Where to get this document - -=item How to contribute to this document +=over 4 + +=item DESCRIPTION + +=over 4 + +=item perlfaq: Structural overview of the FAQ. + +=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: Regexps + +=item L: General Perl Language Issues + +=item L: System Interaction + +=item L: Networking + +=back + +=item About the perlfaq documents + +=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 @@ -286,7 +85,7 @@ authors =item Author and Copyright Information -=over +=over 4 =item Bundled Distributions @@ -296,3227 +95,5701 @@ authors =item Changes -23/May/99, 13/April/99, 7/January/99, 22/June/98, 24/April/97, 23/April/97, -25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97 +1/November/2000, 23/May/99, 13/April/99, 7/January/99, 22/June/98, +24/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version, +Initial Release: 11/March/97 =back -=head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date: -1999/05/23 16:08:30 $) +=head2 perlbook - Perl book information -=over +=over 4 =item DESCRIPTION -=over - -=item What is Perl? +=back -=item Who supports Perl? Who develops it? Why is it free? +=head2 perlsyn - Perl syntax -=item Which version of Perl should I use? +=over 4 -=item What are perl4 and perl5? +=item DESCRIPTION -=item What is perl6? +=over 4 -=item How stable is Perl? +=item Declarations -=item Is Perl difficult to learn? +=item Simple statements -=item How does Perl compare with other languages like Java, Python, REXX, -Scheme, or Tcl? +=item Compound statements -=item Can I do [task] in Perl? +=item Loop Control -=item When shouldn't I program in Perl? +=item For Loops -=item What's the difference between "perl" and "Perl"? +=item Foreach Loops -=item Is it a Perl program or a Perl script? +=item Basic BLOCKs and Switch Statements -=item What is a JAPH? +=item Goto -=item Where can I get a list of Larry Wall witticisms? +=item PODs: Embedded Documentation -=item How can I convince my sysadmin/supervisor/employees to use version -(5/5.005/Perl instead of some other language)? +=item Plain Old Comments (Not!) =back -=item AUTHOR AND COPYRIGHT - =back -=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $, -$Date: 1999/10/14 18:46:09 $) +=head2 perldata - Perl data types -=over +=over 4 =item DESCRIPTION -=over - -=item What machines support Perl? Where do I get it? - -=item How can I get a binary version of Perl? +=over 4 -=item I don't have a C compiler on my system. How can I compile perl? +=item Variable names -=item I copied the Perl binary from one machine to another, but scripts -don't work. +=item Context -=item I grabbed the sources and tried to compile but gdbm/dynamic -loading/malloc/linking/... failed. How do I make it work? +=item Scalar values -=item What modules and extensions are available for Perl? What is CPAN? -What does CPAN/src/... mean? +=item Scalar value constructors -=item Is there an ISO or ANSI certified version of Perl? +=item List value constructors -=item Where can I get information on Perl? +=item Slices -=item What are the Perl newsgroups on Usenet? Where do I post questions? +=item Typeglobs and Filehandles -=item Where should I post source code? +=back -=item Perl Books +=item SEE ALSO -References, Tutorials - *Learning Perl [2nd edition] - by Randal L. Schwartz and Tom Christiansen - with foreword by Larry Wall, Task-Oriented, Special Topics +=back -=item Perl in Magazines +=head2 perlop - Perl operators and precedence -=item Perl on the Net: FTP and WWW Access +=over 4 -=item What mailing lists are there for Perl? +=item SYNOPSIS -=item Archives of comp.lang.perl.misc +=item DESCRIPTION -=item Where can I buy a commercial version of Perl? +=over 4 -=item Where do I send bug reports? +=item Terms and List Operators (Leftward) -=item What is perl.com? Perl Mongers? pm.org? perl.org? +=item The Arrow Operator -=back +=item Auto-increment and Auto-decrement -=item AUTHOR AND COPYRIGHT +=item Exponentiation -=back +=item Symbolic Unary Operators -=head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23 -16:08:30 $) +=item Binding Operators -=over +=item Multiplicative Operators -=item DESCRIPTION +=item Additive Operators -=over +=item Shift Operators -=item How do I do (anything)? +=item Named Unary Operators -=item How can I use Perl interactively? +=item Relational Operators -=item Is there a Perl shell? +=item Equality Operators -=item How do I debug my Perl programs? +=item Bitwise And -=item How do I profile my Perl programs? +=item Bitwise Or and Exclusive Or -=item How do I cross-reference my Perl programs? +=item C-style Logical And -=item Is there a pretty-printer (formatter) for Perl? +=item C-style Logical Or -=item Is there a ctags for Perl? +=item Range Operators -=item Is there an IDE or Windows Perl Editor? +=item Conditional Operator -=item Where can I get Perl macros for vi? +=item Assignment Operators -=item Where can I get perl-mode for emacs? +=item Comma Operator -=item How can I use curses with Perl? +=item List Operators (Rightward) -=item How can I use X or Tk with Perl? +=item Logical Not -=item How can I generate simple menus without using CGI or Tk? +=item Logical And -=item What is undump? +=item Logical or and Exclusive Or -=item How can I make my Perl program run faster? +=item C Operators Missing From Perl -=item How can I make my Perl program take less memory? +unary &, unary *, (TYPE) -=item Is it unsafe to return a pointer to local data? +=item Quote and Quote-like Operators -=item How can I free an array or hash so my program shrinks? +=item Regexp Quote-Like Operators -=item How can I make my CGI script more efficient? +?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>, +qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/, +s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, +y/SEARCHLIST/REPLACEMENTLIST/cds -=item How can I hide the source for my Perl program? +=item Gory details of parsing quoted constructs -=item How can I compile my Perl program into byte code or C? +Finding the end, Removal of backslashes before delimiters, Interpolation, +C<<<'EOF'>, C, C, C, C, C<''>, C, C<"">, +C<``>, C, C, C<< >>, C, C, C, +C,, Interpolation of regular expressions, Optimization of +regular expressions -=item How can I compile Perl into Java? +=item I/O Operators -=item How can I get C<#!perl> to work on [MS-DOS,NT,...]? +=item Constant Folding -=item Can I write useful Perl programs on the command line? +=item Bitwise String Operators -=item Why don't Perl one-liners work on my DOS/Mac/VMS system? +=item Integer Arithmetic -=item Where can I learn about CGI or Web programming in Perl? +=item Floating-point Arithmetic -=item Where can I learn about object-oriented Perl programming? +=item Bigger Numbers -=item Where can I learn about linking C with Perl? [h2xs, xsubpp] +=back -=item I've read perlembed, perlguts, etc., but I can't embed perl in -my C program, what am I doing wrong? +=back -=item When I tried to run my script, I got this message. What does it -mean? +=head2 perlsub - Perl subroutines -=item What's MakeMaker? +=over 4 -=back +=item SYNOPSIS -=item AUTHOR AND COPYRIGHT +=item DESCRIPTION -=back +=over 4 -=head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23 -20:37:49 $) +=item Private Variables via my() -=over +=item Persistent Private Variables -=item DESCRIPTION +=item Temporary Values via local() -=item Data: Numbers +=item Lvalue subroutines -=over +=item Passing Symbol Table Entries (typeglobs) -=item Why am I getting long decimals (eg, 19.9499999999999) instead of the -numbers I should be getting (eg, 19.95)? +=item When to Still Use local() -=item Why isn't my octal data interpreted correctly? +=item Pass by Reference -=item Does Perl have a round() function? What about ceil() and floor()? -Trig functions? +=item Prototypes -=item How do I convert bits into ints? +=item Constant Functions -=item Why doesn't & work the way I want it to? +=item Overriding Built-in Functions -=item How do I multiply matrices? +=item Autoloading -=item How do I perform an operation on a series of integers? +=item Subroutine Attributes -=item How can I output Roman numerals? +=back -=item Why aren't my random numbers random? +=item SEE ALSO =back -=item Data: Dates +=head2 perlfunc - Perl builtin functions -=over +=over 4 -=item How do I find the week-of-the-year/day-of-the-year? +=item DESCRIPTION -=item How do I find the current century or millennium? +=over 4 -=item How can I compare two dates and find the difference? +=item Perl Functions by Category -=item How can I take a string and turn it into epoch seconds? +Functions for SCALARs or strings, Regular expressions and pattern matching, +Numeric functions, Functions for real @ARRAYs, Functions for list data, +Functions for real %HASHes, Input and output functions, Functions for fixed +length data or records, Functions for filehandles, files, or directories, +Keywords related to the control flow of your perl program, Keywords related +to scoping, Miscellaneous functions, Functions for processes and process +groups, Keywords related to perl modules, Keywords related to classes and +object-orientedness, Low-level socket functions, System V interprocess +communication functions, Fetching user and group info, Fetching network +info, Time-related functions, Functions new in perl5, Functions obsoleted +in perl5 -=item How can I find the Julian Day? +=item Portability -=item How do I find yesterday's date? +=item Alphabetical Listing of Perl Functions -=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? +I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept +NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, +binmode FILEHANDLE, DISCIPLINE, 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, 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 EXPR : +ATTRIBUTES, next LABEL, next, no Module LIST, oct EXPR, oct, open +FILEHANDLE,MODE,LIST, open FILEHANDLE,EXPR, open FILEHANDLE, opendir +DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, 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, sqrt EXPR, +sqrt, srand EXPR, srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, +study, sub BLOCK, sub NAME, sub NAME 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, 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/// =back -=item Data: Strings +=back -=over +=head2 perlreftut - Mark's very short tutorial about references -=item How do I validate input? +=over 4 -=item How do I unescape a string? +=item DESCRIPTION -=item How do I remove consecutive pairs of characters? - -=item How do I expand function calls in a string? - -=item How do I find matching/nesting anything? - -=item How do I reverse a string? - -=item How do I expand tabs in a string? +=item Who Needs Complicated Data Structures? -=item How do I reformat a paragraph? +=item The Solution -=item How can I access/change the first N letters of a string? +=item Syntax -=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 Making References -=item How do I capitalize all the words on one line? +=item Using References -=item How can I split a [character] delimited string except when inside -[character]? (Comma-separated files) +=back -=item How do I strip blank space from the beginning/end of a string? +=item An Example -=item How do I pad a string with blanks or pad a number with zeroes? +=item Arrow Rule -=item How do I extract selected columns from a string? +=item Solution -=item How do I find the soundex value of a string? +=item The Rest -=item How can I expand variables in text strings? +=item Summary -=item What's wrong with always quoting "$vars"? +=item Credits -=item Why don't my EEHERE documents work? +=over 4 -1. There must be no space after the << part, 2. There (probably) should be -a semicolon at the end, 3. You can't (easily) have any space in front of -the tag +=item Distribution Conditions =back -=item Data: Arrays - -=over - -=item What is the difference between a list and an array? - -=item What is the difference between $array[1] and @array[1]? +=back -=item How can I remove duplicate elements from a list or array? +=head2 perldsc - Perl Data Structures Cookbook -a) If @in is sorted, and you want @out to be sorted:(this assumes all true -values in the array), b) If you don't know whether @in is sorted:, c) Like -(b), but @in contains only small integers:, d) A way to do (b) without any -loops or greps:, e) Like (d), but @in contains only small positive -integers: +=over 4 -=item How can I tell whether a list or array contains a certain element? +=item DESCRIPTION -=item How do I compute the difference of two arrays? How do I compute the -intersection of two arrays? +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs -=item How do I test whether two arrays or hashes are equal? +=item REFERENCES -=item How do I find the first array element for which a condition is true? +=item COMMON MISTAKES -=item How do I handle linked lists? +=item CAVEAT ON PRECEDENCE -=item How do I handle circular lists? +=item WHY YOU SHOULD ALWAYS C -=item How do I shuffle an array randomly? +=item DEBUGGING -=item How do I process/modify each element of an array? +=item CODE EXAMPLES -=item How do I select a random element from an array? +=item ARRAYS OF ARRAYS -=item How do I permute N elements of a list? +=over 4 -=item How do I sort an array by (anything)? +=item Declaration of a ARRAY OF ARRAYS -=item How do I manipulate arrays of bits? +=item Generation of a ARRAY OF ARRAYS -=item Why does defined() return true on empty arrays and hashes? +=item Access and Printing of a ARRAY OF ARRAYS =back -=item Data: Hashes (Associative Arrays) +=item HASHES OF ARRAYS -=over +=over 4 -=item How do I process an entire hash? +=item Declaration of a HASH OF ARRAYS -=item What happens if I add or remove keys from a hash while iterating over -it? +=item Generation of a HASH OF ARRAYS -=item How do I look up a hash element by value? +=item Access and Printing of a HASH OF ARRAYS -=item How can I know how many entries are in a hash? +=back -=item How do I sort a hash (optionally by value instead of key)? +=item ARRAYS OF HASHES -=item How can I always keep my hash sorted? +=over 4 -=item What's the difference between "delete" and "undef" with hashes? +=item Declaration of a ARRAY OF HASHES -=item Why don't my tied hashes make the defined/exists distinction? +=item Generation of a ARRAY OF HASHES -=item How do I reset an each() operation part-way through? +=item Access and Printing of a ARRAY OF HASHES -=item How can I get the unique keys from two hashes? +=back -=item How can I store a multidimensional array in a DBM file? +=item HASHES OF HASHES -=item How can I make my hash remember the order I put elements into it? +=over 4 -=item Why does passing a subroutine an undefined element in a hash create -it? +=item Declaration of a HASH OF HASHES -=item How can I make the Perl equivalent of a C structure/C++ class/hash or -array of hashes or arrays? +=item Generation of a HASH OF HASHES -=item How can I use a reference as a hash key? +=item Access and Printing of a HASH OF HASHES =back -=item Data: Misc - -=over - -=item How do I handle binary data correctly? +=item MORE ELABORATE RECORDS -=item How do I determine whether a scalar is a number/whole/integer/float? +=over 4 -=item How do I keep persistent data across program calls? +=item Declaration of MORE ELABORATE RECORDS -=item How do I print out or copy a recursive data structure? +=item Declaration of a HASH OF COMPLEX RECORDS -=item How do I define methods for every class/object? +=item Generation of a HASH OF COMPLEX RECORDS -=item How do I verify a credit card checksum? +=back -=item How do I pack arrays of doubles or floats for XS code? +=item Database Ties -=back +=item SEE ALSO -=item AUTHOR AND COPYRIGHT +=item AUTHOR =back -=head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23 -16:08:30 $) +=head2 perlrequick - Perl regular expressions quick start -=over +=over 4 =item DESCRIPTION -=over - -=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 The Guide -=item How do I count the number of lines in a file? +=over 4 -=item How do I make a temporary file name? +=item Simple word matching -=item How can I manipulate fixed-record-length files? +=item Using character classes -=item How can I make a filehandle local to a subroutine? How do I pass -filehandles between subroutines? How do I make an array of filehandles? +=item Matching this or that -=item How can I use a filehandle indirectly? +=item Grouping things and hierarchical matching -=item How can I set up a footer format to be used with write()? +=item Extracting matches -=item How can I write() into a string? +=item Matching repetitions -=item How can I output my numbers with commas added? +=item More matching -=item How can I translate tildes (~) in a filename? +=item Search and replace -=item How come when I open a file read-write it wipes it out? +=item The split operator -=item Why do I sometimes get an "Argument list too long" when I use -E*E? +=back -=item Is there a leak/bug in glob()? +=item BUGS -=item How can I open a file with a leading "E" or trailing blanks? +=item SEE ALSO -=item How can I reliably rename a file? +=item AUTHOR AND COPYRIGHT -=item How can I lock a file? +=over 4 -=item Why can't I just open(FH, ">file.lock")? +=item Acknowledgments -=item I still don't get locking. I just want to increment the number in -the file. How can I do this? +=back -=item How do I randomly update a binary file? +=back -=item How do I get a file's timestamp in perl? +=head2 perlpod - plain old documentation -=item How do I set a file's timestamp in perl? +=over 4 -=item How do I print to more than one file at once? +=item DESCRIPTION -=item How can I read in an entire file all at once? +=over 4 -=item How can I read in a file by paragraphs? +=item Verbatim Paragraph -=item How can I read a single character from a file? From the keyboard? +=item Command Paragraph -=item How can I tell whether there's a character waiting on a filehandle? +=item Ordinary Block of Text -=item How do I do a C in perl? +=item The Intent -=item How do I dup() a filehandle in Perl? +=item Embedding Pods in Perl Modules -=item How do I close a file descriptor by number? +=item Common Pod Pitfalls -=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't -`C:\temp\foo.exe` work? +=back -=item Why doesn't glob("*.*") get all the files? +=item SEE ALSO -=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 AUTHOR -=item How do I select a random line from a file? +=back -=item Why do I get weird spaces when I print an array of lines? +=head2 perlstyle - Perl style guide -=back +=over 4 -=item AUTHOR AND COPYRIGHT +=item DESCRIPTION =back -=head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $) +=head2 perltrap - Perl traps for the unwary -=over +=over 4 =item DESCRIPTION -=over +=over 4 -=item How can I hope to use regular expressions without creating illegible -and unmaintainable code? +=item Awk Traps -Comments Outside the Regex, Comments Inside the Regex, Different Delimiters +=item C Traps -=item I'm having trouble matching over more than one line. What's wrong? +=item Sed Traps -=item How can I pull out lines between two patterns that are themselves on -different lines? +=item Shell Traps -=item I put a regular expression into $/ but it didn't work. What's wrong? +=item Perl Traps -=item How do I substitute case insensitively on the LHS, but preserving -case on the RHS? +=item Perl4 to Perl5 Traps -=item How can I make C<\w> match national character sets? +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 can I match a locale-smart version of C? +=item Discontinuance, Deprecation, and BugFix traps -=item How can I quote a variable to use in a regex? +Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, +Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, +Discontinuance, Deprecation, Discontinuance, Discontinuance -=item What is C really for? +=item Parsing Traps -=item How do I use a regular expression to strip C style comments from a -file? +Parsing, Parsing, Parsing, Parsing -=item Can I use Perl regular expressions to match balanced text? +=item Numerical Traps -=item What does it mean that regexes are greedy? How can I get around it? +Numerical, Numerical, Numerical, Bitwise string ops -=item How do I process each word on each line? +=item General data type traps -=item How can I print out a word-frequency or line-frequency summary? +(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), +(Constants), (Scalars), (Variable Suicide) -=item How can I do approximate matching? +=item Context Traps - scalar, list contexts -=item How do I efficiently match many regular expressions at once? +(list context), (scalar context), (scalar context), (list, builtin) -=item Why don't word-boundary searches with C<\b> work for me? +=item Precedence Traps -=item Why does using $&, $`, or $' slow my program down? +Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, +Precedence -=item What good is C<\G> in a regular expression? +=item General Regular Expression Traps using s///, etc. -=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? +Regular Expression, Regular Expression, Regular Expression, Regular +Expression, Regular Expression, Regular Expression, Regular Expression, +Regular Expression -=item What's wrong with using grep or map in a void context? +=item Subroutine, Signal, Sorting Traps -=item How can I match strings with multibyte characters? +(Signals), (Sort Subroutine), warn() won't let you specify a filehandle -=item How do I match a pattern that is supplied by the user? +=item OS Traps -=back +(SysV), (SysV) -=item AUTHOR AND COPYRIGHT +=item Interpolation Traps -=back +Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, +Interpolation, Interpolation, Interpolation, Interpolation -=head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date: -1999/05/23 20:36:18 $) +=item DBM Traps -=over +DBM, DBM -=item DESCRIPTION +=item Unclassified Traps -=over +C/C trap using returned value, C on empty string with +LIMIT specified -=item Can I get a BNF/yacc/RE for the Perl language? +=back -=item What are all these $@%&* punctuation signs, and how do I know when to -use them? +=back -=item Do I always/never have to quote my strings or use semicolons and -commas? +=head2 perlrun - how to execute the Perl interpreter -=item How do I skip some return values? +=over 4 -=item How do I temporarily block warnings? +=item SYNOPSIS -=item What's an extension? +=item DESCRIPTION -=item Why do Perl operators have different precedence than C operators? +=over 4 -=item How do I declare/create a structure? +=item #! and quoting on non-Unix systems -=item How do I create a module? +OS/2, MS-DOS, Win95/NT, Macintosh, VMS -=item How do I create a class? +=item Location of Perl -=item How can I tell if a variable is tainted? +=item Command Switches -=item What's a closure? +B<-0>[I], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I, +B<-D>I, B<-D>I, B<-e> I, B<-F>I, +B<-h>, B<-i>[I], B<-I>I, B<-l>[I], +B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, +B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, +B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, B<-X>, +B<-x> I -=item What is variable suicide and how can I prevent it? +=back -=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, -Regex}? +=item ENVIRONMENT -Passing Variables and Functions, Passing Filehandles, Passing Regexes, -Passing Methods +HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL +(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL, +PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to the VMS port) -=item How do I create a static variable? +=back -=item What's the difference between dynamic and lexical (static) scoping? -Between local() and my()? +=head2 perldiag - various Perl diagnostics -=item How can I access a dynamic variable while a similarly named lexical -is in scope? +=over 4 -=item What's the difference between deep and shallow binding? +=item DESCRIPTION -=item Why doesn't "my($foo) = EFILEE;" work right? +=back -=item How do I redefine a builtin function, operator, or method? +=head2 perllexwarn - Perl Lexical Warnings -=item What's the difference between calling a function as &foo and foo()? +=over 4 -=item How do I create a switch or case statement? +=item DESCRIPTION -=item How can I catch accesses to undefined variables/functions/methods? +=over 4 -=item Why can't a method included in this same file be found? +=item Default Warnings and Optional Warnings -=item How can I find out my current package? +=item What's wrong with B<-w> and C<$^W> -=item How can I comment out a large block of perl code? +=item Controlling Warnings from the Command Line -=item How do I clear a package? +B<-w>, B<-W>, B<-X> -=item How can I use a variable as a variable name? +=item Backward Compatibility + +=item Category Hierarchy + +=item Fatal Warnings + +=item Reporting Warnings from a Module =back -=item AUTHOR AND COPYRIGHT +=item TODO + +=item SEE ALSO + +=item AUTHOR =back -=head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23 -18:37:57 $) +=head2 perldebtut - Perl debugging tutorial -=over +=over 4 =item DESCRIPTION -=over +=item use strict -=item How do I find out which operating system I'm running under? - -=item How come exec() doesn't return? +=item Looking at data and -w and w -=item How do I do fancy stuff with the keyboard/screen/mouse? +=item help -Keyboard, Screen, Mouse +=item Stepping through code -=item How do I print something out in color? +=item Placeholder for a, w, t, T -=item How do I read just one key without waiting for a return key? +=item REGULAR EXPRESSIONS -=item How do I check whether input is ready on the keyboard? +=item OUTPUT TIPS -=item How do I clear the screen? +=item CGI -=item How do I get the screen size? +=item GUIs -=item How do I ask the user for a password? +=item SUMMARY -=item How do I read and write the serial port? +=item SEE ALSO -lockfiles, open mode, end of line, flushing output, non-blocking input +=item AUTHOR -=item How do I decode encrypted password files? +=item CONTRIBUTORS -=item How do I start a process in the background? +=back -STDIN, STDOUT, and STDERR are shared, Signals, Zombies +=head2 perldebug - Perl debugging -=item How do I trap control characters/signals? +=over 4 -=item How do I modify the shadow password file on a Unix system? +=item DESCRIPTION -=item How do I set the time and date? +=item The Perl Debugger -=item How can I sleep() or alarm() for under a second? +=over 4 -=item How can I measure time under a second? +=item Debugger Commands -=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) +h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n +[expr], r, , c [line|sub], l, l min+incr, l min-max, l line, l subname, +-, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], t, t expr, +b [line] [condition], b subname [condition], b postpone subname +[condition], b load filename, b compile subname, d [line], D, a [line] +command, a [line], A, W expr, W, O booloption .., O anyoption? .., O +option=value .., < ?, < [ command ], << command, > ?, > command, >> +command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !! +cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man [manpage] -=item Why doesn't my sockets program work under System V (Solaris)? What -does the error message "Protocol not supported" mean? +=item Configurable Options -=item How can I call my system's unique C functions from Perl? +C, C, C, C, C, +C, 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 Where do I get the include files to do ioctl() or syscall()? +=item Debugger input/output -=item Why do setuid perl scripts complain about kernel problems? +Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame +listing -=item How can I open a pipe both to and from a command? +=item Debugging compile-time statements -=item Why can't I get the output of a command with system()? +=item Debugger Customization -=item How can I capture STDERR from an external command? +=item Readline Support -=item Why doesn't open() return an error when a pipe open fails? +=item Editor Support for Debugging -=item What's wrong with using backticks in a void context? +=item The Perl Profiler -=item How can I call backticks without shell processing? +=back -=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, -^Z on MS-DOS)? +=item Debugging regular expressions -=item How can I convert my shell script to perl? +=item Debugging memory usage -=item Can I use perl to run a telnet or ftp session? +=item SEE ALSO -=item How can I write expect in Perl? +=item BUGS -=item Is there a way to hide perl's command line from programs such as -"ps"? +=back -=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? +=head2 perlvar - Perl predefined variables -Unix +=over 4 -=item How do I close a process's filehandle without waiting for it to -complete? +=item DESCRIPTION -=item How do I fork a daemon process? +=over 4 -=item How do I make my program run with sh and csh? +=item Predefined Names -=item How do I find out if I'm running interactively or not? +$ARG, $_, $>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', +$LAST_PAREN_MATCH, $+, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*, +input_line_number HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, +input_record_separator HANDLE EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, +autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE +EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE +EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $", +$SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE +EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR, +$FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR, +$FORMAT_LINES_LEFT, $-, @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, format_name HANDLE EXPR, $FORMAT_NAME, $~, +format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, +format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, +$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, +$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, +$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, +$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, +$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, +$DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M, +$OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, +0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, +$BASETIME, $^T, $PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS}, +${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, @_, %INC, +%ENV, $ENV{expr}, %SIG, $SIG{expr} -=item How do I timeout a slow event? +=item Error Indicators -=item How do I set CPU limits? +=item Technical Note on the Syntax of Variable Names -=item How do I avoid zombies on a Unix system? +=back -=item How do I use an SQL database? +=item BUGS -=item How do I make a system() exit on control-C? +=back -=item How do I open a file without blocking? +=head2 perllol - Manipulating Arrays of Arrays in Perl -=item How do I install a module from CPAN? +=over 4 -=item What's the difference between require and use? +=item DESCRIPTION -=item How do I keep my own module/library directory? +=item Declaration and Access of Arrays of Arrays -=item How do I add the directory my program lives in to the module/library -search path? +=item Growing Your Own -=item How do I add a directory to my include path at runtime? +=item Access and Printing -=item What is socket.ph and where do I get it? +=item Slices -=back +=item SEE ALSO -=item AUTHOR AND COPYRIGHT +=item AUTHOR =back -=head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30 -$) +=head2 perlopentut - tutorial on opening things in Perl -=over +=over 4 =item DESCRIPTION -=over +=item Open E la shell -=item My CGI script runs from the command line but not the browser. (500 -Server Error) +=over 4 -=item How can I get better error messages from a CGI program? +=item Simple Opens -=item How do I remove HTML from a string? +=item Pipe Opens -=item How do I extract URLs? +=item The Minus File -=item How do I download a file from the user's machine? How do I open a -file on another machine? +=item Mixing Reads and Writes -=item How do I make a pop-up menu in HTML? +=item Filters -=item How do I fetch an HTML file? +=back -=item How do I automate an HTML form submission? +=item Open E la C -=item How do I decode or create those %-encodings on the web? +=over 4 -=item How do I redirect to another page? +=item Permissions E la mode -=item How do I put a password on my web pages? +=back -=item How do I edit my .htpasswd and .htgroup files with Perl? +=item Obscure Open Tricks -=item How do I make sure users can't enter values into a form that cause my -CGI script to do bad things? +=over 4 -=item How do I parse a mail header? +=item Re-Opening Files (dups) -=item How do I decode a CGI form? +=item Dispelling the Dweomer -=item How do I check a valid mail address? +=item Paths as Opens -=item How do I decode a MIME/BASE64 string? +=item Single Argument Open -=item How do I return the user's mail address? +=item Playing with STDIN and STDOUT -=item How do I send mail? +=back -=item How do I read mail? +=item Other I/O Issues -=item How do I find out my hostname/domainname/IP address? +=over 4 -=item How do I fetch a news article or the active newsgroups? +=item Opening Non-File Files -=item How do I fetch/put an FTP file? +=item Binary Files -=item How can I do RPC in Perl? +=item File Locking =back -=item AUTHOR AND COPYRIGHT +=item SEE ALSO + +=item AUTHOR and COPYRIGHT + +=item HISTORY =back -=head2 perldelta - what's new for perl v5.6 (as of v5.005_64) +=head2 perlretut - Perl regular expressions tutorial -=over +=over 4 =item DESCRIPTION -=item Incompatible Changes +=item Part 1: The basics -=over +=over 4 -=item Perl Source Incompatibilities +=item Simple word matching -CHECK is a new keyword, Treatment of list slices of undef has changed, -Possibly changed pseudo-random number generator, Hashing function for hash -keys has changed, C fails on read only values, Close-on-exec bit may -be set on pipe() handles, Writing C<"$$1"> to mean C<"${$}1"> is -unsupported, delete(), values() and C<\(%h)> operate on aliases to values, -not copies, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, Text of some -diagnostic output has changed, C<%@> has been removed, Parenthesized not() -behaves like a list operator, Semantics of bareword prototype C<(*)> have -changed +=item Using character classes -=item C Source Incompatibilities +=item Matching this or that -C, C, C +=item Grouping things and hierarchical matching -=item Compatible C Source API Changes +=item Extracting matches -C is now C, Support for C++ exceptions +=item Matching repetitions -=item Binary Incompatibilities +=item Building a regexp + +=item Using regular expressions in Perl =back -=item Installation and Configuration Improvements +=item Part 2: Power tools -=over +=over 4 -=item New Configure flags +=item More on characters, strings, and character classes + +=item Compiling and saving regular expressions + +=item Embedding comments and modifiers in a regular expression + +=item Non-capturing groupings + +=item Looking ahead and looking behind + +=item Using independent subexpressions to prevent backtracking + +=item Conditional expressions -=item -Dusethreads and -Duse64bits now more daring +=item A bit of magic: executing Perl code in a regular expression + +=item Pragmas and debugging + +=back + +=item BUGS + +=item SEE ALSO + +=item AUTHOR AND COPYRIGHT + +=over 4 + +=item Acknowledgments + +=back + +=back + +=head2 perlre - Perl regular expressions + +=over 4 + +=item DESCRIPTION + +i, m, s, x + +=over 4 + +=item Regular Expressions + +cntrl, graph, print, punct, xdigit + +=item Extended Patterns + +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 Backtracking + +=item Version 8 Regular Expressions + +=item Warning on \1 vs $1 + +=item Repeated patterns matching zero-length substring + +=item Combining pieces together + +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 custom RE engines + +=back + +=item BUGS + +=item SEE ALSO + +=back + +=head2 perlref - Perl references and nested data structures + +=over 4 + +=item NOTE + +=item DESCRIPTION + +=over 4 + +=item Making References + +=item Using References + +=item Symbolic references + +=item Not-so-symbolic references + +=item Pseudo-hashes: Using an array as a hash + +=item Function Templates + +=back + +=item WARNING + +=item SEE ALSO + +=back + +=head2 perlform - Perl formats + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Format Variables + +=back + +=item NOTES + +=over 4 + +=item Footers + +=item Accessing Formatting Internals + +=back + +=item WARNINGS + +=back + +=head2 perlboot - Beginner's Object-Oriented Tutorial + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item If we could talk to the animals... + +=item Introducing the method invocation arrow + +=item Invoking a barnyard + +=item The extra parameter of method invocation + +=item Calling a second method to simplify things + +=item Inheriting the windpipes + +=item A few notes about @ISA + +=item Overriding the methods + +=item Starting the search from a different place + +=item The SUPER way of doing things + +=item Where we're at so far... + +=item A horse is a horse, of course of course -- or is it? + +=item Invoking an instance method + +=item Accessing the instance data + +=item How to build a horse + +=item Inheriting the constructor + +=item Making a method work with either classes or instances + +=item Adding parameters to a method + +=item More interesting instances + +=item A horse of a different color + +=item Summary + +=back + +=item SEE ALSO + +=item COPYRIGHT + +=back + +=head2 perltoot - Tom's object-oriented tutorial for perl + +=over 4 + +=item DESCRIPTION + +=item Creating a Class + +=over 4 + +=item Object Representation + +=item Class Interface + +=item Constructors and Instance Methods + +=item Planning for the Future: Better Constructors + +=item Destructors + +=item Other Object Methods + +=back + +=item Class Data + +=over 4 + +=item Accessing Class Data + +=item Debugging Methods + +=item Class Destructors + +=item Documenting the Interface + +=back + +=item Aggregation + +=item Inheritance + +=over 4 + +=item Overridden Methods + +=item Multiple Inheritance + +=item UNIVERSAL: The Root of All Objects + +=back + +=item Alternate Object Representations + +=over 4 + +=item Arrays as Objects + +=item Closures as Objects + +=back + +=item AUTOLOAD: Proxy Methods + +=over 4 + +=item Autoloaded Data Methods + +=item Inherited Autoloaded Data Methods + +=back + +=item Metaclassical Tools + +=over 4 + +=item Class::Struct + +=item Data Members as Variables + +=back + +=item NOTES + +=over 4 + +=item Object Terminology + +=back + +=item SEE ALSO + +=item AUTHOR AND COPYRIGHT + +=item COPYRIGHT + +=over 4 + +=item Acknowledgments + +=back + +=back + +=head2 perltootc - Tom's OO Tutorial for Class Data in Perl + +=over 4 + +=item DESCRIPTION + +=item Class Data as Package Variables + +=over 4 + +=item Putting All Your Eggs in One Basket + +=item Inheritance Concerns + +=item The Eponymous Meta-Object + +=item Indirect References to Class Data + +=item Monadic Classes + +=item Translucent Attributes + +=back + +=item Class Data as Lexical Variables + +=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 NOTES + +=item SEE ALSO + +=item AUTHOR AND COPYRIGHT + +=item ACKNOWLEDGEMENTS + +=item HISTORY + +=back + +=head2 perlobj - Perl objects + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item An Object is Simply a Reference + +=item A Class is Simply a Package + +=item A Method is Simply a Subroutine + +=item Method Invocation + +=item WARNING + +=item Default UNIVERSAL methods + +isa(CLASS), can(METHOD), VERSION( [NEED] ) + +=item Destructors + +=item Summary + +=item Two-Phased Garbage Collection + +=back + +=item SEE ALSO + +=back + +=head2 perlbot - Bag'o Object Tricks (the BOT) + +=over 4 + +=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 + +=back + +=head2 perltie - how to hide an object class in a simple variable + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Tying Scalars + +TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this, +DESTROY this + +=item Tying Arrays + +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 Tying Hashes + +USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE +this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY +this, NEXTKEY this, lastkey, UNTIE this, DESTROY this + +=item Tying FileHandles + +TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, +LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this, +DESTROY this + +=item UNTIE this + +=item The C Gotcha + +=back + +=item SEE ALSO + +=item BUGS + +=item AUTHOR + +=back + +=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, +safe subprocesses, sockets, and semaphores) + +=over 4 + +=item DESCRIPTION + +=item Signals + +=item Named Pipes + +=over 4 + +=item WARNING + +=back + +=item Using open() for IPC + +=over 4 + +=item Filehandles + +=item Background Processes + +=item Complete Dissociation of Child from Parent + +=item Safe Pipe Opens + +=item Bidirectional Communication with Another Process + +=item Bidirectional Communication with Yourself + +=back + +=item Sockets: Client/Server Communication + +=over 4 + +=item Internet Line Terminators + +=item Internet TCP Clients and Servers + +=item Unix-Domain TCP Clients and Servers + +=back + +=item TCP Clients with IO::Socket + +=over 4 + +=item A Simple Client + +C, C, C + +=item A Webget Client + +=item Interactive Client with IO::Socket + +=back + +=item TCP Servers with IO::Socket + +Proto, LocalPort, Listen, Reuse + +=item UDP: Message Passing + +=item SysV IPC + +=item NOTES + +=item BUGS + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlfork - Perl's fork() emulation + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item Behavior of other Perl features in forked pseudo-processes + +$$ 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 Resource limits + +=item Killing the parent process + +=item Lifetime of the parent process and pseudo-processes + +=item CAVEATS AND LIMITATIONS + +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 BUGS + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlnumber - semantics of numbers and numeric operations in Perl + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item Storing numbers + +=item Numeric operators and numeric conversions + +=item Flavors of Perl numeric operations + +Arithmetic operators except, C, Arithmetic operators except, +C, Bitwise operators, C, Bitwise operators, C, Operators which expect an integer, Operators which expect a +string + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlthrtut - tutorial on threads in Perl + +=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 Threadsafe Modules + +=item Thread Basics + +=over 4 + +=item Basic Thread Support + +=item Creating Threads + +=item Giving up control + +=item Waiting For A Thread To Exit + +=item Errors In Threads + +=item Ignoring A Thread + +=back + +=item Threads And Data + +=over 4 + +=item Shared And Unshared Data + +=item Thread Pitfall: Races + +=item Controlling access: lock() + +=item Thread Pitfall: Deadlocks + +=item Queues: Passing Data Around + +=back + +=item Threads And Code + +=over 4 + +=item Semaphores: Synchronizing Data Access + +Basic semaphores, Advanced Semaphores + +=item Attributes: Restricting Access To Subroutines + +=item Subroutine Locks + +=item Methods + +=item Locking A Subroutine + +=back + +=item General Thread Utility Routines + +=over 4 + +=item What Thread Am I In? + +=item Thread IDs + +=item Are These Threads The Same? + +=item What Threads Are Running? + +=back + +=item A Complete Example + +=item Conclusion + +=item Bibliography + +=over 4 + +=item Introductory Texts + +=item OS-Related References + +=item Other References + +=back + +=item Acknowledgements + +=item AUTHOR + +=item Copyrights + +=back + +=head2 perlport - Writing portable Perl + +=over 4 + +=item DESCRIPTION + +Not all Perl programs have to be portable, Nearly all of Perl already I +portable + +=item ISSUES + +=over 4 + +=item Newlines + +=item Numbers endianness and Width + +=item Files and Filesystems + +=item System Interaction + +=item Interprocess Communication (IPC) + +=item External Subroutines (XS) + +=item Standard Modules + +=item Time and Date + +=item Character sets and character encoding + +=item Internationalisation + +=item System Resources + +=item Security + +=item Style + +=back + +=item CPAN Testers + +Mailing list: cpan-testers@perl.org, Testing results: +http://testers.cpan.org/ + +=item PLATFORMS + +=over 4 + +=item Unix + +=item DOS and Derivatives + +Build instructions for OS/2, L + +=item S + +=item VMS + +=item VOS + +=item EBCDIC Platforms + +=item Acorn RISC OS + +=item Other perls + +=back + +=item FUNCTION IMPLEMENTATIONS + +=over 4 + +=item Alphabetical Listing of Perl Functions + +-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, fcntl FILEHANDLE,FUNCTION,SCALAR, flock FILEHANDLE,OPERATION, fork, +getlogin, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME, +getgrnam NAME, getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr +ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, +getgrent, gethostent, getnetent, getprotoent, getservent, setpwent, +setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, +setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent, +endprotoent, endservent, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, +ioctl FILEHANDLE,FUNCTION,SCALAR, kill 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, 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 + +=back + +=item CHANGES + +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 Supported Platforms + +=item SEE ALSO + +=item AUTHORS / CONTRIBUTORS + +=item VERSION + +=back + +=head2 perllocale - Perl locale handling (internationalization and +localization) + +=over 4 + +=item DESCRIPTION + +=item PREPARING TO USE LOCALES + +=item USING LOCALES + +=over 4 + +=item The use locale pragma + +=item The setlocale function + +=item Finding locales + +=item LOCALE PROBLEMS + +=item Temporarily fixing locale problems + +=item Permanently fixing locale problems + +=item Permanently fixing your system's locale configuration + +=item Fixing system locale configuration + +=item The localeconv function + +=back + +=item LOCALE CATEGORIES + +=over 4 + +=item Category LC_COLLATE: Collation + +=item Category LC_CTYPE: Character Types + +=item Category LC_NUMERIC: Numeric Formatting + +=item Category LC_MONETARY: Formatting of monetary amounts + +=item LC_TIME + +=item Other categories + +=back + +=item SECURITY + +=item ENVIRONMENT + +PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, +LC_NUMERIC, LC_TIME, LANG + +=item NOTES + +=over 4 + +=item Backward compatibility + +=item I18N:Collate obsolete + +=item Sort speed and memory use impacts + +=item write() and LC_NUMERIC + +=item Freely available locale definitions + +=item I18n and l10n + +=item An imperfect standard + +=back + +=item BUGS + +=over 4 + +=item Broken systems + +=back + +=item SEE ALSO + +=item HISTORY + +=back + +=head2 perlunicode - Unicode support in Perl + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Important Caveat + +Input and Output Disciplines, Regular Expressions, C still needed +to enable a few features + +=item Byte and Character semantics + +=item Effects of character semantics + +=item Character encodings for input and output + +=back + +=item CAVEATS + +=item SEE ALSO + +=back + +=head2 perlebcdic - Considerations for running Perl on EBCDIC platforms + +=over 4 + +=item DESCRIPTION + +=item COMMON CHARACTER CODE SETS + +=over 4 + +=item ASCII + +=item ISO 8859 + +=item Latin 1 (ISO 8859-1) + +=item EBCDIC + +=item 13 variant characters + +=item 0037 + +=item 1047 + +=item POSIX-BC + +=back + +=item SINGLE OCTET TABLES + +recipe 0, recipe 1, recipe 2, recipe 3, recipe 4 + +=item IDENTIFYING CHARACTER CODE SETS + +=item CONVERSIONS + +=over 4 + +=item tr/// + +=item iconv + +=item C RTL + +=back + +=item OPERATOR DIFFERENCES + +=item FUNCTION DIFFERENCES + +chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() + +=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. + +=back + +=item TRANFORMATION FORMATS + +=over 4 + +=item URL decoding and encoding + +=item uu encoding and decoding + +=item Quoted-Printable encoding and decoding + +=item Caesarian cyphers + +=back + +=item Hashing order and checksums + +=item I18N AND L10N + +=item MULTI OCTET CHARACTER SETS + +=item OS ISSUES + +=over 4 + +=item OS/400 + +IFS access + +=item OS/390 + +chcp, dataset access, OS/390 iconv, locales + +=item VM/ESA? + +=item POSIX-BC? + +=back + +=item BUGS + +=item SEE ALSO + +=item REFERENCES + +=item AUTHOR + +=back + +=head2 perlsec - Perl security + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Laundering and Detecting Tainted Data + +=item Switches On the "#!" Line + +=item Cleaning Up Your Path + +=item Security Bugs + +=item Protecting Your Programs + +=back + +=item SEE ALSO + +=back + +=head2 perlmod - Perl modules (packages and symbol tables) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Packages + +=item Symbol Tables + +=item Package Constructors and Destructors + +=item Perl Classes + +=item Perl Modules + +=back + +=item SEE ALSO + +=back + +=head2 perlmodlib - constructing new Perl modules and finding existing ones + +=over 4 + +=item DESCRIPTION + +=item THE PERL MODULE LIBRARY + +=over 4 + +=item Pragmatic Modules + +attributes, attrs, autouse, base, blib, bytes, charnames, constant, +diagnostics, fields, filetest, integer, less, locale, open, ops, overload, +perlio, re, sigtrap, strict, subs, utf8, vars, warnings, warnings::register + +=item Standard Modules + +AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock, +B::Bytecode, B::C, B::CC, 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, CPAN, CPAN::FirstTime, CPAN::Nox, +Carp, Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, DirHandle, +Dumpvalue, Encode, English, Env, Exporter, Exporter::Heavy, +ExtUtils::Command, ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, +ExtUtils::Liblist, ExtUtils::MM_Cygwin, ExtUtils::MM_OS2, +ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32, +ExtUtils::MakeMaker, 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::Path, File::Spec, 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, FindBin, Getopt::Long, Getopt::Std, +I18N::Collate, IO, IPC::Open2, IPC::Open3, Math::BigFloat, Math::BigInt, +Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent, +Net::protoent, Net::servent, O, ODBM_File, Opcode, Pod::Checker, Pod::Find, +Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseUtils, +Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color, +Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver, +SelfLoader, Shell, Socket, Storable, Symbol, Term::ANSIColor, Term::Cap, +Term::Complete, Term::ReadLine, Test, Test::Harness, Text::Abbrev, +Text::ParseWords, Text::Soundex, Text::Wrap, Tie::Array, Tie::Handle, +Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, +Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, User::grent, +User::pwent + +=item Extension Modules + +=back + +=item CPAN + +Africa, Asia, Australasia, Central America, Europe, North America, South +America + +=item Modules: Creation, Use, and Abuse + +=over 4 + +=item Guidelines for Module Creation + +Do similar modules already exist in some form?, Try to design the new +module to be easy to extend and reuse, Some simple style guidelines, Select +what to export, Select a name for the module, Have you got it right?, +README and other Additional Files, A description of the +module/package/extension etc, A copyright notice - see below, Prerequisites +- what else you may need to have, How to build it - possible changes to +Makefile.PL etc, How to install it, Recent changes in this release, +especially incompatibilities, Changes / enhancements you plan to make in +the future, Adding a Copyright Notice, Give the module a +version/issue/release number, How to release and distribute a module, Take +care when changing a released module + +=item Guidelines for Converting Perl 4 Library Scripts into Modules + +There is no requirement to convert anything, Consider the implications, +Make the most of the opportunity, The pl2pm utility will get you started, +Adds the standard Module prologue lines, Converts package specifiers from ' +to ::, Converts die(...) to croak(...), Several other minor changes + +=item Guidelines for Reusing Application Code + +=back + +=item NOTE + +=back + +=head2 perlmodinstall - Installing CPAN Modules + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item PREAMBLE + +B the file, B the file into a directory, B the +module (sometimes unnecessary), B the module + +=back + +=item PORTABILITY + +=item HEY + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 perlnewmod - preparing a new module for distribution + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Warning + +=item What should I make into a module? + +=item Step-by-step: Preparing the ground + +Look around, Check it's new, Discuss the need, Choose a name, Check again + +=item Step-by-step: Making the module + +Start with F, Use L and L, Use +L, Use L - wisely!, Use L, Write tests, Write the README + +=item Step-by-step: Distributing your module + +Get a CPAN user ID, C, Upload the +tarball, Announce to the modules list, Announce to clpa, Fix bugs! + +=back + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date: +1999/05/23 16:08:30 $) + +=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 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.005/Perl instead of some other language? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $, +$Date: 1999/10/14 18:46:09 $) + +=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? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23 +16:08:30 $) + +=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 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? + +=item Where can I get Perl macros for vi? + +=item Where can I get perl-mode for emacs? + +=item How can I use curses with Perl? + +=item How can I use X or Tk with Perl? + +=item How can I generate simple menus without using CGI or Tk? + +=item What is undump? + +=item How can I make my Perl program run faster? + +=item How can I make my Perl program take less memory? + +=item Is it unsafe to return a pointer to local data? + +=item How can I free an array or hash so my program shrinks? + +=item How can I make my CGI script more efficient? + +=item How can I hide the source for my Perl program? + +=item How can I compile my Perl program into byte code or C? + +=item How can I 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.49 $, $Date: 1999/05/23 +20:37:49 $) + +=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 isn't my octal data interpreted correctly? + +=item Does Perl have a round() function? What about ceil() and floor()? +Trig functions? + +=item How do I convert bits into ints? + +=item 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? + +=back + +=item Data: Dates + +=over 4 + +=item How do I find the week-of-the-year/day-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? + +=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? + +=back + +=item Data: Strings + +=over 4 + +=item How do I validate input? + +=item How do I unescape a string? + +=item How do I remove consecutive pairs of characters? + +=item How do I expand function calls in a string? + +=item How do I find matching/nesting anything? + +=item How do I reverse a string? + +=item How do I expand tabs in a string? + +=item How do I reformat a paragraph? + +=item How can I access/change the first N letters of a string? + +=item How do I change the Nth occurrence of something? + +=item How can I count the number of occurrences of a substring within a +string? + +=item How do I capitalize all the words on one line? + +=item How can I split a [character] delimited string except when inside +[character]? (Comma-separated files) + +=item How do I strip blank space from the beginning/end of a string? + +=item How do I pad a string with blanks or pad a number with zeroes? + +=item How do I extract selected columns from a string? + +=item How do I find the soundex value of a string? + +=item How can I expand variables in text strings? + +=item What's wrong with always quoting "$vars"? + +=item Why don't my <? + +=item Is there a leak/bug in glob()? + +=item How can I open a file with a leading ">" or trailing blanks? + +=item How can I reliably rename a file? + +=item How can I lock a file? + +=item Why can't I just open(FH, ">file.lock")? + +=item I still don't get locking. I just want to increment the number in +the file. How can I do this? + +=item How do I randomly update a binary file? + +=item How do I get a file's timestamp in perl? + +=item How do I set a file's timestamp in perl? + +=item How do I print to more than one file at once? + +=item How can I read in an entire file all at once? + +=item How can I read in a file by paragraphs? + +=item How can I read a single character from a file? From the keyboard? + +=item How can I tell whether there's a character waiting on a filehandle? + +=item How do I do a C in perl? + +=item How do I dup() a filehandle in Perl? + +=item How do I close a file descriptor by number? + +=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't +`C:\temp\foo.exe` work? + +=item Why doesn't glob("*.*") get all the files? + +=item Why does Perl let me delete read-only files? Why does C<-i> clobber +protected files? Isn't this a bug in Perl? + +=item How do I select a random line from a file? + +=item Why do I get weird spaces when I print an array of lines? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item How can I hope to use regular expressions without creating illegible +and unmaintainable code? + +Comments Outside the Regex, Comments Inside the Regex, Different Delimiters + +=item I'm having trouble matching over more than one line. What's wrong? + +=item How can I pull out lines between two patterns that are themselves on +different lines? + +=item I put a regular expression into $/ but it didn't work. What's wrong? + +=item How do I substitute case insensitively on the LHS while preserving +case on the RHS? + +=item How can I make C<\w> match national character sets? + +=item How can I match a locale-smart version of C? + +=item How can I quote a variable to use in a regex? + +=item What is C really for? + +=item How do I use a regular expression to strip C style comments from a +file? + +=item Can I use Perl regular expressions to match balanced text? + +=item What does it mean that regexes are greedy? How can I get around it? + +=item How do I process each word on each line? + +=item How can I print out a word-frequency or line-frequency summary? + +=item How can I do approximate matching? + +=item How do I efficiently match many regular expressions at once? + +=item Why don't word-boundary searches with C<\b> work for me? + +=item Why does using $&, $`, or $' slow my program down? + +=item What good is C<\G> in a regular expression? + +=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? + +=item What's wrong with using grep or map in a void context? + +=item How can I match strings with multibyte characters? + +=item How do I match a pattern that is supplied by the user? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date: +1999/05/23 20:36:18 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Can I get a BNF/yacc/RE for the Perl language? + +=item What are all these $@%&* punctuation signs, and how do I know when to +use them? + +=item Do I always/never have to quote my strings or use semicolons and +commas? + +=item How do I skip some return values? + +=item How do I temporarily block warnings? + +=item What's an extension? + +=item Why do Perl operators have different precedence than C operators? + +=item How do I declare/create a structure? + +=item How do I create a module? + +=item How do I create a class? + +=item How can I tell if a variable is tainted? + +=item What's a closure? + +=item What is variable suicide and how can I prevent it? + +=item How can I pass/return a {Function, FileHandle, Array, Hash, Method, +Regex}? + +Passing Variables and Functions, Passing Filehandles, Passing Regexes, +Passing Methods + +=item How do I create a static variable? + +=item What's the difference between dynamic and lexical (static) scoping? +Between local() and my()? + +=item How can I access a dynamic variable while a similarly named lexical +is in scope? + +=item What's the difference between deep and shallow binding? + +=item Why doesn't "my($foo) = ;" work right? + +=item How do I redefine a builtin function, operator, or method? + +=item What's the difference between calling a function as &foo and foo()? + +=item How do I create a switch or case statement? + +=item How can I catch accesses to undefined variables/functions/methods? + +=item Why can't a method included in this same file be found? + +=item How can I find out my current package? + +=item How can I comment out a large block of perl code? + +=item How do I clear a package? + +=item How can I use a variable as a variable name? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23 +18:37:57 $) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item How do I find out which operating system I'm running under? + +=item How come exec() doesn't return? + +=item How do I do fancy stuff with the keyboard/screen/mouse? + +Keyboard, Screen, Mouse + +=item How do I print something out in color? + +=item How do I read just one key without waiting for a return key? + +=item How do I check whether input is ready on the keyboard? + +=item How do I clear the screen? + +=item How do I get the screen size? + +=item How do I ask the user for a password? + +=item How do I read and write the serial port? + +lockfiles, open mode, end of line, flushing output, non-blocking input + +=item How do I decode encrypted password files? + +=item How do I start a process in the background? + +STDIN, STDOUT, and STDERR are shared, Signals, Zombies + +=item How do I trap control characters/signals? + +=item How do I modify the shadow password file on a Unix system? + +=item How do I set the time and date? + +=item How can I sleep() or alarm() for under a second? + +=item How can I measure time under a second? + +=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) + +=item Why doesn't my sockets program work under System V (Solaris)? What +does the error message "Protocol not supported" mean? + +=item How can I call my system's unique C functions from Perl? + +=item Where do I get the include files to do ioctl() or syscall()? + +=item Why do setuid perl scripts complain about kernel problems? + +=item How can I open a pipe both to and from a command? + +=item Why can't I get the output of a command with system()? + +=item How can I capture STDERR from an external command? + +=item Why doesn't open() return an error when a pipe open fails? + +=item What's wrong with using backticks in a void context? + +=item How can I call backticks without shell processing? + +=item Why can't my script read from STDIN after I gave it EOF (^D on Unix, +^Z on MS-DOS)? + +=item How can I convert my shell script to perl? + +=item Can I use perl to run a telnet or ftp session? + +=item How can I write expect in Perl? + +=item Is there a way to hide perl's command line from programs such as +"ps"? + +=item I {changed directory, modified my environment} in a perl script. How +come the change disappeared when I exited the script? How do I get my +changes to be visible? + +Unix + +=item How do I close a process's filehandle without waiting for it to +complete? + +=item How do I fork a daemon process? + +=item How do I find out if I'm running interactively or not? + +=item How do I timeout a slow event? + +=item How do I set CPU limits? + +=item How do I avoid zombies on a Unix system? + +=item How do I use an SQL database? + +=item How do I make a system() exit on control-C? + +=item How do I open a file without blocking? + +=item How do I install a module from CPAN? + +=item What's the difference between require and use? + +=item How do I keep my own module/library directory? + +=item How do I add the directory my program lives in to the module/library +search path? + +=item How do I add a directory to my include path at runtime? + +=item What is socket.ph and where do I get it? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30 +$) + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item My CGI script runs from the command line but not the browser. (500 +Server Error) + +=item How can I get better error messages from a CGI program? + +=item How do I remove HTML from a string? + +=item How do I extract URLs? + +=item How do I download a file from the user's machine? How do I open a +file on another machine? + +=item How do I make a pop-up menu in HTML? + +=item How do I fetch an HTML file? + +=item How do I automate an HTML form submission? + +=item How do I decode or create those %-encodings on the web? + +=item How do I redirect to another page? + +=item How do I put a password on my web pages? + +=item How do I edit my .htpasswd and .htgroup files with Perl? + +=item How do I make sure users can't enter values into a form that cause my +CGI script to do bad things? + +=item How do I parse a mail header? + +=item How do I decode a CGI form? + +=item How do I check a valid mail address? + +=item How do I decode a MIME/BASE64 string? + +=item How do I return the user's mail address? + +=item How do I send mail? + +=item How do I read mail? + +=item How do I find out my hostname/domainname/IP address? + +=item How do I fetch a news article or the active newsgroups? + +=item How do I fetch/put an FTP file? + +=item How can I do RPC in Perl? + +=back + +=item AUTHOR AND COPYRIGHT + +=back + +=head2 perlcompile - Introduction to the Perl Compiler-Translator + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Layout + +B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref + +=back + +=item Using The Back Ends + +=over 4 + +=item The Cross Referencing Back End + +i, &, s, r + +=item The Decompiling Back End + +=item The Lint Back End + +=item The Simple C Back End + +=item The Bytecode Back End + +=item The Optimized C Back End + +B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, +B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, +B::Stash, B::Terse, B::Xref + +=back + +=item KNOWN PROBLEMS + +=item AUTHOR + +=back + +=head2 perlembed - how to embed perl in your C program + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item PREAMBLE + +B, B, B, B, B + +=item ROADMAP + +=item Compiling your C program + +=item Adding a Perl interpreter to your C program + +=item Calling a Perl subroutine from your C program + +=item Evaluating a Perl statement from your C program + +=item Performing Perl pattern matches and substitutions from your C program + +=item Fiddling with the Perl stack from your C program + +=item Maintaining a persistent interpreter + +=item Maintaining multiple interpreter instances + +=item Using Perl modules, which themselves use C libraries, from your C +program + +=back + +=item Embedding Perl under Win32 + +=item MORAL + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 perldebguts - Guts of Perl debugging + +=over 4 + +=item DESCRIPTION + +=item Debugger Internals + +=over 4 + +=item Writing Your Own Debugger + +=back + +=item Frame Listing Output Examples + +=item Debugging regular expressions + +=over 4 + +=item Compile-time output + +C I C I, C I C +I, C, C, C +I, C, C, C, C, C, C, +C + +=item Types of nodes + +=item Run-time output + +=back + +=item Debugging Perl memory usage + +=over 4 + +=item Using C<$ENV{PERL_DEBUG_MSTATS}> + +C, Free/Used, C, C, C, C, C + +=item Example of using B<-DL> switch + +C<717>, C<002>, C<054>, C<602>, C<702>, C<704> + +=item B<-DL> details + +C, C, C + +=item Limitations of B<-DL> statistics + +=back + +=item SEE ALSO + +=back + +=head2 perlxstut, perlXStut - Tutorial for writing XSUBs + +=over 4 + +=item DESCRIPTION + +=item SPECIAL NOTES + +=over 4 + +=item make + +=item Version caveat + +=item Dynamic Loading versus Static Loading + +=back + +=item TUTORIAL + +=over 4 + +=item EXAMPLE 1 + +=item EXAMPLE 2 + +=item What has gone on? + +=item Writing good test scripts + +=item EXAMPLE 3 + +=item What's new here? + +=item Input and Output Parameters + +=item The XSUBPP Program + +=item The TYPEMAP file + +=item Warning about Output Arguments + +=item EXAMPLE 4 + +=item What has happened here? + +=item Anatomy of .xs file + +=item Getting the fat out of XSUBs + +=item More about XSUB arguments + +=item The Argument Stack + +=item Extending your Extension + +=item Documenting your Extension + +=item Installing your Extension + +=item EXAMPLE 5 + +=item New Things in this Example + +=item EXAMPLE 6 + +=item New Things in this Example + +=item EXAMPLE 7 (Coming Soon) + +=item EXAMPLE 8 (Coming Soon) + +=item EXAMPLE 9 (Coming Soon) + +=item Troubleshooting these Examples + +=back + +=item See also + +=item Author + +=over 4 + +=item Last Changed + +=back + +=back + +=head2 perlxs - XS language reference manual + +=over 4 + +=item DESCRIPTION + +=over 4 + +=item Introduction + +=item On The Road + +=item The Anatomy of an XSUB + +=item The Argument Stack + +=item The RETVAL Variable + +=item The MODULE Keyword + +=item The PACKAGE Keyword + +=item The PREFIX Keyword + +=item The OUTPUT: Keyword + +=item The NO_OUTPUT Keyword + +=item The CODE: Keyword + +=item The INIT: Keyword + +=item The NO_INIT Keyword + +=item Initializing Function Parameters + +=item Default Parameter Values + +=item The PREINIT: Keyword + +=item The SCOPE: Keyword + +=item The INPUT: Keyword + +=item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords + +=item Variable-length Parameter Lists + +=item The C_ARGS: Keyword + +=item The PPCODE: Keyword + +=item Returning Undef And Empty Lists + +=item The REQUIRE: Keyword + +=item The CLEANUP: Keyword + +=item The POST_CALL: Keyword + +=item The BOOT: Keyword + +=item The VERSIONCHECK: Keyword + +=item The PROTOTYPES: Keyword + +=item The PROTOTYPE: Keyword + +=item The ALIAS: Keyword + +=item The INTERFACE: Keyword -=item Long Doubles +=item The INTERFACE_MACRO: Keyword -=item -Dusemorebits +=item The INCLUDE: Keyword -=item -Duselargefiles +=item The CASE: Keyword -=item installusrbinperl +=item The & Unary Operator -=item SOCKS support +=item Inserting POD, Comments and C Preprocessor Directives -=item C<-A> flag +=item Using XS With C++ -=item Enhanced Installation Directories +=item Interface Strategy -=back +=item Perl Objects And C Structures -=item Core Changes +=item The Typemap -=over +=back -=item Unicode and UTF-8 support +=item EXAMPLES -=item Interpreter threads +=item XS VERSION -=item Lexically scoped warning categories +=item AUTHOR -=item Lvalue subroutines +=back -=item "our" declarations +=head2 perlguts - Introduction to the Perl API -=item Weak references +=over 4 -=item File globbing implemented internally +=item DESCRIPTION -=item Binary numbers supported +=item Variables -=item Some arrows may be omitted in calls through references +=over 4 -=item exists() is supported on subroutine names +=item Datatypes -=item exists() and delete() are supported on array elements +=item What is an "IV"? -=item syswrite() ease-of-use +=item Working with SVs -=item File and directory handles can be autovivified +=item Offsets -=item 64-bit support +=item What's Really Stored in an SV? -=item Large file support +=item Working with AVs -=item Long doubles +=item Working with HVs -=item "more bits" +=item Hash API Extensions -=item Enhanced support for sort() subroutines +=item References -=item Better syntax checks on parenthesized unary operators +=item Blessed References and Class Objects -=item POSIX character class syntax [: :] supported +=item Creating New Variables -=item Improved C operator +=item Reference Counts and Mortality -=item pack() format 'Z' supported +=item Stashes and Globs -=item pack() format modifier '!' supported +=item Double-Typed SVs -=item pack() and unpack() support counted strings +=item Magic Variables -=item Comments in pack() templates +=item Assigning Magic -=item $^X variables may now have names longer than one character +=item Magic Virtual Tables -=item C implicit in subroutine attributes +=item Finding Magic -=item Regular expression improvements +=item Understanding the Magic of Tied Hashes and Arrays -=item Overloading improvements +=item Localizing changes -=item open() with more than two arguments +C, C, C, C, +C, C, C, C, C, C, C, C, C, C, +C, C, C, C, C, C, C, +C -=item Support for interpolating named characters +=back -=item Experimental support for user-hooks in @INC +=item Subroutines -=item C and C may be overridden +=over 4 -=item New variable $^C reflects C<-c> switch +=item XSUBs and the Argument Stack -=item Optional Y2K warnings +=item Calling Perl Routines from within C Programs -=back +=item Memory Allocation -=item Significant bug fixes +=item PerlIO -=over +=item Putting a C value on Perl stack -=item EHANDLEE on empty files +=item Scratchpads -=item C improvements +=item Scratchpads and recursion -=item All compilation errors are true errors +=back -=item Automatic flushing of output buffers +=item Compiled code -=item Better diagnostics on meaningless filehandle operations +=over 4 -=item Where possible, buffered data discarded from duped input filehandle +=item Code tree -=item eof() has the same old magic as <> +=item Examining the tree -=item system(), backticks and pipe open now reflect exec() failure +=item Compile pass 1: check routines -=item Implicitly closed filehandles are safer +=item Compile pass 1a: constant folding -=item C<(\$)> prototype and C<$foo{a}> +=item Compile pass 2: context propagation -=item Pseudo-hashes work better +=item Compile pass 3: peephole optimization -=item C and AUTOLOAD +=back -=item C<-bareword> allowed under C +=item Examining internal data structures with the C functions -=item Boolean assignment operators are legal lvalues +=item How multiple interpreters and concurrency are supported -=item C allowed +=over 4 -=item Failures in DESTROY() +=item Background and PERL_IMPLICIT_CONTEXT -=item Locale bugs fixed +=item How do I use all this in extensions? -=item Memory leaks +=item Future Plans and PERL_IMPLICIT_SYS -=item Spurious subroutine stubs after failed subroutine calls +=back -=item Consistent numeric conversions +=item Internal Functions -=item Taint failures under C<-U> +A, p, d, s, n, r, f, m, o, j, x -=item END blocks and the C<-c> switch +=over 4 -=item Potential to leak DATA filehandles +=item Formatted Printing of IVs, UVs, and NVs -=item Diagnostics follow STDERR +=item Pointer-To-Integer and Integer-To-Pointer -=item Other fixes for better diagnostics +=item Source Documentation =back -=item Performance enhancements +=item Unicode Support -=over +=over 4 -=item Simple sort() using { $a <=> $b } and the like are optimized +=item What B Unicode, anyway? -=item Optimized assignments to lexical variables +=item How can I recognise a UTF8 string? -=item Method lookups optimized +=item How does UTF8 represent Unicode characters? -=item Faster mechanism to invoke XSUBs +=item How does Perl store UTF8 strings? -=item Perl_malloc() improvements +=item How do I convert a string to UTF8? -=item Faster subroutine calls +=item Is there anything else I need to know? =back -=item Platform specific changes - -=over +=item AUTHORS -=item Additional supported platforms +=item SEE ALSO -=item DOS +=back -=item OS/2 +=head2 perlcall - Perl calling conventions from C -=item VMS +=over 4 -=item Win32 +=item DESCRIPTION -=back +An Error Handler, An Event Driven Program -=item New tests +=item THE CALL_ FUNCTIONS -=item Modules and Pragmata +call_sv, call_pv, call_method, call_argv -=over +=item FLAG VALUES -=item Modules +=over 4 -attributes, B, ByteLoader, constant, charnames, Data::Dumper, DB, DB_File, -Devel::DProf, Dumpvalue, Benchmark, Devel::Peek, ExtUtils::MakeMaker, -Fcntl, File::Compare, File::Find, File::Glob, File::Spec, -File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, -Math::Complex, Math::Trig, Pod::Parser, Pod::Text and Pod::Man, SDBM_File, -Time::Local, Win32, DBM Filters +=item G_VOID -=item Pragmata +=item G_SCALAR -=back +=item G_ARRAY -=item Utility Changes +=item G_DISCARD -=over +=item G_NOARGS -=item h2ph +=item G_EVAL -=item perlcc +=item G_KEEPERR -=item h2xs +=item Determining the Context =back -=item Documentation Changes - -perlapi.pod, perlcompile.pod, perlfilter.pod, perlhack.pod, perlintern.pod, -perlopentut.pod, perlreftut.pod, perltootc.pod +=item KNOWN PROBLEMS -=item New or Changed Diagnostics +=item EXAMPLES -"%s" variable %s masks earlier declaration in same %s, "my sub" not yet -implemented, "our" variable %s redeclared, '!' allowed only after types %s, -/ cannot take a count, / must be followed by a, A or Z, / must be followed -by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape -\\%c passed through, /%s/: Unrecognized escape \\%c in character class -passed through, /%s/ should probably be written as "%s", %s() called too -early to check prototype, %s argument is not a HASH or ARRAY element, %s -argument is not a HASH or ARRAY element or slice, %s argument is not a -subroutine name, %s package attribute may clash with future reserved word: -%s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad -evalled substitution pattern, Bad realloc() ignored, Binary number > -0b11111111111111111111111111111111 non-portable, Bit vector size > 32 -non-portable, Buffer overflow in prime_env_iter: %s, Can't check filesystem -of script "%s", Can't declare class for non-scalar %s in "%s", Can't -declare %s in "%s", Can't ignore signal CHLD, forcing to default, Can't -modify non-lvalue subroutine call, Can't read CRTL environ, Can't remove -%s: %s, skipping file, Can't return %s from lvalue subroutine, Can't weaken -a nonreference, Character class [:%s:] unknown, Character class syntax [%s] -belongs inside character classes, Constant is not %s reference, -constant(%s): %%^H is not localized, constant(%s): %s, defined(@array) is -deprecated, defined(%hash) is deprecated, Did not produce a valid header, -Did you mean "local" instead of "our"?, Document contains no data, entering -effective %s failed, false [] range "%s" in regexp, Filehandle %s opened -only for output, flock() on closed filehandle %s, Global symbol "%s" -requires explicit package name, Hexadecimal number > 0xffffffff -non-portable, Ill-formed CRTL environ value "%s", Ill-formed message in -prime_env_iter: |%s|, Illegal binary digit %s, Illegal binary digit %s -ignored, Illegal number of bits in vec, Integer overflow in %s number, -Invalid %s attribute: %s, Invalid %s attributes: %s, invalid [] range "%s" -in regexp, Invalid separator character %s in attribute list, Invalid -separator character %s in subroutine attribute list, leaving effective %s -failed, Lvalue subs returning %s not implemented yet, Method %s not -permitted, Missing %sbrace%s on \N{}, Missing command in piped open, -Missing name in "my sub", No %s specified for -%c, No package name allowed -for variable %s in "our", No space allowed after -%c, no UTC offset -information; assuming local time is UTC, Octal number > 037777777777 -non-portable, panic: del_backref, panic: kid popen errno read, panic: -magic_killbackrefs, Parentheses missing around "%s" list, Possible Y2K bug: -%s, Premature end of script headers, Repeat count in pack overflows, Repeat -count in unpack overflows, realloc() of freed memory ignored, Reference is -already weak, setpgrp can't take arguments, Strange *+?{} on zero-length -expression, switching effective %s is not implemented, This Perl can't -reset CRTL environ elements (%s), This Perl can't set CRTL environ elements -(%s=%s), Unknown open() mode '%s', Unknown process %x sent message to -prime_env_iter: %s, Unrecognized escape \\%c passed through, Unterminated -attribute parameter in attribute list, Unterminated attribute list, -Unterminated attribute parameter in subroutine attribute list, Unterminated -subroutine attribute list, Value of CLI symbol "%s" too long, Version -number must be a constant number +=over 4 -=item Obsolete Diagnostics +=item No Parameters, Nothing returned -Character class syntax [: :] is reserved for future extensions, Ill-formed -logical name |%s| in prime_env_iter, regexp too big, Use of "$$" to -mean "${$}" is deprecated +=item Passing Parameters -=item BUGS +=item Returning a Scalar -=item SEE ALSO +=item Returning a list of values -=item HISTORY +=item Returning a list in a scalar context -=back +=item Returning Data from Perl via the parameter list -=head2 perldata - Perl data types +=item Using G_EVAL -=over +=item Using G_KEEPERR -=item DESCRIPTION +=item Using call_sv -=over +=item Using call_argv -=item Variable names +=item Using call_method -=item Context +=item Using GIMME_V -=item Scalar values +=item Using Perl to dispose of temporaries -=item Scalar value constructors +=item Strategies for storing Callback Context Information -=item List value constructors +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 Slices +=item Alternate Stack Manipulation -=item Typeglobs and Filehandles +=item Creating and calling an anonymous subroutine in C =back =item SEE ALSO -=back - -=head2 perlsyn - Perl syntax +=item AUTHOR -=over +=item DATE -=item DESCRIPTION +=back -=over +=head2 perlutil - utilities packaged with the Perl distribution -=item Declarations +=over 4 -=item Simple statements +=item DESCRIPTION -=item Compound statements +=over 4 -=item Loop Control +=item DOCUMENTATION -=item For Loops +L, L and L, +L and L, L, +L, L, L, +L -=item Foreach Loops +=item CONVERTORS -=item Basic BLOCKs and Switch Statements +L, L, L -=item Goto +=item Development -=item PODs: Embedded Documentation +L, L, L and L, +L, L, L -=item Plain Old Comments (Not!) +=item SEE ALSO =back =back -=head2 perlop - Perl operators and precedence - -=over +=head2 perlfilter - Source Filters -=item SYNOPSIS +=over 4 =item DESCRIPTION -=over +=item CONCEPTS -=item Terms and List Operators (Leftward) +=item USING FILTERS -=item The Arrow Operator +=item WRITING A SOURCE FILTER -=item Auto-increment and Auto-decrement +=item WRITING A SOURCE FILTER IN C -=item Exponentiation +B -=item Symbolic Unary Operators +=item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE -=item Binding Operators +=item WRITING A SOURCE FILTER IN PERL -=item Multiplicative Operators +=item USING CONTEXT: THE DEBUG FILTER -=item Additive Operators +=item CONCLUSION -=item Shift Operators +=item REQUIREMENTS -=item Named Unary Operators +=item AUTHOR -=item Relational Operators +=item Copyrights -=item Equality Operators +=back -=item Bitwise And +=head2 perldbmfilter - Perl DBM Filters -=item Bitwise Or and Exclusive Or +=over 4 -=item C-style Logical And +=item SYNOPSIS -=item C-style Logical Or +=item DESCRIPTION + +B, B, B, +B -=item Range Operators +=over 4 -=item Conditional Operator +=item The Filter -=item Assignment Operators +=item An Example -- the NULL termination problem. -=item Comma Operator +=item Another Example -- Key is a C int. -=item List Operators (Rightward) +=back -=item Logical Not +=item SEE ALSO -=item Logical And +=item AUTHOR -=item Logical or and Exclusive Or +=back -=item C Operators Missing From Perl +=head2 perlapi - autogenerated documentation for the perl public API -unary &, unary *, (TYPE) +=over 4 -=item Quote and Quote-like Operators +=item DESCRIPTION -=item Regexp Quote-Like Operators +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, +bytes_to_utf8, call_argv, call_method, call_pv, call_sv, CLASS, Copy, +croak, CvSTASH, cv_const_sv, dMARK, dORIGMARK, dSP, dXSARGS, dXSI32, ENTER, +eval_pv, eval_sv, EXTEND, fbm_compile, fbm_instr, FREETMPS, get_av, get_cv, +get_hv, get_sv, GIMME, GIMME_V, GvSV, gv_fetchmeth, gv_fetchmethod, +gv_fetchmethod_autoload, gv_stashpv, gv_stashsv, G_ARRAY, G_DISCARD, +G_EVAL, G_NOARGS, G_SCALAR, G_VOID, HEf_SVKEY, 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_iterval, hv_magic, hv_store, hv_store_ent, hv_undef, isALNUM, isALPHA, +isDIGIT, isLOWER, isSPACE, isUPPER, is_utf8_char, is_utf8_string, items, +ix, LEAVE, looks_like_number, MARK, mg_clear, mg_copy, mg_find, mg_free, +mg_get, mg_length, mg_magical, mg_set, Move, New, newAV, Newc, newCONSTSUB, +newHV, newRV_inc, newRV_noinc, NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, +newSVpvn, newSVpvn_share, newSVrv, newSVsv, newSVuv, newXS, newXSproto, +Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc, +perl_construct, perl_destruct, perl_free, perl_parse, perl_run, +PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_modglobal, +PL_na, PL_ofs_sv, PL_rs, PL_sv_no, PL_sv_undef, PL_sv_yes, POPi, POPl, +POPn, POPp, POPs, PUSHi, PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, +Renew, Renewc, require_pv, RETVAL, Safefree, savepv, savepvn, SAVETMPS, SP, +SPAGAIN, ST, strEQ, strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, +StructCopy, SvCUR, SvCUR_set, SvEND, SvGETMAGIC, SvGROW, SvIOK, SvIOKp, +SvIOK_notUV, SvIOK_off, SvIOK_on, SvIOK_only, SvIOK_only_UV, SvIOK_UV, +SvIV, SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, +SvNOK_on, SvNOK_only, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, +SvPOK_on, SvPOK_only, SvPOK_only_UTF8, SvPV, SvPVX, SvPV_force, SvPV_nolen, +SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, +SvSETMAGIC, SvSetSV, SvSetSV_nosteal, SvSTASH, SvTAINT, SvTAINTED, +SvTAINTED_off, SvTAINTED_on, SvTRUE, svtype, SvTYPE, SVt_IV, SVt_NV, +SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SvUOK, SvUPGRADE, SvUTF8, +SvUTF8_off, SvUTF8_on, SvUV, SvUVX, sv_2mortal, sv_bless, sv_catpv, +sv_catpvf, sv_catpvf_mg, sv_catpvn, sv_catpvn_mg, sv_catpv_mg, sv_catsv, +sv_catsv_mg, sv_chop, sv_clear, sv_cmp, sv_cmp_locale, sv_dec, +sv_derived_from, sv_eq, sv_free, sv_gets, sv_grow, sv_inc, sv_insert, +sv_isa, sv_isobject, sv_len, sv_len_utf8, sv_magic, sv_mortalcopy, +sv_newmortal, sv_pvn_force, sv_pvutf8n_force, sv_reftype, sv_replace, +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_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_true, +sv_unmagic, sv_unref, sv_unref_flags, sv_upgrade, sv_usepvn, sv_usepvn_mg, +sv_utf8_downgrade, sv_utf8_encode, sv_utf8_upgrade, sv_vcatpvfn, +sv_vsetpvfn, THIS, toLOWER, toUPPER, utf8_distance, utf8_hop, utf8_length, +utf8_to_bytes, utf8_to_uv, utf8_to_uv_simple, uv_to_utf8, warn, XPUSHi, +XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, +XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, +XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, +XS_VERSION_BOOTCHECK, Zero -?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/cdsUC, -y/SEARCHLIST/REPLACEMENTLIST/cdsUC +=item AUTHORS -=item Gory details of parsing quoted constructs +=item SEE ALSO -Finding the end, Removal of backslashes before delimiters, Interpolation, -C<<<'EOF'>, C, C, C, C, C<''>, C, C<"">, -C<``>, C, C, C<>, C, C, C, -C,, Interpolation of regular expressions, Optimization of -regular expressions +=back -=item I/O Operators +=head2 perlintern - autogenerated documentation of purely B + Perl functions -=item Constant Folding +=over 4 -=item Bitwise String Operators +=item DESCRIPTION -=item Integer Arithmetic +djSP, is_gv_magical, LVRET, start_glob -=item Floating-point Arithmetic +=item AUTHORS -=item Bigger Numbers +=item SEE ALSO =back -=back +=head2 perlapio - perl's IO abstraction interface. -=head2 perlre - Perl regular expressions +=over 4 -=over +=item SYNOPSIS =item DESCRIPTION -i, m, s, x +B, B, B, B, +B, B, +B, B, +B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B, B, +B, B -=over +=over 4 -=item Regular Expressions +=item Co-existence with stdio -cntrl, graph, print, punct, xdigit +B, B, +B, B, B, +B, B, B, +B, B, +B, B, B, +B, B -=item Extended Patterns +=back -C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, -C<(?=pattern)>, C<(?!pattern)>, C<(?E=pattern)>, C<(?, C<(?{ -code })>, C<(?p{ code })>, C<(?Epattern)>, -C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)> +=back -=item Backtracking +=head2 perltodo - Perl TO-DO List -=item Version 8 Regular Expressions +=over 4 -=item Warning on \1 vs $1 +=item DESCRIPTION -=item Repeated patterns matching zero-length substring +=item Infrastructure -=item Combining pieces together +=over 4 -C, C, C, C, C, C, -C, C, C, C, C, C<(?ES)>, C<(?=S)>, C<(?<=S)>, -C<(?!S)>, C<(?, C<(?p{ EXPR })>, -C<(?(condition)yes-pattern|no-pattern)> +=item Mailing list archives -=item Creating custom RE engines +=item Bug tracking system + +=item Regression Tests + +Coverage, Regression, __DIE__, suidperl, The 25% slowdown from perl4 to +perl5 =back -=item BUGS +=item Configure -=item SEE ALSO +=over 4 + +=item Install HTML =back -=head2 perlrun - how to execute the Perl interpreter +=item Perl Language -=over +=over 4 -=item SYNOPSIS +=item 64-bit Perl -=item DESCRIPTION +=item Prototypes -=over +Named prototypes, Indirect objects, Method calls, Context, Scoped subs -=item #! and quoting on non-Unix systems +=back -OS/2, MS-DOS, Win95/NT, Macintosh, VMS +=item Perl Internals -=item Location of Perl +=over 4 -=item Command Switches +=item magic_setisa -B<-0>[I], B<-a>, B<-c>, B<-d>, B<-d:>I, B<-D>I, -B<-D>I, B<-e> I, B<-F>I, B<-h>, -B<-i>[I], B<-I>I, B<-l>[I], -B<-m>[B<->]I, B<-M>[B<->]I, B<-M>[B<->]I<'module ...'>, -B<-[mM]>[B<->]I, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, -B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I, B<-w>, B<-W>, B<-X>, -B<-x> I +=item Garbage Collection -=back +=item Reliable signals -=item ENVIRONMENT +Alternate runops() for signal despatch, Figure out how to die() in delayed +sighandler, Add tests for Thread::Signal, Automatic tests against CPAN -HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL -(specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL +=item Interpolated regex performance bugs -=back +=item Memory leaks from failed eval/regcomp -=head2 perlfunc - Perl builtin functions +=item Make XS easier to use -=over +=item Make embedded Perl easier to use -=item DESCRIPTION +=item Namespace cleanup -=over +=item MULTIPLICITY -=item Perl Functions by Category +=item MacPerl -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 +=back -=item Portability +=item Documentation -=item Alphabetical Listing of Perl Functions +=over 4 -I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept -NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME, -binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller, -chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE, -chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot, -close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue -BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen -HASH,DBNAME,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, log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK -LIST, map EXPR,LIST, mkdir FILENAME,MASK, msgctl ID,CMD,ARG, msgget -KEY,FLAGS, msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, my -EXPR : ATTRIBUTES, next LABEL, next, no Module LIST, oct EXPR, oct, open -FILEHANDLE,MODE,EXPR, open FILEHANDLE,EXPR, open FILEHANDLE, opendir -DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, pack TEMPLATE,LIST, package, -package NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, -pos, print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, -LIST, printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, -qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, -rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read -FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR, -readlink, readpipe EXPR, recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, -ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR, -reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex -STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar -EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select -FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl -ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send -SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority -WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY, -shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, -shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep -EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair -SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST, -sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH, -splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR, -split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR, -srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK, -sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,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, untie VARIABLE, -unshift ARRAY,LIST, use Module LIST, use Module, use Module VERSION LIST, -use VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid -PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y/// +=item A clear division into tutorial and reference -=back +=item Remove the artificial distinction between operators and functions -=back +=item More tutorials -=head2 perlvar - Perl predefined variables +Regular expressions, I/O, pack/unpack, Debugging -=over +=item Include a search tool -=item DESCRIPTION +=item Include a locate tool -=over +=item Separate function manpages by default -=item Predefined Names +=item Users can't find the manpages -$ARG, $_, $EIE, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $', -$LAST_PAREN_MATCH, $+, @+, $MULTILINE_MATCHING, $*, input_line_number -HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE -EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, -$OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR, -$OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR, -$OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $", -$SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE -EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR, -$FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR, -$FORMAT_LINES_LEFT, $-, @-, format_name HANDLE EXPR, $FORMAT_NAME, $~, -format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^, -format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS, -$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, -$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E, -$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, -$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(, -$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $], -$COMPILING, $^C, $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, %^H, -$INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, -0x08, 0x10, 0x20, $^R, $^S, $BASETIME, $^T, $WARNING, $^W, ${^Warnings}, -$EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, @_, %INC, %ENV, $ENV{expr}, -%SIG, $SIG{expr} +=item Install ALL Documentation -=item Error Indicators +=item Outstanding issues to be documented -=item Technical Note on the Syntax of Variable Names +=item Adapt www.linuxhq.com for Perl -=back +=item Replace man with a perl program -=item BUGS +=item Unicode tutorial =back -=head2 perlsub - Perl subroutines - -=over +=item Modules -=item SYNOPSIS +=over 4 -=item DESCRIPTION +=item Update the POSIX extension to conform with the POSIX 1003.1 Edition 2 -=over +=item Module versions -=item Private Variables via my() +=item New modules -=item Persistent Private Variables +=item Profiler -=item Temporary Values via local() +=item Tie Modules -=item Lvalue subroutines +VecArray, SubstrArray, VirtualArray, ShiftSplice -=item Passing Symbol Table Entries (typeglobs) +=item Procedural options -=item When to Still Use local() +=item RPC -1. You need to give a global variable a temporary value, especially $_, 2. -You need to create a local file or directory handle or a local function, 3. -You want to temporarily change just one element of an array or hash +=item y2k localtime/gmtime -=item Pass by Reference +=item Export File::Find variables -=item Prototypes +=item Ioctl -=item Constant Functions +=item Debugger attach/detach -=item Overriding Built-in Functions +=item Regular Expression debugger -=item Autoloading +=item Alternative RE Syntax -=item Subroutine Attributes +=item Bundled modules -=back +=item Expect -=item SEE ALSO +=item GUI::Native -=back +=item Update semibroken auxiliary tools; h2ph, a2p, etc. -=head2 perlmod - Perl modules (packages and symbol tables) +=item pod2html -=over +=item Podchecker -=item DESCRIPTION +=back -=over +=item Tom's Wishes -=item Packages +=over 4 -=item Symbol Tables +=item Webperl -=item Package Constructors and Destructors +=item Mobile agents -=item Perl Classes +=item POSIX on non-POSIX -=item Perl Modules +=item Portable installations =back -=item SEE ALSO +=item Win32 Stuff -=back +=over 4 -=head2 perlmodlib - constructing new Perl modules and finding existing ones +=item Rename new headers to be consistent with the rest -=over +=item Sort out the spawnvp() mess -=item DESCRIPTION +=item Work out DLL versioning -=item THE PERL MODULE LIBRARY +=item Style-check -=over +=back -=item Pragmatic Modules +=item Would be nice to have -attributes, attrs, autouse, base, blib, caller, charnames, constant, -diagnostics, fields, filetest, integer, less, lib, locale, ops, overload, -re, sigtrap, strict, subs, utf8, vars, warnings +C, Contiguous bitfields in pack/unpack, lexperl, Bundled +perl preprocessor, Use posix calls internally where possible, format +BOTTOM, -i rename file only when successfully changed, All ARGV input +should act like <>, report HANDLE [formats], support in perlmain to rerun +debugger, lvalue functions -=item Standard Modules +=item Possible pragmas -AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock, -B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint, -B::Showlex, B::Stackobj, B::Terse, B::Xref, Benchmark, ByteLoader, CGI, -CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, -CGI::Switch, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy, -Class::Struct, Config, Cwd, DB, DB_File, Data::Dumper, Devel::DProf, -Devel::Peek, Devel::SelfStubber, DirHandle, Dumpvalue, DynaLoader, English, -Env, Errno, Exporter, Exporter::Heavy, ExtUtils::Command, ExtUtils::Embed, -ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, -ExtUtils::MM_Cygwin, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, -ExtUtils::MM_Win32, ExtUtils::MakeMaker, 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::Functions, File::Spec::Mac, -File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, -File::stat, FileCache, FileHandle, FindBin, GDBM_File, Getopt::Long, -Getopt::Std, I18N::Collate, IO, IO::Dir, IO::File, IO::Handle, IO::Pipe, -IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, -IO::Socket::UNIX, IPC::Msg, IPC::Open2, IPC::Open3, IPC::Semaphore, -IPC::SysV, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig, -Net::Ping, Net::hostent, Net::netent, Net::protoent, Net::servent, O, -Opcode, POSIX, Pod::Checker, Pod::Html, Pod::InputObjects, Pod::Man, -Pod::Parser, Pod::Select, Pod::Text, Pod::Text::Color, Pod::Usage, -SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, Socket, -Symbol, Sys::Hostname, Sys::Syslog, Term::Cap, Term::Complete, -Term::ReadLine, Test, Test::Harness, Text::Abbrev, Text::ParseWords, -Text::Soundex, Text::Wrap, Tie::Array, Tie::Handle, Tie::Hash, -Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime, -Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent +=over 4 -=item Extension Modules +=item 'less' =back -=item CPAN +=item Optimizations -Language Extensions and Documentation Tools, Development Support, Operating -System Interfaces, Networking, Device Control (modems) and InterProcess -Communication, Data Types and Data Type Utilities, Database Interfaces, -User Interfaces, Interfaces to / Emulations of Other Programming Languages, -File Names, File Systems and File Locking (see also File Handles), String -Processing, Language Text Processing, Parsing, and Searching, Option, -Argument, Parameter, and Configuration File Processing, -Internationalization and Locale, Authentication, Security, and Encryption, -World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities, -Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing, -and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and -exceptions etc), File Handle and Input/Output Stream Utilities, -Miscellaneous Modules, Africa, Asia, Australasia, Central America, Europe, -North America, South America +=over 4 -=item Modules: Creation, Use, and Abuse +=item constant function cache -=over +=item foreach(reverse...) -=item Guidelines for Module Creation +=item Cache eval tree -Do similar modules already exist in some form?, Try to design the new -module to be easy to extend and reuse, Some simple style guidelines, Select -what to export, Select a name for the module, Have you got it right?, -README and other Additional Files, A description of the -module/package/extension etc, A copyright notice - see below, Prerequisites -- what else you may need to have, How to build it - possible changes to -Makefile.PL etc, How to install it, Recent changes in this release, -especially incompatibilities, Changes / enhancements you plan to make in -the future, Adding a Copyright Notice, Give the module a -version/issue/release number, How to release and distribute a module, Take -care when changing a released module +=item rcatmaybe -=item Guidelines for Converting Perl 4 Library Scripts into Modules +=item Shrink opcode tables -There is no requirement to convert anything, Consider the implications, -Make the most of the opportunity, The pl2pm utility will get you started, -Adds the standard Module prologue lines, Converts package specifiers from ' -to ::, Converts die(...) to croak(...), Several other minor changes +=item Cache hash value -=item Guidelines for Reusing Application Code +=item Optimize away @_ where possible -Complete applications rarely belong in the Perl Module Library, Many -applications contain some Perl code that could be reused, Break-out the -reusable code into one or more separate module files, Take the opportunity -to reconsider and redesign the interfaces, In some cases the 'application' -can then be reduced to a small +=item Optimize sort by { $a <=> $b } + +=item Rewrite regexp parser for better integrated optimization =back -=item NOTE +=item Vague possibilities -=back +ref function in list context, make tr/// return histogram in list context?, +Loop control on do{} et al, Explicit switch statements, compile to real +threaded code, structured types, Modifiable $1 et al -=head2 perlmodinstall - Installing CPAN Modules +=item To Do Or Not To Do -=over +=over 4 -=item DESCRIPTION +=item Making my() work on "package" variables -=over +=item "or" testing defined not truth -=item PREAMBLE +=item "dynamic" lexicals -B the file, B the file into a directory, B the -module (sometimes unnecessary), B the module +=item "class"-based, rather than package-based "lexicals" =back -=item HEY +=item Threading -=item AUTHOR +=over 4 -=item COPYRIGHT +=item Modules -=back +=item Testing -=head2 perlfork - Perl's fork() emulation +=item $AUTOLOAD -=over +=item exit/die -=item SYNOPSIS +=item External threads -=item DESCRIPTION +=item Thread::Pool -=over +=item thread-safety -=item Behavior of other Perl features in forked pseudo-processes +=item Per-thread GVs -$$ 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 +=back -=item Resource limits +=item Compiler -=item Killing the parent process +=over 4 -=item Lifetime of the parent process and pseudo-processes +=item Optimization -=item CAVEATS AND LIMITATIONS +=item Byteperl -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 Precompiled modules -=back +=item Executables -=item BUGS +=item Typed lexicals -=item AUTHOR +=item Win32 -=item SEE ALSO +=item END blocks -=back +=item _AUTOLOAD -=head2 perlform - Perl formats +=item comppadlist -=over +=item Cached compilation -=item DESCRIPTION +=back -=over +=item Recently Finished Tasks -=item Format Variables +=over 4 -=back +=item Figure a way out of $^(capital letter) -=item NOTES +=item Filenames + +=item Foreign lines + +=item Namespace cleanup -=over +=item ISA.pm -=item Footers +=item gettimeofday -=item Accessing Formatting Internals +=item autocroak? =back -=item WARNINGS - =back -=head2 perllocale - Perl locale handling (internationalization and -localization) +=head2 perlhack - How to hack at the Perl internals -=over +=over 4 =item DESCRIPTION -=item PREPARING TO USE LOCALES - -=item USING LOCALES +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 there enough +documentation?, Is there another way to do it?, Does it create too much +work?, Patches speak louder than words -=over +=over 4 -=item The use locale pragma +=item Keeping in sync -=item The setlocale function +rsync'ing the source tree, Using rsync over the LAN, Using pushing over the +NFS, rsync'ing the patches, It's easier, It's more recent, It's more +reliable, It's easier, It's a good reference, Finding a start point, +Finding how to fix a bug, Finding the source of misbehaviour -=item Finding locales +=item Submitting patches -=item LOCALE PROBLEMS +L, L and L, L, +F, The perl5-porters FAQ -=item Temporarily fixing locale problems +=item Finding Your Way Around -=item Permanently fixing locale problems +Core modules, Documentation, Configure, Interpreter -=item Permanently fixing your locale configuration +=item Elements of the interpreter -=item Fixing system locale configuration +Startup, Parsing, Optimization, Running -=item The localeconv function +=item Internal Variable Types -=back +=item Op Trees -=item LOCALE CATEGORIES +=item Stacks -=over +Argument stack, Mark stack, Save stack -=item Category LC_COLLATE: Collation +=item Millions of Macros -=item Category LC_CTYPE: Character Types +=item Poking at Perl -=item Category LC_NUMERIC: Numeric Formatting +=item Using a source-level debugger -=item Category LC_MONETARY: Formatting of monetary amounts +run [args], break function_name, break source.c:xxx, step, next, continue, +finish, 'enter', print -=item LC_TIME +=item Dumping Perl Data Structures -=item Other categories +=item Patching =back -=item SECURITY +=item EXTERNAL TOOLS FOR DEBUGGING PERL -B (C, C, C, C and C):, -B (with C<\l>, C<\L>, C<\u> or C<\U>), -B (C):, B (C):, -B (printf() and write()):, B (lc(), lcfirst(), uc(), ucfirst()):, B (localeconv(), strcoll(),strftime(), strxfrm()):, B (isalnum(), isalpha(), isdigit(),isgraph(), -islower(), isprint(), ispunct(), isspace(), isupper(), -isxdigit()): +=over 4 -=item ENVIRONMENT +=item Rational Software's Purify -PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, -LC_NUMERIC, LC_TIME, LANG +=item Purify on Unix -=item NOTES +-Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity -=over +=item Purify on NT -=item Backward compatibility +DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug -=item I18N:Collate obsolete +=item CONCLUSION -=item Sort speed and memory use impacts +I -=item write() and LC_NUMERIC +=back -=item Freely available locale definitions +=item AUTHOR -=item I18n and l10n +=back -=item An imperfect standard +=head2 perlhist - the Perl history records -=back +=over 4 -=item BUGS +=item DESCRIPTION -=over +=item INTRODUCTION -=item Broken systems +=item THE KEEPERS OF THE PUMPKIN + +=over 4 + +=item PUMPKIN? =back -=item SEE ALSO +=item THE RECORDS -=item HISTORY +=over 4 + +=item SELECTED RELEASE SIZES + +=item SELECTED PATCH SIZES =back -=head2 perlref - Perl references and nested data structures +=item THE KEEPERS OF THE RECORDS + +=back -=over +=head2 perldelta - what's new for perl v5.7.0 -=item NOTE +=over 4 =item DESCRIPTION -=over +=item Security Vulnerability Closed -=item Making References +=item Incompatible Changes -=item Using References +=item Core Enhancements -=item Symbolic references +=item Modules and Pragmata -=item Not-so-symbolic references +=over 4 -=item Pseudo-hashes: Using an array as a hash +=item New Modules -=item Function Templates +=item Updated And Improved Modules and Pragmata =back -=item WARNING +=item Utility Changes -=item SEE ALSO +=item New Documentation + +=item Performance Enhancements + +=item Installation and Configuration Improvements + +=over 4 + +=item Generic Improvements =back -=head2 perlreftut - Mark's very short tutorial about references +=item Selected Bug Fixes -=over +=over 4 -=item DESCRIPTION +=item Platform Specific Changes and Fixes -=item Who Needs Complicated Data Structures? +=back -=item The Solution +=item New or Changed Diagnostics -=item Syntax +=item Changed Internals -=over +=item Known Problems -=item Making References +=over 4 -=item Using References +=item Unicode Support Still Far From Perfect -=back +=item EBCDIC Still A Lost Platform -=item An Example +=item Building Extensions Can Fail Because Of Largefiles -=item Arrow Rule +=item ftmp-security tests warn 'system possibly insecure' -=item Solution +=item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX -=item The Rest +=item Long Doubles Still Don't Work In Solaris -=item Summary +=item Linux With Sfio Fails op/misc Test 48 -=item Credits +=item sprintf tests 129 and 130 -=over +=item Storable tests fail in some platforms -=item Distribution Conditions +=item Threads Are Still Experimental + +=item The Compiler Suite Is Still Experimental =back +=item Reporting Bugs + +=item SEE ALSO + +=item HISTORY + =back -=head2 perldsc - Perl Data Structures Cookbook +=head2 perl56delta, perldelta - what's new for perl v5.6.0 -=over +=over 4 =item DESCRIPTION -arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, -more elaborate constructs +=item Core Enhancements -=item REFERENCES +=over 4 -=item COMMON MISTAKES +=item Interpreter cloning, threads, and concurrency -=item CAVEAT ON PRECEDENCE +=item Lexically scoped warning categories -=item WHY YOU SHOULD ALWAYS C +=item Unicode and UTF-8 support -=item DEBUGGING +=item Support for interpolating named characters -=item CODE EXAMPLES +=item "our" declarations -=item ARRAYS OF ARRAYS +=item Support for strings represented as a vector of ordinals -=over +=item Improved Perl version numbering system -=item Declaration of a ARRAY OF ARRAYS +=item New syntax for declaring subroutine attributes -=item Generation of a ARRAY OF ARRAYS +=item File and directory handles can be autovivified -=item Access and Printing of a ARRAY OF ARRAYS +=item open() with more than two arguments -=back +=item 64-bit support -=item HASHES OF ARRAYS +=item Large file support -=over +=item Long doubles -=item Declaration of a HASH OF ARRAYS +=item "more bits" -=item Generation of a HASH OF ARRAYS +=item Enhanced support for sort() subroutines -=item Access and Printing of a HASH OF ARRAYS +=item C allowed -=back +=item File globbing implemented internally -=item ARRAYS OF HASHES +=item Support for CHECK blocks -=over +=item POSIX character class syntax [: :] supported -=item Declaration of a ARRAY OF HASHES +=item Better pseudo-random number generator -=item Generation of a ARRAY OF HASHES +=item Improved C operator -=item Access and Printing of a ARRAY OF HASHES +=item Better worst-case behavior of hashes -=back +=item pack() format 'Z' supported -=item HASHES OF HASHES +=item pack() format modifier '!' supported -=over +=item pack() and unpack() support counted strings -=item Declaration of a HASH OF HASHES +=item Comments in pack() templates -=item Generation of a HASH OF HASHES +=item Weak references -=item Access and Printing of a HASH OF HASHES +=item Binary numbers supported -=back +=item Lvalue subroutines -=item MORE ELABORATE RECORDS +=item Some arrows may be omitted in calls through references -=over +=item Boolean assignment operators are legal lvalues -=item Declaration of MORE ELABORATE RECORDS +=item exists() is supported on subroutine names -=item Declaration of a HASH OF COMPLEX RECORDS +=item exists() and delete() are supported on array elements -=item Generation of a HASH OF COMPLEX RECORDS +=item Pseudo-hashes work better -=back +=item Automatic flushing of output buffers -=item Database Ties +=item Better diagnostics on meaningless filehandle operations -=item SEE ALSO +=item Where possible, buffered data discarded from duped input filehandle -=item AUTHOR +=item eof() has the same old magic as <> -=back +=item binmode() can be used to set :crlf and :raw modes -=head2 perllol - Manipulating Arrays of Arrays in Perl +=item C<-T> filetest recognizes UTF-8 encoded files as "text" -=over +=item system(), backticks and pipe open now reflect exec() failure -=item DESCRIPTION +=item Improved diagnostics -=item Declaration and Access of Arrays of Arrays +=item Diagnostics follow STDERR -=item Growing Your Own +=item More consistent close-on-exec behavior -=item Access and Printing +=item syswrite() ease-of-use -=item Slices +=item Better syntax checks on parenthesized unary operators -=item SEE ALSO +=item Bit operators support full native integer width -=item AUTHOR +=item Improved security features -=back +=item More functional bareword prototype (*) -=head2 perltoot - Tom's object-oriented tutorial for perl +=item C and C may be overridden -=over +=item $^X variables may now have names longer than one character -=item DESCRIPTION +=item New variable $^C reflects C<-c> switch -=item Creating a Class +=item New variable $^V contains Perl version as a string -=over +=item Optional Y2K warnings -=item Object Representation +=item Arrays now always interpolate into double-quoted strings -=item Class Interface +=back -=item Constructors and Instance Methods +=item Modules and Pragmata -=item Planning for the Future: Better Constructors +=over 4 -=item Destructors +=item Modules -=item Other Object Methods +attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, +DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, +Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, +File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, +Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, +podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, +pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, +Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters + +=item Pragmata =back -=item Class Data +=item Utility Changes -=over +=over 4 -=item Accessing Class Data +=item dprofpp -=item Debugging Methods +=item find2perl -=item Class Destructors +=item h2xs -=item Documenting the Interface +=item perlcc + +=item perldoc + +=item The Perl Debugger =back -=item Aggregation +=item Improved Documentation -=item Inheritance +perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, +perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, +perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, +perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod -=over +=item Performance enhancements -=item Overridden Methods +=over 4 -=item Multiple Inheritance +=item Simple sort() using { $a <=> $b } and the like are optimized -=item UNIVERSAL: The Root of All Objects +=item Optimized assignments to lexical variables + +=item Faster subroutine calls + +=item delete(), each(), values() and hash iteration are faster =back -=item Alternate Object Representations +=item Installation and Configuration Improvements -=over +=over 4 -=item Arrays as Objects +=item -Dusethreads means something different -=item Closures as Objects +=item New Configure flags -=back +=item Threadedness and 64-bitness now more daring -=item AUTOLOAD: Proxy Methods +=item Long Doubles -=over +=item -Dusemorebits -=item Autoloaded Data Methods +=item -Duselargefiles -=item Inherited Autoloaded Data Methods +=item installusrbinperl + +=item SOCKS support + +=item C<-A> flag + +=item Enhanced Installation Directories =back -=item Metaclassical Tools +=item Platform specific changes -=over +=over 4 -=item Class::Struct +=item Supported platforms -=item Data Members as Variables +=item DOS -=item NOTES +=item OS390 (OpenEdition MVS) -=item Object Terminology +=item VMS -=back +=item Win32 -=item SEE ALSO +=back -=item AUTHOR AND COPYRIGHT +=item Significant bug fixes -=item COPYRIGHT +=over 4 -=over +=item on empty files -=item Acknowledgments +=item C improvements -=back +=item All compilation errors are true errors -=back +=item Implicitly closed filehandles are safer -=head2 perltootc - Tom's OO Tutorial for Class Data in Perl +=item Behavior of list slices is more consistent -=over +=item C<(\$)> prototype and C<$foo{a}> -=item DESCRIPTION +=item C and AUTOLOAD -=item Class Data as Package Variables +=item C<-bareword> allowed under C -=over +=item Failures in DESTROY() -=item Putting All Your Eggs in One Basket +=item Locale bugs fixed -=item Inheritance Concerns +=item Memory leaks -=item The Eponymous Meta-Object +=item Spurious subroutine stubs after failed subroutine calls -=item Indirect References to Class Data +=item Taint failures under C<-U> -=item Monadic Classes +=item END blocks and the C<-c> switch -=item Translucent Attributes +=item Potential to leak DATA filehandles =back -=item Class Data as Lexical Variables - -=over +=item New or Changed Diagnostics -=item Privacy and Responsibility +"%s" variable %s masks earlier declaration in same %s, "my sub" not yet +implemented, "our" variable %s redeclared, '!' allowed only after types %s, +/ cannot take a count, / must be followed by a, A or Z, / must be followed +by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape +\\%c passed through, /%s/: Unrecognized escape \\%c in character class +passed through, /%s/ should probably be written as "%s", %s() called too +early to check prototype, %s argument is not a HASH or ARRAY element, %s +argument is not a HASH or ARRAY element or slice, %s argument is not a +subroutine name, %s package attribute may clash with future reserved word: +%s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled +substitution pattern, Bad realloc() ignored, Bareword found in conditional, +Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector +size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check +filesystem of script "%s", Can't declare class for non-scalar %s in "%s", +Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default, +Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't +remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't +weaken a nonreference, Character class [:%s:] unknown, Character class +syntax [%s] belongs inside character classes, Constant is not %s reference, +constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated, +defined(%hash) is deprecated, Did not produce a valid header, (Did you mean +"local" instead of "our"?), Document contains no data, entering effective +%s failed, false [] range "%s" in regexp, Filehandle %s opened only for +output, flock() on closed filehandle %s, Global symbol "%s" requires +explicit package name, Hexadecimal number > 0xffffffff non-portable, +Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: +|%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal +number of bits in vec, Integer overflow in %s number, Invalid %s attribute: +%s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid +separator character %s in attribute list, Invalid separator character %s in +subroutine attribute list, leaving effective %s failed, Lvalue subs +returning %s not implemented yet, Method %s not permitted, Missing +%sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub", +No %s specified for -%c, No package name allowed for variable %s in "our", +No space allowed after -%c, no UTC offset information; assuming local time +is UTC, Octal number > 037777777777 non-portable, panic: del_backref, +panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing +around "%s" list, Possible unintended interpolation of %s in string, +Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS" +instead, Premature end of script headers, Repeat count in pack overflows, +Repeat count in unpack overflows, realloc() of freed memory ignored, +Reference is already weak, setpgrp can't take arguments, Strange *+?{} on +zero-length expression, switching effective %s is not implemented, This +Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL +environ elements (%s=%s), Too late to run %s block, Unknown open() mode +'%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized +escape \\%c passed through, Unterminated attribute parameter in attribute +list, Unterminated attribute list, Unterminated attribute parameter in +subroutine attribute list, Unterminated subroutine attribute list, Value of +CLI symbol "%s" too long, Version number must be a constant number -=item File-Scoped Lexicals +=item New tests -=item More Inheritance Concerns +=item Incompatible Changes -=item Locking the Door and Throwing Away the Key +=over 4 -=item Translucency Revisited +=item Perl Source Incompatibilities -=back +CHECK is a new keyword, Treatment of list slices of undef has changed, +Format of $English::PERL_VERSION is different, Literals of the form +C<1.2.3> parse differently, Possibly changed pseudo-random number +generator, Hashing function for hash keys has changed, C fails on +read only values, Close-on-exec bit may be set on pipe and socket handles, +Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), each(), +values() and C<\(%h)>, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, +Text of some diagnostic output has changed, C<%@> has been removed, +Parenthesized not() behaves like a list operator, Semantics of bareword +prototype C<(*)> have changed, Semantics of bit operators may have changed +on 64-bit platforms, More builtins taint their results -=item NOTES +=item C Source Incompatibilities -=item SEE ALSO +C, C, C -=item AUTHOR AND COPYRIGHT +=item Compatible C Source API Changes -=item ACKNOWLEDGEMENTS +C is now C -=item HISTORY +=item Binary Incompatibilities =back -=head2 perlobj - Perl objects +=item Known Problems -=over +=over 4 -=item DESCRIPTION +=item Thread test failures -=over +=item EBCDIC platforms not supported -=item An Object is Simply a Reference +=item In 64-bit HP-UX the lib/io_multihomed test may hang -=item A Class is Simply a Package +=item NEXTSTEP 3.3 POSIX test failure -=item A Method is Simply a Subroutine +=item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with +gcc -=item Method Invocation +=item UNICOS/mk CC failures during Configure run -=item WARNING +=item Arrow operator and arrays -=item Default UNIVERSAL methods +=item Experimental features -isa(CLASS), can(METHOD), VERSION( [NEED] ) +Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The +pseudo-hash data type, The Compiler suite, Internal implementation of file +globbing, The DB module, The regular expression code constructs: -=item Destructors +=back -=item Summary +=item Obsolete Diagnostics -=item Two-Phased Garbage Collection +Character class syntax [: :] is reserved for future extensions, Ill-formed +logical name |%s| in prime_env_iter, In string, @%s now must be written as +\@%s, Probable precedence problem on %s, regexp too big, Use of "$$" +to mean "${$}" is deprecated -=back +=item Reporting Bugs =item SEE ALSO -=back +=item HISTORY -=head2 perltie - how to hide an object class in a simple variable +=back -=over +=head2 perl5005delta, perldelta - what's new for perl5.005 -=item SYNOPSIS +=over 4 =item DESCRIPTION -=over +=item About the new versioning system -=item Tying Scalars +=item Incompatible Changes -TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this +=over 4 -=item Tying Arrays +=item WARNING: This version is not binary compatible with Perl 5.004. -TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value, -DESTROY this +=item Default installation structure has changed -=item Tying Hashes +=item Perl Source Compatibility -USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE -this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY -this, NEXTKEY this, lastkey, DESTROY this +=item C Source Compatibility -=item Tying FileHandles +=item Binary Compatibility -TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this, -LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this +=item Security fixes may affect compatibility -=item The C Gotcha +=item Relaxed new mandatory warnings introduced in 5.004 + +=item Licensing =back -=item SEE ALSO +=item Core Changes -=item BUGS +=over 4 -=item AUTHOR +=item Threads -=back +=item Compiler -=head2 perlbot - Bag'o Object Tricks (the BOT) +=item Regular Expressions -=over +Many new and improved optimizations, Many bug fixes, New regular expression +constructs, New operator for precompiled regular expressions, Other +improvements, Incompatible changes -=item DESCRIPTION +=item Improved malloc() -=item OO SCALING TIPS +=item Quicksort is internally implemented -=item INSTANCE VARIABLES +=item Reliable signals -=item SCALAR INSTANCE VARIABLES +=item Reliable stack pointers -=item INSTANCE VARIABLE INHERITANCE +=item More generous treatment of carriage returns -=item OBJECT RELATIONSHIPS +=item Memory leaks -=item OVERRIDING SUPERCLASS METHODS +=item Better support for multiple interpreters -=item USING RELATIONSHIP WITH SDBM +=item Behavior of local() on array and hash elements is now well-defined -=item THINKING OF CODE REUSE +=item C<%!> is transparently tied to the L module -=item CLASS CONTEXT AND THE OBJECT +=item Pseudo-hashes are supported -=item INHERITING A CONSTRUCTOR +=item C is supported -=item DELEGATION +=item Keywords can be globally overridden -=back +=item C<$^E> is meaningful on Win32 -=head2 perlipc - Perl interprocess communication (signals, fifos, pipes, -safe subprocesses, sockets, and semaphores) +=item C optimized -=over +=item C can be used as implicitly quoted package name -=item DESCRIPTION +=item C tests existence of a package -=item Signals +=item Better locale support -=item Named Pipes +=item Experimental support for 64-bit platforms -=over +=item prototype() returns useful results on builtins -=item WARNING +=item Extended support for exception handling -=back +=item Re-blessing in DESTROY() supported for chaining DESTROY() methods -=item Using open() for IPC +=item All C format conversions are handled internally -=over +=item New C keyword -=item Filehandles +=item New C keyword -=item Background Processes +=item New C operator -=item Complete Dissociation of Child from Parent +=item C is now a reserved word -=item Safe Pipe Opens +=item Tied arrays are now fully supported -=item Bidirectional Communication with Another Process +=item Tied handles support is better -=item Bidirectional Communication with Yourself +=item 4th argument to substr -=back +=item Negative LENGTH argument to splice -=item Sockets: Client/Server Communication +=item Magic lvalues are now more magical -=over +=item <> now reads in records -=item Internet Line Terminators +=back -=item Internet TCP Clients and Servers +=item Supported Platforms -=item Unix-Domain TCP Clients and Servers +=over 4 + +=item New Platforms + +=item Changes in existing support =back -=item TCP Clients with IO::Socket +=item Modules and Pragmata -=over +=over 4 -=item A Simple Client +=item New Modules -C, C, C +B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, +ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, +Thread, attrs, fields, re -=item A Webget Client +=item Changes in existing modules -=item Interactive Client with IO::Socket +Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File, +MakeMaker, CPAN, Cwd, Benchmark =back -=item TCP Servers with IO::Socket +=item Utility Changes -Proto, LocalPort, Listen, Reuse +=item Documentation Changes -=item UDP: Message Passing +=item New Diagnostics + +Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index +while coercing array into hash, Bareword "%s" refers to nonexistent +package, Can't call method "%s" on an undefined value, Can't check +filesystem of script "%s" for nosuid, Can't coerce array into hash, Can't +goto subroutine from an eval-string, Can't localize pseudo-hash element, +Can't use %%! because Errno.pm is not available, Cannot find an opnumber +for "%s", Character class syntax [. .] is reserved for future extensions, +Character class syntax [: :] is reserved for future extensions, Character +class syntax [= =] is reserved for future extensions, %s: Eval-group in +insecure regular expression, %s: Eval-group not allowed, use re 'eval', %s: +Eval-group not allowed at run time, Explicit blessing to '' (assuming +package main), Illegal hex digit ignored, No such array field, No such +field "%s" in variable %s of type %s, Out of memory during ridiculously +large request, Range iterator outside integer range, Recursive inheritance +detected while looking for method '%s' %s, Reference found where even-sized +list expected, Undefined value assigned to typeglob, Use of reserved word +"%s" is deprecated, perl: warning: Setting locale failed -=item SysV IPC +=item Obsolete Diagnostics -=item NOTES +Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open +temporary file, regexp too big -=item BUGS +=item Configuration Changes -=item AUTHOR +=item BUGS =item SEE ALSO -=back +=item HISTORY -=head2 perldbmfilter - Perl DBM Filters +=back -=over +=head2 perl5004delta, perldelta - what's new for perl5.004 -=item SYNOPSIS +=over 4 =item DESCRIPTION -B, B, B, -B +=item Supported Environments -=over +=item Core Changes -=item The Filter +=over 4 -=item An Example -- the NULL termination problem. +=item List assignment to %ENV works -=item Another Example -- Key is a C int. +=item Change to "Can't locate Foo.pm in @INC" error -=back +=item Compilation option: Binary compatibility with 5.003 -=item SEE ALSO +=item $PERL5OPT environment variable -=item AUTHOR +=item Limitations on B<-M>, B<-m>, and B<-T> options -=back +=item More precise warnings -=head2 perldebug - Perl debugging +=item Deprecated: Inherited C for non-methods -=over +=item Previously deprecated %OVERLOAD is no longer usable -=item DESCRIPTION +=item Subroutine arguments created only when they're modified -=item The Perl Debugger +=item Group vector changeable with C<$)> -=over +=item Fixed parsing of $$, &$, etc. -=item Debugger Commands +=item Fixed localization of $, $&, etc. -h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n -[expr], ECRE, c [line|sub], l, l min+incr, l min-max, l line, l -subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], -t, t expr, b [line] [condition], b subname [condition], b postpone subname -[condition], b load filename, b compile subname, d [line], D, a [line] -command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?].., -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, E [ command ], -EE command, E command, EE command, { [ command ], {{ -command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R, -|dbcmd, ||dbcmd, command, m expr, m package +=item No resetting of $. on implicit close -=item Debugger input/output +=item C may return undef -Prompt, Multiline commands, Stack backtrace, Listing, Frame listing +=item C determines value of EXPR in scalar context -=item Debugging compile-time statements +=item Changes to tainting checks -=item Debugger Customization +No glob() or <*>, No spawning if tainted $CDPATH, $ENV, $BASH_ENV, No +spawning if tainted $TERM doesn't look like a terminal name -=item Readline Support +=item New Opcode module and revised Safe module -=item Editor Support for Debugging +=item Embedding improvements -=item The Perl Profiler +=item Internal change: FileHandle class based on IO::* classes -=item Debugger support in perl +=item Internal change: PerlIO abstraction interface -=item Debugger Internals +=item New and changed syntax -=item Other resources +$coderef->(PARAMS) -=item BUGS +=item New and changed builtin constants -=back +__PACKAGE__ -=item Debugging Perl memory usage +=item New and changed builtin variables -=over +$^E, $^H, $^M -=item Using C<$ENV{PERL_DEBUG_MSTATS}> +=item New and changed builtin functions -C, Free/Used, C, C, C, C, C +delete on slices, flock, printf and sprintf, keys as an lvalue, my() in +Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module +VERSION LIST, prototype(FUNCTION), srand, $_ as Default, C does not +reset search position on failure, C ignores whitespace before ?*+{}, +nested C closures work now, formats work right on changing lexicals -=item Example of using B<-DL> switch +=item New builtin methods -C<717>, C<002>, C<054>, C<602>, C<702>, C<704> +isa(CLASS), can(METHOD), VERSION( [NEED] ) -=item B<-DL> details +=item TIEHANDLE now supported -C, C, C +TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this +LIST, READLINE this, GETC this, DESTROY this + +=item Malloc enhancements + +-DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE -=item Limitations of B<-DL> statistic +=item Miscellaneous efficiency enhancements =back -=item Debugging regular expressions +=item Support for More Operating Systems -=over +=over 4 -=item Compile-time output +=item Win32 -C I C I, C I C -I, C, C, C -I, C, C, C, C, C, C, -C +=item Plan 9 -=item Types of nodes +=item QNX -=item Run-time output +=item AmigaOS =back -=back +=item Pragmata -=head2 perldiag - various Perl diagnostics +use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use +constant NAME => VALUE, use locale, use ops, use vmsish -=over +=item Modules -=item DESCRIPTION +=over 4 -=back +=item Required Updates -=head2 perlsec - Perl security +=item Installation directories -=over +=item Module information summary -=item DESCRIPTION +=item Fcntl -=over +=item IO -=item Laundering and Detecting Tainted Data +=item Math::Complex -=item Switches On the "#!" Line +=item Math::Trig -=item Cleaning Up Your Path +=item DB_File -=item Security Bugs +=item Net::Ping -=item Protecting Your Programs +=item Object-oriented overrides for builtin operators =back -=item SEE ALSO +=item Utility Changes + +=over 4 + +=item pod2html + +Sends converted HTML to standard output + +=item xsubpp + +C XSUBs now default to returning nothing =back -=head2 perltrap - Perl traps for the unwary +=item C Language API Changes -=over +C and C, C, Extended API for +manipulating hashes -=item DESCRIPTION +=item Documentation Changes -=over +L, L, L, L, L, +L, L, L + +=item New Diagnostics + +"my" variable %s masks earlier declaration in same scope, %s argument is +not a HASH element or slice, Allocation too large: %lx, Allocation too +large, Applying %s to %s will act on scalar(%s), Attempt to free +nonexistent shared string, Attempt to use reference as lvalue in substr, +Bareword "%s" refers to nonexistent package, Can't redefine active sort +subroutine %s, Can't use bareword ("%s") as %s ref while "strict refs" in +use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant +subroutine %s redefined, Constant subroutine %s undefined, Copy method did +not return a reference, Died, Exiting pseudo-block via %s, Identifier too +long, Illegal character %s (carriage return), Illegal switch in PERL5OPT: +%s, Integer overflow in hex number, Integer overflow in octal number, +internal error: glob failed, Invalid conversion in %s: "%s", Invalid type +in pack: '%s', Invalid type in unpack: '%s', Name "%s::%s" used only once: +possible typo, Null picture in formline, Offset outside string, Out of +memory!, Out of memory during request for %s, panic: frexp, Possible +attempt to put comments in qw() list, Possible attempt to separate words +with commas, Scalar value @%s{%s} better written as $%s{%s}, Stub found +while resolving method `%s' overloading `%s' in %s, Too late for "B<-T>" +option, untie attempted while %d inner references still exist, Unrecognized +character %s, Unsupported function fork, Use of "$$" to mean +"${$}" is deprecated, Value of %s can be "0"; test with defined(), +Variable "%s" may be unavailable, Variable "%s" will not stay shared, +Warning: something's wrong, Ill-formed logical name |%s| in prime_env_iter, +Got an error from DosAllocMem, Malformed PERLLIB_PREFIX, PERL_SH_DIR too +long, Process terminated by SIG%s -=item Awk Traps +=item BUGS -=item C Traps +=item SEE ALSO -=item Sed Traps +=item HISTORY -=item Shell Traps +=back -=item Perl Traps +=head2 perlaix, README.aix - Perl version 5 on IBM Unix (AIX) systems -=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 DESCRIPTION -=item Discontinuance, Deprecation, and BugFix traps +=over 4 -Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, -Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, -Discontinuance, Deprecation, Discontinuance +=item Compiling Perl 5 on AIX -=item Parsing Traps +=item OS level -Parsing, Parsing, Parsing, Parsing +=item Building Dynamic Extensions on AIX -=item Numerical Traps +=item The IBM ANSI C Compiler -Numerical, Numerical, Numerical, Bitwise string ops +=item Using GNU's gcc for building perl + +=item Using Large Files with Perl -=item General data type traps +=item Threaded Perl -(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), -(Constants), (Scalars), (Variable Suicide) +=item 64-bit Perl -=item Context Traps - scalar, list contexts +=item GDBM and Threads -(list context), (scalar context), (scalar context), (list, builtin) +=item NFS filesystems and utime(2) -=item Precedence Traps +=back -Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, -Precedence +=item AUTHOR -=item General Regular Expression Traps using s///, etc. +=item DATE -Regular Expression, Regular Expression, Regular Expression, Regular -Expression, Regular Expression, Regular Expression, Regular Expression, -Regular Expression +=back -=item Subroutine, Signal, Sorting Traps +=head2 perlamiga - Perl under Amiga OS -(Signals), (Sort Subroutine), warn() won't let you specify a filehandle +=over 4 -=item OS Traps +=item SYNOPSIS -(SysV), (SysV) +=back -=item Interpolation Traps +=over 4 -Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, -Interpolation, Interpolation, Interpolation, Interpolation +=item DESCRIPTION -=item DBM Traps +=over 4 -DBM, DBM +=item Prerequisites -=item Unclassified Traps +B, B -C/C trap using returned value, C on empty string with -LIMIT specified +=item Starting Perl programs under AmigaOS -=back +=item Shortcomings of Perl under AmigaOS =back -=head2 perlport - Writing portable Perl +=item INSTALLATION -=over +=item Accessing documentation -=item DESCRIPTION +=over 4 -Not all Perl programs have to be portable, Nearly all of Perl already I -portable +=item Manpages -=item ISSUES +=item B -=over +=item B C files -=item Newlines +=item C docs -=item Numbers endianness and Width +=back -=item Files and Filesystems +=item BUILD -=item System Interaction +=over 4 -=item Interprocess Communication (IPC) +=item Prerequisites -=item External Subroutines (XS) +=item Getting the perl source -=item Standard Modules +=item Making -=item Time and Date +sh Configure -Dprefix=/ade -Dloclibpth=/ade/lib -=item Character sets and character encoding +=item Testing -=item Internationalisation +=item Installing the built perl -=item System Resources +=back -=item Security +=item AUTHORS -=item Style +=item SEE ALSO =back -=item CPAN Testers +=head2 perlcygwin, README.cygwin - Perl for Cygwin -Mailing list: cpan-testers@perl.org, Testing results: -C +=over 4 -=item PLATFORMS +=item SYNOPSIS -=over +=item PREREQUISITES -=item Unix +=over 4 -=item DOS and Derivatives +=item Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it) -The djgpp environment for DOS, C, The EMX -environment for DOS, OS/2, etc. -C,C or -C, Build instructions for Win32, -L, The ActiveState Pages, C, The -Cygwin environment for Win32; -L,C, The U/WIN -environment for Win32,C +=item Cygwin Configuration -=item S +C, I, Permissions -The MacPerl Pages, C, The MacPerl mailing lists, -C, MacPerl Module Porters, -C +=back -=item VMS +=item CONFIGURE -L, L, vmsperl list, C, vmsperl -on the web, C +=over 4 -=item VOS +=item Strip Binaries -L, VOS mailing list, VOS Perl on the web at -C +=item Optional Libraries -=item EBCDIC Platforms +C<-lcrypt>, C<-lgdbm> (C), C<-ldb> (C), +C<-lcygipc> (C) -L, L, L, perl-mvs list, AS/400 -Perl information at Cas well as on CPAN in -the F directory +=item Configure-time Options -=item Acorn RISC OS +C<-Uusedl>, C<-Uusemymalloc>, C<-Dusemultiplicity>, C<-Duseperlio>, +C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles> -=item Other perls +=item Suspicious Warnings -Amiga, L, Atari, L and Guido Flohr's web -pageC, Be OS, L, HP 300 -MPE/iX, L and Mark Bixby's web -pageC, Novell Netware, Plan 9, -L +I, Win9x and C, Compiler/Preprocessor defines =back -=item FUNCTION IMPLEMENTATIONS +=item MAKE -=over +=over 4 -=item Alphabetical Listing of Perl Functions +=item Warnings --I FILEHANDLE, -I EXPR, -I, binmode FILEHANDLE, chmod LIST, chown -LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen -HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR, -flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid, -getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME, -getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber -NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent, -getnetent, getprotoent, getservent, setpwent, setgrent, sethostent -STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, -endpwent, endgrent, endhostent, endnetent, endprotoent, endservent, -getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl -FILEHANDLE,FUNCTION,SCALAR, kill 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, setpgrp PID,PGRP, setpriority -WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl -ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite -ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat -FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, sysopen -FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate -FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST, -wait, waitpid PID,FLAGS +=item ld2 =back -=item CHANGES +=item TEST -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 +=over 4 -=item AUTHORS / CONTRIBUTORS +=item File Permissions -=item VERSION +=item Hard Links + +=item Filetime Granularity + +=item Tainting Checks + +=item /etc/group + +=item Script Portability + +Pathnames, Text/Binary, F<.exe>, chown(), Miscellaneous =back -=head2 perlstyle - Perl style guide +=item INSTALL -=over +=item MANIFEST -=item DESCRIPTION +Documentation, Build, Configure, Make, Install, Tests, Compiled Perl +Source, Compiled Module Source, Perl Modules/Scripts + +=item BUGS + +=item AUTHORS + +=item HISTORY =back -=head2 perlpod - plain old documentation +=head2 perlepoc, README.epoc - Perl for EPOC -=over +=over 4 -=item DESCRIPTION +=item SYNOPSIS -=over +=item INTRODUCTION -=item Verbatim Paragraph +=item INSTALLING PERL ON EPOC -=item Command Paragraph +=item USING PERL ON EPOC -=item Ordinary Block of Text +=over 4 -=item The Intent +=item IO Redirection -=item Embedding Pods in Perl Modules +=item PATH Names -=item Common Pod Pitfalls +=item Editors -=back +=item Features -=item SEE ALSO +=item Restrictions -=item AUTHOR +=item Compiling Perl 5 on the EPOC cross compiling environment =back -=head2 perlbook - Perl book information +=item SUPPORT STATUS -=over +=item AUTHOR -=item DESCRIPTION +=item LAST UPDATE =back -=head2 perlembed - how to embed perl in your C program +=head2 perlhpux, README.hpux - Perl version 5 on Hewlett-Packard Unix +(HP-UX) systems -=over +=over 4 =item DESCRIPTION -=over +=over 4 -=item PREAMBLE +=item Compiling Perl 5 on HP-UX -B, B, B, B, B +=item PA-RISC -=item ROADMAP +=item PA-RISC 1.0 -=item Compiling your C program +=item PA-RISC 1.1 -=item Adding a Perl interpreter to your C program +=item PA-RISC 2.0 -=item Calling a Perl subroutine from your C program +=item Portability Between PA-RISC Versions -=item Evaluating a Perl statement from your C program +=item Building Dynamic Extensions on HP-UX -=item Performing Perl pattern matches and substitutions from your C program +=item The HP ANSI C Compiler -=item Fiddling with the Perl stack from your C program +=item Using Large Files with Perl -=item Maintaining a persistent interpreter +=item Threaded Perl -=item Maintaining multiple interpreter instances +=item 64-bit Perl -=item Using Perl modules, which themselves use C libraries, from your C -program +=item GDBM and Threads -=back +=item NFS filesystems and utime(2) -=item Embedding Perl under Win32 +=item perl -P and // -=item MORAL +=back =item AUTHOR -=item COPYRIGHT +=item DATE =back -=head2 perlapio - perl's IO abstraction interface. - -=over +=head2 perlmachten, README.machten - Perl version 5 on Power MachTen +systems -=item SYNOPSIS +=over 4 =item DESCRIPTION -B, B, B, B, -B, B, -B, B, -B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B, B, -B, B +=over 4 -=over +=item Compiling Perl 5 on MachTen -=item Co-existence with stdio +=item Failures during C -B, B, -B, B, B, -B, B, B, -B, B, -B, B, B, -B, B +op/lexassign.t, pragma/warnings.t -=back +=item Building external modules =back -=head2 perlxs - XS language reference manual +=item AUTHOR -=over +=item DATE -=item DESCRIPTION +=back -=over +=head2 perlmpeix, README.mpeix - Perl/iX for HP e3000 MPE -=item Introduction +=head1 SYNOPSIS -=item On The Road +=over 4 -=item The Anatomy of an XSUB +=item What's New -=item The Argument Stack +=item System Requirements -=item The RETVAL Variable +=item How to Obtain Perl/iX -=item The MODULE Keyword +=item Distribution Contents Highlights -=item The PACKAGE Keyword +README, public_html/feedback.cgi, 4, 6 -=item The PREFIX Keyword +=item Getting Started with Perl/iX -=item The OUTPUT: Keyword +=item MPE/iX Implementation Considerations -=item The CODE: Keyword +=item Change History -=item The INIT: Keyword +=back -=item The NO_INIT Keyword +=head2 perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT. -=item Initializing Function Parameters +=over 4 -=item Default Parameter Values +=item SYNOPSIS -=item The PREINIT: Keyword +=back -=item The SCOPE: Keyword +=over 4 -=item The INPUT: Keyword +=item DESCRIPTION -=item Variable-length Parameter Lists +=over 4 -=item The C_ARGS: Keyword +=item Target -=item The PPCODE: Keyword +=item Other OSes -=item Returning Undef And Empty Lists +=item Prerequisites -=item The REQUIRE: Keyword +EMX, RSX, HPFS, pdksh -=item The CLEANUP: Keyword +=item Starting Perl programs under OS/2 (and DOS and...) -=item The BOOT: Keyword +=item Starting OS/2 (and DOS) programs under Perl -=item The VERSIONCHECK: Keyword +=back -=item The PROTOTYPES: Keyword +=item Frequently asked questions -=item The PROTOTYPE: Keyword +=over 4 -=item The ALIAS: Keyword +=item I cannot run external programs -=item The INTERFACE: Keyword +=item I cannot embed perl into my program, or use F from my +program. -=item The INTERFACE_MACRO: Keyword +Is your program EMX-compiled with C<-Zmt -Zcrtdll>?, Did you use +L? -=item The INCLUDE: Keyword +=item C<``> and pipe-C do not work under DOS. -=item The CASE: Keyword +=item Cannot start C -=item The & Unary Operator +=back -=item Inserting Comments and C Preprocessor Directives +=item INSTALLATION -=item Using XS With C++ +=over 4 -=item Interface Strategy +=item Automatic binary installation -=item Perl Objects And C Structures +C, C, F -=item The Typemap +=item Manual binary installation + +Perl VIO and PM executables (dynamically linked), Perl_ VIO executable +(statically linked), Executables for Perl utilities, Main Perl library, +Additional Perl modules, Tools to compile Perl modules, Manpages for Perl +and utilities, Manpages for Perl modules, Source for Perl documentation, +Perl manual in F<.INF> format, Pdksh + +=item B =back -=item EXAMPLES +=item Accessing documentation -=item XS VERSION +=over 4 -=item AUTHOR +=item OS/2 F<.INF> file + +=item Plain text + +=item Manpages + +=item HTML + +=item GNU C files + +=item F<.PDF> files + +=item C docs =back -=head2 perlxstut, perlXStut - Tutorial for writing XSUBs +=item BUILD -=over +=over 4 -=item DESCRIPTION +=item Prerequisites -=item SPECIAL NOTES +=item Getting perl source -=over +=item Application of the patches -=item make +=item Hand-editing -=item Version caveat +=item Making -=item Dynamic Loading versus Static Loading +=item Testing + +A lot of C, Process terminated by SIGTERM/SIGINT, F, +F, F, F, F + +=item Installing the built perl + +=item C-style build =back -=item TUTORIAL +=item Build FAQ -=over +=over 4 -=item EXAMPLE 1 +=item Some C became C<\> in pdksh. -=item EXAMPLE 2 +=item C<'errno'> - unresolved external -=item What has gone on? +=item Problems with tr or sed -=item Writing good test scripts +=item Some problem (forget which ;-) -=item EXAMPLE 3 +=item Library ... not found -=item What's new here? +=item Segfault in make -=item Input and Output Parameters +=item op/sprintf test failure -=item The XSUBPP Program +=back -=item The TYPEMAP file +=item Specific (mis)features of OS/2 port -=item Warning about Output Arguments +=over 4 -=item EXAMPLE 4 +=item C, C -=item What has happened here? +=item C -=item Anatomy of .xs file +=item C on the first line -=item Getting the fat out of XSUBs +=item Additional modules: -=item More about XSUB arguments +=item Prebuilt methods: -=item The Argument Stack +C, C, C, + C, C, +C, C, +C, C, +C, C, +C -=item Extending your Extension +=item Misfeatures -=item Documenting your Extension +=item Modifications -=item Installing your Extension +C, C, C, C, C, C -=item EXAMPLE 5 +=back -=item New Things in this Example +=item Perl flavors -=item EXAMPLE 6 (Coming Soon) +=over 4 -=item EXAMPLE 7 (Coming Soon) +=item F -=item EXAMPLE 8 (Coming Soon) +=item F -=item EXAMPLE 9 (Coming Soon) +=item F -=item Troubleshooting these Examples +=item F + +=item Why strange names? + +=item Why dynamic linking? + +=item Why chimera build? + +explicit fork(), open FH, "|-", open FH, "-|" =back -=item See also +=item ENVIRONMENT -=item Author +=over 4 -=over +=item C -=item Last Changed +=item C + +=item C -=back +=item C -=back +=item C -=head2 perlguts - Introduction to the Perl API +=item C or C -=over +=back -=item DESCRIPTION +=item Evolution -=item Variables +=over 4 -=over +=item Priorities -=item Datatypes +=item DLL name mangling -=item What is an "IV"? +=item Threading -=item Working with SVs +=item Calls to external programs -=item What's Really Stored in an SV? +=item Memory allocation -=item Working with AVs +=item Threads -=item Working with HVs +C, F -=item Hash API Extensions +=back -=item References +=back -=item Blessed References and Class Objects +=over 4 -=item Creating New Variables +=item AUTHOR -=item Reference Counts and Mortality +=item SEE ALSO -=item Stashes and Globs +=back -=item Double-Typed SVs +=head2 perlos390, README.os390 - building and installing Perl for OS/390. -=item Magic Variables +=over 4 -=item Assigning Magic +=item SYNOPSIS -=item Magic Virtual Tables +=item DESCRIPTION -=item Finding Magic +=over 4 -=item Understanding the Magic of Tied Hashes and Arrays +=item Unpacking -=item Localizing changes +=item Setup and utilities -C, C, C, C, -C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, C, C, -C +=item Configure -=back +=item Build, test, install -=item Subroutines +=item build anomalies -=over +=item testing anomalies -=item XSUBs and the Argument Stack +=item Usage Hints -=item Calling Perl Routines from within C Programs +=item Modules and Extensions -=item Memory Allocation +=back -=item PerlIO +=item AUTHORS -=item Putting a C value on Perl stack +=item SEE ALSO -=item Scratchpads +=over 4 -=item Scratchpads and recursion +=item Mailing list =back -=item Compiled code +=item HISTORY -=over +=back -=item Code tree +=head2 perlposix-bc, README.posix-bc - building and installing Perl for +BS2000 POSIX. -=item Examining the tree +=over 4 -=item Compile pass 1: check routines +=item SYNOPSIS -=item Compile pass 1a: constant folding +=item DESCRIPTION -=item Compile pass 2: context propagation +=over 4 -=item Compile pass 3: peephole optimization +=item gzip -=back +=item bison -=item How multiple interpreters and concurrency are supported +=item Unpacking -=over +=item Compiling -=item Background and PERL_IMPLICIT_CONTEXT +=item Testing -=item How do I use all this in extensions? +=item Install -=item Future Plans and PERL_IMPLICIT_SYS +=item Using Perl =back @@ -3524,233 +5797,210 @@ C =item SEE ALSO +=over 4 + +=item Mailing list + =back -=head2 perlcall - Perl calling conventions from C +=item HISTORY + +=back + +=head2 perlsolaris, README.solaris - Perl version 5 on Solaris systems -=over +=over 4 =item DESCRIPTION -An Error Handler, An Event Driven Program +=over 4 -=item THE PERL_CALL FUNCTIONS +=item Solaris Version Numbers. -perl_call_sv, perl_call_pv, perl_call_method, perl_call_argv +=back -=item FLAG VALUES +=item RESOURCES -=over +Solaris FAQ, Precompiled Binaries, Solaris Documentation -=item G_VOID +=item SETTING UP -=item G_SCALAR +=over 4 -=item G_ARRAY +=item File Extraction Problems. -=item G_DISCARD +=item Compiler and Related Tools. -=item G_NOARGS +=item Environment -=item G_EVAL +=back -=item G_KEEPERR +=item RUN CONFIGURE. -=item Determining the Context +=over 4 -=back +=item 64-bit Issues. -=item KNOWN PROBLEMS +=item Threads. -=item EXAMPLES +=item Malloc Issues. -=over +=back -=item No Parameters, Nothing returned +=item MAKE PROBLEMS. -=item Passing Parameters +Dynamic Loading Problems With GNU as and GNU ld, ld.so.1: ./perl: fatal: +relocation error:, dlopen: stub interception failed, #error "No +DATAMODEL_NATIVE specified", sh: ar: not found -=item Returning a Scalar +=item MAKE TEST -=item Returning a list of values +=over 4 -=item Returning a list in a scalar context +=item op/stat.t test 4 -=item Returning Data from Perl via the parameter list +=back -=item Using G_EVAL +=item PREBUILT BINARIES. -=item Using G_KEEPERR +=item RUNTIME ISSUES. -=item Using perl_call_sv +=over 4 -=item Using perl_call_argv +=item Limits on Numbers of Open Files. -=item Using perl_call_method +=back -=item Using GIMME_V +=item SOLARIS-SPECIFIC MODULES. -=item Using Perl to dispose of temporaries +=item SOLARIS-SPECIFIC PROBLEMS WITH MODULES. -=item Strategies for storing Callback Context Information +=over 4 -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 Proc::ProcessTable -=item Alternate Stack Manipulation +=item BSD::Resource -=item Creating and calling an anonymous subroutine in C +=item Net::SSLeay =back -=item SEE ALSO - =item AUTHOR -=item DATE +=item LAST MODIFIED =back -=head2 perlcompile - Introduction to the Perl Compiler-Translator +=head2 perlvms - VMS-specific documentation for Perl -=over +=over 4 =item DESCRIPTION -=over - -=item Layout +=item Installation -B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref +=item Organization of Perl Images -=back +=over 4 -=item Using The Back Ends +=item Core Images -=over +=item Perl Extensions -=item The Cross Referencing Back End (B::Xref) +=item Installing static extensions -i, &, s, r +=item Installing dynamic extensions -=item The Decompiling Back End +=back -=item The Lint Back End (B::Lint) +=item File specifications -=item The Simple C Back End +=over 4 -=item The Bytecode Back End +=item Syntax -=item The Optimized C Back End +=item Wildcard expansion -B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, -B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, -B::Stash, B::Terse, B::Xref +=item Pipes =back -=item KNOWN PROBLEMS +=item PERL5LIB and PERLLIB -=item AUTHOR +=item Command line + +=over 4 + +=item I/O redirection and backgrounding + +=item Command line switches + +-i, -S, -u =back -=head2 perlapi - autogenerated documentation for the perl public API +=item Perl functions -=over +File tests, backticks, binmode FILEHANDLE, crypt PLAINTEXT, USER, dump, +exec LIST, fork, getpwent, getpwnam, getpwuid, gmtime, kill, qx//, select +(system call), stat EXPR, system LIST, time, times, unlink LIST, utime +LIST, waitpid PID,FLAGS -=item DESCRIPTION +=item Perl variables -AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop, av_push, -av_shift, av_store, av_undef, av_unshift, call_argv, call_method, call_pv, -call_sv, CLASS, Copy, croak, CvSTASH, dMARK, dORIGMARK, dSP, dXSARGS, -dXSI32, ENTER, eval_pv, eval_sv, EXTEND, fbm_compile, fbm_instr, FREETMPS, -get_av, get_cv, get_hv, get_sv, GIMME, GIMME_V, GvSV, gv_fetchmeth, -gv_fetchmethod, gv_fetchmethod_autoload, gv_stashpv, gv_stashsv, G_ARRAY, -G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR, G_VOID, HEf_SVKEY, 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_iterval, hv_magic, hv_store, hv_store_ent, hv_undef, isALNUM, isALPHA, -isDIGIT, isLOWER, isSPACE, isUPPER, items, ix, LEAVE, looks_like_number, -MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_length, mg_magical, -mg_set, Move, New, newAV, Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, -NEWSV, newSViv, newSVnv, newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, -newXS, newXSproto, Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, -perl_alloc, perl_construct, perl_destruct, perl_free, perl_parse, perl_run, -PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_modglobal, PL_na, -PL_sv_no, PL_sv_undef, PL_sv_yes, POPi, POPl, POPn, POPp, POPs, PUSHi, -PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, require_pv, -RETVAL, Safefree, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE, -strGT, strLE, strLT, strNE, strnEQ, strnNE, StructCopy, SvCUR, SvCUR_set, -SvEND, SvGETMAGIC, SvGROW, SvIOK, SvIOKp, SvIOK_off, SvIOK_on, SvIOK_only, -SvIV, SvIVX, SvLEN, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp, SvNOK_off, -SvNOK_on, SvNOK_only, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp, SvPOK_off, -SvPOK_on, SvPOK_only, SvPV, SvPVX, SvPV_force, SvPV_nolen, SvREFCNT, -SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSETMAGIC, -SvSetSV, SvSetSV_nosteal, SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, -SvTAINTED_on, SvTRUE, SvTYPE, svtype, SVt_IV, SVt_NV, SVt_PV, SVt_PVAV, -SVt_PVCV, SVt_PVHV, SVt_PVMG, SvUPGRADE, SvUV, SvUVX, sv_2mortal, sv_bless, -sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn, sv_catpvn_mg, sv_catpv_mg, -sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, sv_dec, sv_derived_from, sv_eq, -sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject, sv_len, sv_magic, -sv_mortalcopy, sv_newmortal, 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_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg, sv_unref, -sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_vcatpvfn, sv_vsetpvfn, THIS, -toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, -XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV, -XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNO, XST_mNV, -XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero +%ENV, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $^S, $| -=item AUTHORS +=item Standard modules with VMS-specific differences -=item SEE ALSO +=over 4 + +=item SDBM_File =back -=head2 perlintern - autogenerated documentation of purely B - Perl functions +=item Revision date -=over +=item AUTHOR -=item DESCRIPTION +=back -=item AUTHORS +=head2 perlvos, README.vos - Perl for Stratus VOS -=item SEE ALSO +=over 4 -=back +=item SYNOPSIS -=head2 perlhist - the Perl history records +=over 4 -=over +=item Stratus POSIX Support -=item DESCRIPTION +=back -=item INTRODUCTION +=item INSTALLING PERL IN VOS -=item THE KEEPERS OF THE PUMPKIN +=over 4 -=over +=item Compiling Perl 5 on VOS -=item PUMPKIN? +=item Installing Perl 5 on VOS =back -=item THE RECORDS +=item USING PERL IN VOS -=over +=over 4 -=item SELECTED RELEASE SIZES +=item Unimplemented Features -=item SELECTED PATCH SIZES +=item Restrictions =back -=item THE KEEPERS OF THE RECORDS +=item SUPPORT STATUS + +=item AUTHOR + +=item LAST UPDATE =back @@ -3758,7 +6008,7 @@ XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero =head2 attrs - set/get attributes of a subroutine (deprecated) -=over +=over 4 =item SYNOPSIS @@ -3770,7 +6020,7 @@ method, locked =head2 re - Perl pragma to alter regular expression behaviour -=over +=over 4 =item SYNOPSIS @@ -3780,17 +6030,17 @@ method, locked =head2 attributes - get/set subroutine or variable attributes -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Built-in Attributes -locked, method +locked, method, lvalue =item Available Subroutines @@ -3806,7 +6056,7 @@ FETCH_I_ATTRIBUTES, MODIFY_I_ATTRIBUTES =item EXPORTS -=over +=over 4 =item Default exports @@ -3824,7 +6074,7 @@ FETCH_I_ATTRIBUTES, MODIFY_I_ATTRIBUTES =head2 attrs - set/get attributes of a subroutine (deprecated) -=over +=over 4 =item SYNOPSIS @@ -3836,7 +6086,7 @@ method, locked =head2 autouse - postpone load of modules until a function is used -=over +=over 4 =item SYNOPSIS @@ -3852,7 +6102,7 @@ method, locked =head2 base - Establish IS-A relationship with base class at compile time -=over +=over 4 =item SYNOPSIS @@ -3866,7 +6116,7 @@ method, locked =head2 blib - Use MakeMaker's uninstalled version of a package -=over +=over 4 =item SYNOPSIS @@ -3878,33 +6128,23 @@ method, locked =back -=head2 byte - Perl pragma to turn force treating strings as bytes not -UNICODE - -=over - -=item SYNOPSIS - -=item DESCRIPTION - -=back - -=head2 caller - inherit pragmatic attributes from the context of the caller +=head2 bytes - Perl pragma to force byte semantics rather than character +semantics -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -encoding +=item SEE ALSO =back =head2 charnames - define character names for C<\N{named}> string literal escape. -=over +=over 4 =item SYNOPSIS @@ -3918,7 +6158,7 @@ escape. =head2 constant - Perl pragma to declare constants -=over +=over 4 =item SYNOPSIS @@ -3939,13 +6179,13 @@ escape. =head2 diagnostics - Perl compiler pragma to force verbose warning diagnostics -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item The C Pragma @@ -3965,32 +6205,27 @@ diagnostics =head2 fields - compile-time class fields -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +new, phash + =item SEE ALSO =back =head2 filetest - Perl pragma to control the filetest permission operators -=over +=over 4 =item SYNOPSIS - $can_perhaps_read = -r "file"; # use the mode bits - { - use filetest 'access'; # intuit harder - $can_really_read = -r "file"; - } - $can_perhaps_read = -r "file"; # use the mode bits again - =item DESCRIPTION -=over +=over 4 =item subpragma access @@ -4001,7 +6236,7 @@ diagnostics =head2 integer - Perl pragma to compute arithmetic in integer instead of double -=over +=over 4 =item SYNOPSIS @@ -4011,7 +6246,7 @@ double =head2 less - perl pragma to request less of something from the compiler -=over +=over 4 =item SYNOPSIS @@ -4021,13 +6256,13 @@ double =head2 lib - manipulate @INC at compile time -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Adding directories to @INC @@ -4046,17 +6281,31 @@ double =head2 locale - Perl pragma to use and avoid POSIX locales for built-in operations -=over +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=head2 open - perl pragma to set default disciplines for input and output + +=over 4 =item SYNOPSIS =item DESCRIPTION +=item UNIMPLEMENTED FUNCTIONALITY + +=item SEE ALSO + =back =head2 ops - Perl pragma to restrict unsafe operations when compiling -=over +=over 4 =item SYNOPSIS @@ -4068,13 +6317,13 @@ operations =head2 overload - Package for overloading perl operations -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Declaration of overloaded functions @@ -4103,11 +6352,11 @@ is inherited by derived classes =item SPECIAL SYMBOLS FOR C -=over +=over 4 =item Last Resort -=item Fallback +=item Fallback C, TRUE, defined, but FALSE @@ -4142,7 +6391,7 @@ integer, float, binary, q, qr =item Cookbook -=over +=over 4 =item Two-face scalars @@ -4158,13 +6407,36 @@ integer, float, binary, q, qr =item DIAGNOSTICS +Odd number of arguments for overload::constant, `%s' is not an overloadable +type, `%s' is not a code reference + =item BUGS =back +=head2 perlio - perl pragma to configure C level IO + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +unix, stdio, perlio + +=over 4 + +=item Defaults and how to override them + +=back + +=item AUTHOR + +=back + =head2 re - Perl pragma to alter regular expression behaviour -=over +=over 4 =item SYNOPSIS @@ -4174,7 +6446,7 @@ integer, float, binary, q, qr =head2 sigtrap - Perl pragma to enable simple signal handling -=over +=over 4 =item SYNOPSIS @@ -4182,7 +6454,7 @@ integer, float, binary, q, qr =item OPTIONS -=over +=over 4 =item SIGNAL HANDLERS @@ -4204,7 +6476,7 @@ B, B, I, I =head2 strict - Perl pragma to restrict unsafe constructs -=over +=over 4 =item SYNOPSIS @@ -4216,7 +6488,7 @@ C, C, C =head2 subs - Perl pragma to predeclare sub names -=over +=over 4 =item SYNOPSIS @@ -4224,21 +6496,34 @@ C, C, C =back -=head2 utf8 - Perl pragma to turn on UTF-8 and Unicode support +=head2 unicode::distinct - Perl pragma to strictly distinguish UTF8 data +and non-UTF data. -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=item CAVEATS +=item SEE ALSO + +=back + +=head2 utf8 - Perl pragma to enable/disable UTF-8 in source code + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item SEE ALSO =back =head2 vars - Perl pragma to predeclare global variable names (obsolete) -=over +=over 4 =item SYNOPSIS @@ -4248,25 +6533,33 @@ C, C, C =head2 warnings - Perl pragma to control optional warnings -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +use warnings::register, warnings::enabled(), warnings::enabled($category), +warnings::enabled($object), warnings::warn($message), +warnings::warn($category, $message), warnings::warn($object, $message), +warnings::warnif($message), warnings::warnif($category, $message), +warnings::warnif($object, $message) + =back +=head2 warnings::register - warnings import function + =head1 MODULE DOCUMENTATION =head2 AnyDBM_File - provide framework for multiple DBMs -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item DBM Comparisons @@ -4280,13 +6573,13 @@ C, C, C =head2 AutoLoader - load subroutines only on demand -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Subroutine Stubs @@ -4296,6 +6589,8 @@ C, C, C =item Package Lexicals +=item Not Using AutoLoader + =item B vs. B =back @@ -4308,7 +6603,7 @@ C, C, C =head2 AutoSplit - split a package for autoloading -=over +=over 4 =item SYNOPSIS @@ -4316,7 +6611,7 @@ C, C, C $keep, $check, $modtime -=over +=over 4 =item Multiple packages @@ -4328,7 +6623,7 @@ $keep, $check, $modtime =head2 B - The Perl Compiler -=over +=over 4 =item SYNOPSIS @@ -4336,7 +6631,7 @@ $keep, $check, $modtime =item OVERVIEW OF CLASSES -=over +=over 4 =item SV-RELATED CLASSES @@ -4378,8 +6673,8 @@ USEFUL, PREVIOUS, RARE, TABLE =item B::GV METHODS -NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILE, FILEGV, -GvREFCNT, FLAGS +is_empty, NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILE, +FILEGV, GvREFCNT, FLAGS =item B::IO METHODS @@ -4393,7 +6688,7 @@ FILL, MAX, OFF, ARRAY, AvFLAGS =item B::CV METHODS STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY, -CvFLAGS +CvFLAGS, const_sv =item B::HV METHODS @@ -4461,7 +6756,7 @@ hash(STR), cast_I32(I), minus_c, cstring(STR), class(OBJ), threadsv_names =head2 B::Asmdata - Autogenerated data about Perl ops, used to generate bytecode -=over +=over 4 =item SYNOPSIS @@ -4473,19 +6768,19 @@ bytecode =head2 B::Assembler - Assemble Perl bytecode -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=item AUTHOR +=item AUTHORS =back =head2 B::Bblock - Walk basic blocks -=over +=over 4 =item SYNOPSIS @@ -4497,7 +6792,7 @@ bytecode =head2 B::Bytecode - Perl compiler's bytecode backend -=over +=over 4 =item SYNOPSIS @@ -4506,20 +6801,21 @@ bytecode =item OPTIONS B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>, -B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> +B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>, +B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> Stores package in the +output. =back =item EXAMPLES =item BUGS -=item AUTHOR +=item AUTHORS =back =head2 B::C - Perl compiler's C backend -=over +=over 4 =item SYNOPSIS @@ -4528,19 +6824,55 @@ B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> =item OPTIONS B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>, -B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On> +B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>, B<-llimit> + +=item EXAMPLES + +=item BUGS + +=item AUTHOR + +=back + +=head2 B::CC - Perl compiler's optimized C translation backend + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item OPTIONS + +B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>, +B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>, +B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> + +=item EXAMPLES + +=item BUGS + +=item DIFFERENCES + +=over 4 + +=item Loops + +=item Context of ".." + +=item Arithmetic -=item EXAMPLES +=item Deprecated features -=item BUGS +=back =item AUTHOR =back -=head2 B::CC - Perl compiler's optimized C translation backend +=head2 B::Concise - Walk Perl syntax tree, printing concise info about ops -=over +=over 4 =item SYNOPSIS @@ -4548,25 +6880,28 @@ B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On> =item OPTIONS -B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>, -B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>, -B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> - -=item EXAMPLES - -=item BUGS +B<-basic>, B<-exec>, B<-tree>, B<-compact>, B<-loose>, B<-vt>, B<-ascii>, +B<-main>, B<-base>I, B<-bigendian>, B<-littleendian>, B<-concise>, +B<-terse>, B<-linenoise>, B<-debug>, B<-env> -=item DIFFERENCES +=item FORMATTING SPECIFICATIONS -=over +B<(x(>IB<;>IB<)x)>, B<(*(>IB<)*)>, +B<(*(>IB<;>IB<)*)>, B<(?(>IB<#>IIB<)?)>, +B<#>I, B<#>II, B<~>, B<#addr>, B<#arg>, B<#class>, +B<#classym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>, +B<#flags>, B<#flagval>, B<#hyphenseq>, B<#label>, B<#lastaddr>, B<#name>, +B<#NAME>, B<#next>, B<#nextaddr>, B<#noise>, B<#private>, B<#privval>, +B<#seq>, B<#seqnum>, B<#sibaddr>, B<#svaddr>, B<#svclass>, B<#svval>, +B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum> -=item Loops +=item ABBREVIATIONS -=item Context of ".." +=over 4 -=item Arithmetic +=item OP flags abbreviations -=item Deprecated features +=item OP class abbreviations =back @@ -4576,7 +6911,7 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops -=over +=over 4 =item SYNOPSIS @@ -4588,7 +6923,7 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =head2 B::Deparse - Perl compiler backend to produce perl code -=over +=over 4 =item SYNOPSIS @@ -4597,11 +6932,11 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On> =item OPTIONS B<-l>, B<-p>, B<-q>, B<-u>I, B<-s>I, B, BI, -B, BIB<.> +B, BIB<.>, B<-x>I =item USING B::Deparse AS A MODULE -=over +=over 4 =item Synopsis @@ -4621,7 +6956,7 @@ B, BIB<.> =head2 B::Disassembler - Disassemble Perl bytecode -=over +=over 4 =item SYNOPSIS @@ -4633,7 +6968,7 @@ B, BIB<.> =head2 B::Lint - Perl lint -=over +=over 4 =item SYNOPSIS @@ -4656,7 +6991,7 @@ B<-u Package> =head2 B::O, O - Generic interface to Perl Compiler backends -=over +=over 4 =item SYNOPSIS @@ -4672,7 +7007,7 @@ B<-u Package> =head2 B::Showlex - Show lexical variables used in functions or files -=over +=over 4 =item SYNOPSIS @@ -4684,7 +7019,7 @@ B<-u Package> =head2 B::Stackobj - Helper module for CC backend -=over +=over 4 =item SYNOPSIS @@ -4694,9 +7029,11 @@ B<-u Package> =back +=head2 B::Stash - show what stashes are loaded + =head2 B::Terse - Walk Perl syntax tree, printing terse info about ops -=over +=over 4 =item SYNOPSIS @@ -4708,7 +7045,7 @@ B<-u Package> =head2 B::Xref - Generates cross reference reports for Perl programs -=over +=over 4 =item SYNOPSIS @@ -4726,7 +7063,7 @@ C<-oFILENAME>, C<-r>, C<-D[tO]> =head2 Bblock, B::Bblock - Walk basic blocks -=over +=over 4 =item SYNOPSIS @@ -4738,13 +7075,13 @@ C<-oFILENAME>, C<-r>, C<-D[tO]> =head2 Benchmark - benchmark running times of Perl code -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Methods @@ -4782,7 +7119,7 @@ STYLE ] ), cmpthese ( RESULTSHASHREF ), countit(TIME, CODE), disablecache ( =head2 ByteLoader - load byte compiled perl code -=over +=over 4 =item SYNOPSIS @@ -4796,7 +7133,7 @@ STYLE ] ), cmpthese ( RESULTSHASHREF ), countit(TIME, CODE), disablecache ( =head2 Bytecode, B::Bytecode - Perl compiler's bytecode backend -=over +=over 4 =item SYNOPSIS @@ -4805,20 +7142,21 @@ STYLE ] ), cmpthese ( RESULTSHASHREF ), countit(TIME, CODE), disablecache ( =item OPTIONS B<-ofilename>, B<-afilename>, B<-->, B<-f>, B<-fcompress-nullops>, -B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>, -B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> +B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-On>, B<-D>, B<-Do>, +B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-upackage> Stores package in the +output. =back =item EXAMPLES =item BUGS -=item AUTHOR +=item AUTHORS =back =head2 CGI - Simple Common Gateway Interface Class -=over +=over 4 =item SYNOPSIS @@ -4826,16 +7164,12 @@ B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m> =item DESCRIPTION -=over +=over 4 =item PROGRAMMING STYLE =item CALLING CGI.PM ROUTINES -1. Use another name for the argument, if one is available. Forexample, --value is an alias for -values, 2. Change the capitalization, e.g. -Values, -3. Put quotes around the argument name, e.g. '-values' - =item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE): =item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE @@ -4871,8 +7205,8 @@ B<:standard>, B<:all> =item PRAGMAS --any, -compile, -nph, -newstyle_urls, -autoload, -no_debug, --private_tempfiles +-any, -compile, -nosticky, -no_xhtml, -nph, -newstyle_urls, -oldstyle_urls, +-autoload, -no_debug, -debug, -private_tempfiles =item SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS @@ -4884,7 +7218,7 @@ a tag) =item GENERATING DYNAMIC DOCUMENTS -=over +=over 4 =item CREATING A STANDARD HTTP HEADER: @@ -4901,7 +7235,7 @@ B, 4, 5, 6.. =item OBTAINING THE SCRIPT'S URL B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> -(B<-query_string>) +(B<-query_string>), B<-base> =item MIXING POST AND URL PARAMETERS @@ -4909,7 +7243,7 @@ B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> =item CREATING STANDARD HTML ELEMENTS: -=over +=over 4 =item PROVIDING ARGUMENTS TO HTML SHORTCUTS @@ -4919,13 +7253,18 @@ B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query> =item NON-STANDARD HTML SHORTCUTS +=item AUTOESCAPING HTML + +$escaped_string = escapeHTML("unescaped string");, $charset = +charset([$charset]);, $flag = autoEscape([$flag]); + =item PRETTY-PRINTING HTML =back =item CREATING FILL-OUT FORMS: -=over +=over 4 =item CREATING AN ISINDEX TAG @@ -4977,9 +7316,7 @@ B =item CREATING A CLICKABLE IMAGE BUTTON -B, 3.The third option (-align, optional) is an alignment type, -and may be -TOP, BOTTOM or MIDDLE +B =item CREATING A JAVASCRIPT ACTION BUTTON @@ -5000,7 +7337,7 @@ the
tag =item DEBUGGING -=over +=over 4 =item DUMPING OUT ALL THE NAME/VALUE PAIRS @@ -5009,21 +7346,19 @@ the tag =item FETCHING ENVIRONMENT VARIABLES B, B, B, B, -B, B, BReturn the script -name as a partial URL, for self-refering -scripts, B, B, B, B, B, B, B, +B, B, B, B, +B, B, B, B, +B, B, B, B, B, B, B =item USING NPH SCRIPTS In the B statement, By calling the B method:, By using B<-nph> -parameters in the B and B statements: +parameters =item Server Push -multipart_init() - multipart_init(-boundary=>$boundary);, multipart_start(), multipart_end() +multipart_init(), multipart_start(), multipart_end() =item Avoiding Denial of Service Attacks @@ -5059,7 +7394,7 @@ MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), =head2 CGI::Apache - Backward compatibility module for CGI.pm -=over +=over 4 =item SYNOPSIS @@ -5078,7 +7413,7 @@ MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), =head2 CGI::Carp, B - CGI routines for writing to the HTTPD (or other) error log -=over +=over 4 =item SYNOPSIS @@ -5088,12 +7423,14 @@ other) error log =item MAKING PERL ERRORS APPEAR IN THE BROWSER WINDOW -=over +=over 4 =item Changing the default message =back +=item MAKING WARNINGS APPEAR AS HTML COMMENTS + =item CHANGE LOG =item AUTHORS @@ -5104,7 +7441,7 @@ other) error log =head2 CGI::Cookie - Interface to Netscape Cookies -=over +=over 4 =item SYNOPSIS @@ -5114,7 +7451,7 @@ other) error log B<1. expiration date>, B<2. domain>, B<3. path>, B<4. secure flag> -=over +=over 4 =item Creating New Cookies @@ -5138,7 +7475,7 @@ B, B, B, B, B =head2 CGI::Fast - CGI Interface for Fast CGI -=over +=over 4 =item SYNOPSIS @@ -5164,13 +7501,13 @@ B, B, B, B, B =head2 CGI::Pretty - module to produce nicely formatted HTML code -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Tags that won't be formatted @@ -5188,7 +7525,7 @@ B, B, B, B, B =head2 CGI::Push - Simple Interface to Server Push -=over +=over 4 =item SYNOPSIS @@ -5198,7 +7535,7 @@ B, B, B, B, B -next_page, -last_page, -type, -delay, -cookie, -target, -expires -=over +=over 4 =item Heterogeneous Pages @@ -5218,7 +7555,7 @@ B, B, B, B, B =head2 CGI::Switch - Backward compatibility module for defunct CGI::Switch -=over +=over 4 =item SYNOPSIS @@ -5236,18 +7573,18 @@ B, B, B, B, B =head2 CPAN - query, download and build perl modules from CPAN sites -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Interactive Mode Searching for authors, bundles, distribution files and modules, make, test, -install, clean modules or distributions, readme, look module or +install, clean modules or distributions, get, readme, look module or distribution, Signals =item CPAN::Shell @@ -5258,11 +7595,38 @@ distribution, Signals =item The four C Classes: Author, Bundle, Module, Distribution -=item ProgrammerE<39>s interface - -expand($type,@things), Programming Examples - -=item Methods in the four Classes +=item Programmer's interface + +expand($type,@things), expandany(@things), Programming Examples + +=item Methods in the other Classes + +CPAN::Author::as_glimpse(), CPAN::Author::as_string(), +CPAN::Author::email(), CPAN::Author::fullname(), CPAN::Author::name(), +CPAN::Bundle::as_glimpse(), CPAN::Bundle::as_string(), +CPAN::Bundle::clean(), CPAN::Bundle::contains(), +CPAN::Bundle::force($method,@args), CPAN::Bundle::get(), +CPAN::Bundle::inst_file(), CPAN::Bundle::inst_version(), +CPAN::Bundle::uptodate(), CPAN::Bundle::install(), CPAN::Bundle::make(), +CPAN::Bundle::readme(), CPAN::Bundle::test(), +CPAN::Distribution::as_glimpse(), CPAN::Distribution::as_string(), +CPAN::Distribution::clean(), CPAN::Distribution::containsmods(), +CPAN::Distribution::cvs_import(), CPAN::Distribution::dir(), +CPAN::Distribution::force($method,@args), CPAN::Distribution::get(), +CPAN::Distribution::install(), CPAN::Distribution::isa_perl(), +CPAN::Distribution::look(), CPAN::Distribution::make(), +CPAN::Distribution::prereq_pm(), CPAN::Distribution::readme(), +CPAN::Distribution::test(), CPAN::Distribution::uptodate(), +CPAN::Index::force_reload(), CPAN::Index::reload(), CPAN::InfoObj::dump(), +CPAN::Module::as_glimpse(), CPAN::Module::as_string(), +CPAN::Module::clean(), CPAN::Module::cpan_file(), +CPAN::Module::cpan_version(), CPAN::Module::cvs_import(), +CPAN::Module::description(), CPAN::Module::force($method,@args), +CPAN::Module::get(), CPAN::Module::inst_file(), +CPAN::Module::inst_version(), CPAN::Module::install(), +CPAN::Module::look(), CPAN::Module::make(), +CPAN::Module::manpage_headline(), CPAN::Module::readme(), +CPAN::Module::test(), CPAN::Module::uptodate(), CPAN::Module::userid() =item Cache Manager @@ -5280,12 +7644,12 @@ expand($type,@things), Programming Examples =item CONFIGURATION -o conf Escalar optionE, o conf Escalar optionE -EvalueE, o conf Elist optionE, o conf Elist optionE -[shift|pop], o conf Elist optionE [unshift|push|splice] -ElistE +Cscalar optionE>, Cscalar optionE +EvalueE>, Clist optionE>, Clist +optionE [shift|pop]>, Clist optionE +[unshift|push|splice] ElistE> -=over +=over 4 =item Note on urllist parameter's format @@ -5301,8 +7665,20 @@ ElistE =item WORKING WITH CPAN.pm BEHIND FIREWALLS +=over 4 + +=item Three basic types of firewalls + http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade +=item Configuring lynx or ncftp for going through a firewall + +=back + +=item FAQ + +1), 2), 3), 4), 5), 6), 7), 8), 9), 10) + =item BUGS =item AUTHOR @@ -5313,7 +7689,7 @@ http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization -=over +=over 4 =item SYNOPSIS @@ -5324,7 +7700,7 @@ http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS module -=over +=over 4 =item SYNOPSIS @@ -5336,13 +7712,13 @@ module =head2 Carp, carp - warn of errors (from perspective of caller) -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Forcing a Stack Trace @@ -5352,28 +7728,22 @@ module =back -=head2 Carp::Heavy - Carp guts - -=over - -=item SYNOPIS - -=item DESCRIPTION - -=back +=head2 Carp::Heavy, Carp heavy machinery - no user serviceable parts inside =head2 Class::Struct - declare struct-like datatypes as Perl classes -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item The C function +=item Class Creation at Compile Time + =item Element Types and Accessor Methods Scalar (C<'$'> or C<'*$'>), Array (C<'@'> or C<'*@'>), Hash (C<'%'> or @@ -5393,7 +7763,7 @@ Example 1, Example 2, Example 3 =head2 Config - access Perl configuration information -=over +=over 4 =item SYNOPSIS @@ -5407,7 +7777,7 @@ myconfig(), config_sh(), config_vars(@names) =item GLOSSARY -=over +=over 4 =item _ @@ -5427,8 +7797,9 @@ C, C =item c C, C, C, C, C, C, C, -C, 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 C @@ -5438,67 +7809,75 @@ C, C, C, C, C =item d -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, C, C, C, -C, C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, C, C, C, -C, C, C, +C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C +C, C, C, C, 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 e @@ -5512,36 +7891,39 @@ C, C, C, C, C, C =item g -C, C, C, C, C, -C, C, C, C, C +C, C, C, C, C, +C, C, C, C, C, C =item h -C, C, C, C, C +C, C, C, C =item i C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, 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 @@ -5549,11 +7931,12 @@ C, C =item l -C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, C, C, -C, C, C, C, C, C, -C, C +C, C, C, C, C, +C, C, C, 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 m @@ -5563,30 +7946,32 @@ C, C =item M -C, C, C, C, C, C, C, +C, C, C, C, C, C, C, C, C, C, C, C =item n -C, C, C, C, -C, C, C, 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 o C, C, C, C, -C, C, C +C, C, C, C =item p -C, C, C, C, C, C +C, C, C, C, C, C, +C =item P C, C, C, C, -C, C, C, C, 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 @@ -5594,8 +7979,8 @@ C, C =item r -C, C, C, C, C, C, -C, C +C, C, C, C, C, +C, C, C, C =item s @@ -5604,15 +7989,15 @@ C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C +C, C, C, C, +C, C, C, C, C, C, +C, C, C, C, C, +C, C, C, C, C, +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 @@ -5623,21 +8008,23 @@ C, C, C, C C, C, C, C, C, C, C, C, C, C, C, C, -C, C, C, C, C, C, -C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C, -C, C, C, C, C +C, C, C, C, C, +C, C, 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 =item x -C +C, C =item z @@ -5651,7 +8038,7 @@ C, C =head2 Cwd, getcwd - get pathname of current working directory -=over +=over 4 =item SYNOPSIS @@ -5663,13 +8050,13 @@ C, C subject to change) -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Global Variables @@ -5698,7 +8085,7 @@ CLIENT->output(LIST) =head2 DB_File - Perl5 access to Berkeley DB version 1.x -=over +=over 4 =item SYNOPSIS @@ -5706,7 +8093,7 @@ CLIENT->output(LIST) B, B, B -=over +=over 4 =item Using DB_File with Berkeley DB version 2 or 3 @@ -5722,7 +8109,7 @@ B, B, B =item DB_HASH -=over +=over 4 =item A Simple Example @@ -5730,7 +8117,7 @@ B, B, B =item DB_BTREE -=over +=over 4 =item Changing the BTREE sort order @@ -5748,7 +8135,7 @@ B, B, B =item DB_RECNO -=over +=over 4 =item The 'bval' Option @@ -5775,7 +8162,7 @@ $value, $flags) ;>, B<$status = $X-Esync([$flags]) ;> B, B, B, B -=over +=over 4 =item The Filter @@ -5787,7 +8174,7 @@ B =item HINTS AND TIPS -=over +=over 4 =item Locking: The Trouble with fd @@ -5803,7 +8190,7 @@ B, B, B =item COMMON QUESTIONS -=over +=over 4 =item Why is there Perl source in my database? @@ -5834,25 +8221,24 @@ B, B, B =head2 Data::Dumper - stringified perl data structures, suitable for both printing and C -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Methods I->new(I, I), I<$OBJ>->Dump I -I->Dump(I, I), I<$OBJ>->Dumpxs I -I->Dumpxs(I, I), -I<$OBJ>->Seen(I<[HASHREF]>), I<$OBJ>->Values(I<[ARRAYREF]>), -I<$OBJ>->Names(I<[ARRAYREF]>), I<$OBJ>->Reset +I->Dump(I, I), I<$OBJ>->Seen(I<[HASHREF]>), +I<$OBJ>->Values(I<[ARRAYREF]>), I<$OBJ>->Names(I<[ARRAYREF]>), +I<$OBJ>->Reset =item Functions -Dumper(I), DumperX(I) +Dumper(I) =item Configuration Variables or Methods @@ -5889,7 +8275,7 @@ Dumper =head2 Devel::DProf - a Perl code profiler -=over +=over 4 =item SYNOPSIS @@ -5909,15 +8295,21 @@ Dumper =head2 Devel::Peek - A data debugging tool for the XS programmer -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +=over 4 + +=item Memory footprint debugging + +=back + =item EXAMPLES -=over +=over 4 =item A simple scalar string @@ -5951,7 +8343,7 @@ Dumper =head2 Devel::SelfStubber - generate stubs for a SelfLoading module -=over +=over 4 =item SYNOPSIS @@ -5961,7 +8353,7 @@ Dumper =head2 DirHandle - supply object methods for directory handles -=over +=over 4 =item SYNOPSIS @@ -5971,13 +8363,13 @@ Dumper =head2 Dumpvalue - provides screen dump of Perl data. -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Creation @@ -5997,7 +8389,7 @@ veryCompact, set, get =head2 DynaLoader - Dynamically load C libraries into Perl code -=over +=over 4 =item SYNOPSIS @@ -6005,7 +8397,7 @@ veryCompact, set, get @dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs, @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(), -dl_load_file(), dl_loadflags(), dl_find_symbol(), +dl_load_file(), dl_unload_file(), dl_loadflags(), dl_find_symbol(), dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), bootstrap() @@ -6016,7 +8408,7 @@ bootstrap() =head2 DynaLoader::XSLoader, XSLoader - Dynamically load C libraries into Perl code -=over +=over 4 =item SYNOPSIS @@ -6026,37 +8418,95 @@ Perl code =back +=head2 Encode - character encodings + +=over 4 + +=item TERMINOLOGY + +=item bytes + +=item chars + +=item chars With Encoding + +=item Testing For UTF-8 + +=item Toggling UTF-8-ness + +=item UTF-16 and UTF-32 Encodings + +=item Handling Malformed Data + +=back + +=head2 Encode::EncodeFormat, EncodeFormat - the format of encoding tables +of the Encode extension + +=over 4 + +=item DESCRIPTION + +[1] B, [2] B, [3] B, [4] B + +=item KEYWORDS + +=item COPYRIGHT + +=back + +=head2 EncodeFormat - the format of encoding tables of the Encode extension + +=over 4 + +=item DESCRIPTION + +[1] B, [2] B, [3] B, [4] B + +=item KEYWORDS + +=item COPYRIGHT + +=back + =head2 English - use nice English (or awk) names for ugly punctuation variables -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +=item PERFORMANCE + =back -=head2 Env - perl module that imports environment variables +=head2 Env - perl module that imports environment variables as scalars or +arrays -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +=item LIMITATIONS + =item AUTHOR =back =head2 Errno - System errno constants -=over +=over 4 =item SYNOPSIS =item DESCRIPTION +=item CAVEATS + =item AUTHOR =item COPYRIGHT @@ -6065,13 +8515,13 @@ variables =head2 Exporter - Implements default import method for modules -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item How to Export @@ -6093,7 +8543,7 @@ variables =head2 Exporter::Heavy - Exporter guts -=over +=over 4 =item SYNOPIS @@ -6104,7 +8554,7 @@ variables =head2 ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc. -=over +=over 4 =item SYNOPSIS @@ -6132,7 +8582,7 @@ mkpath directory.. test_f file -=over +=over 4 =item BUGS @@ -6144,7 +8594,7 @@ test_f file =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications -=over +=over 4 =item SYNOPSIS @@ -6167,7 +8617,7 @@ ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =head2 ExtUtils::Install - install files from here to there -=over +=over 4 =item SYNOPSIS @@ -6177,7 +8627,7 @@ ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules) =head2 ExtUtils::Installed - Inventory management of installed modules -=over +=over 4 =item SYNOPSIS @@ -6198,7 +8648,7 @@ packlist(), version() =head2 ExtUtils::Liblist - determine libraries to use and how to use them -=over +=over 4 =item SYNOPSIS @@ -6206,7 +8656,7 @@ packlist(), version() For static extensions, For dynamic extensions, For dynamic extensions -=over +=over 4 =item EXTRALIBS @@ -6218,7 +8668,7 @@ For static extensions, For dynamic extensions, For dynamic extensions =item PORTABILITY -=over +=over 4 =item VMS implementation @@ -6233,7 +8683,7 @@ For static extensions, For dynamic extensions, For dynamic extensions =head2 ExtUtils::MM_Cygwin - methods to override UN*X behaviour in ExtUtils::MakeMaker -=over +=over 4 =item SYNOPSIS @@ -6246,7 +8696,7 @@ canonpath, cflags, manifypods, perl_archive =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker -=over +=over 4 =item SYNOPSIS @@ -6256,7 +8706,7 @@ ExtUtils::MakeMaker =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker -=over +=over 4 =item SYNOPSIS @@ -6264,7 +8714,7 @@ ExtUtils::MakeMaker =item METHODS -=over +=over 4 =item Preloaded methods @@ -6284,7 +8734,7 @@ rootdir updir -=over +=over 4 =item SelfLoaded methods @@ -6336,7 +8786,7 @@ file_name_is_absolute find_perl -=over +=over 4 =item Methods to actually produce chunks of text for the Makefile @@ -6454,7 +8904,7 @@ perl_archive export_list -=over +=over 4 =item SEE ALSO @@ -6463,13 +8913,13 @@ export_list =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Methods always loaded @@ -6481,7 +8931,7 @@ wraplist rootdir (override) -=over +=over 4 =item SelfLoaded methods @@ -6578,7 +9028,7 @@ nicetext (override) =head2 ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker -=over +=over 4 =item SYNOPSIS @@ -6624,13 +9074,13 @@ pasthru (o) =head2 ExtUtils::MakeMaker - create an extension Makefile -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item How To Write A Makefile.PL @@ -6654,21 +9104,21 @@ pasthru (o) =item Using Attributes and Parameters -AUTHOR, ABSTRACT, ABSTRACT_FROM, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG, +ABSTRACT, ABSTRACT_FROM, AUTHOR, BINARY_LOCATION, C, CAPI, CCFLAGS, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS, EXCLUDE_EXT, EXE_FILES, FIRST_MAKEFILE, FULLPERL, FUNCLIST, H, HTMLLIBPODS, HTMLSCRIPTPODS, IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLHTMLPRIVLIBDIR, INSTALLHTMLSCRIPTDIR, INSTALLHTMLSITELIBDIR, INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITEARCH, INSTALLSITELIB, INST_ARCHLIB, INST_BIN, -INST_EXE, INST_LIB, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_MAN1DIR, -INST_MAN3DIR, INST_SCRIPT, PERL_MALLOC_OK, LDFROM, LIB, LIBPERL_A, LIBS, -LINKTYPE, MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, -NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, -PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_SRC, PERM_RW, PERM_RWX, PL_FILES, -PM, PMLIBDIRS, POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PREFIX, -PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG, -XS_VERSION +INST_EXE, INST_HTMLLIBDIR, INST_HTMLSCRIPTDIR, INST_LIB, INST_MAN1DIR, +INST_MAN3DIR, INST_SCRIPT, LDFROM, LIB, LIBPERL_A, LIBS, LINKTYPE, +MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME, +NEEDS_LINKING, NOECHO, NORECURS, NO_VC, OBJECT, OPTIMIZE, PERL, PERLMAINCC, +PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, PERL_SRC, PERM_RW, PERM_RWX, +PL_FILES, PM, PMLIBDIRS, PM_FILTER, POLLUTE, PPM_INSTALL_EXEC, +PPM_INSTALL_SCRIPT, PREFIX, PREREQ_PM, SKIP, TYPEMAPS, VERSION, +VERSION_FROM, XS, XSOPT, XSPROTOARG, XS_VERSION =item Additional lowercase attributes @@ -6701,7 +9151,7 @@ PERL_MM_OPT =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file -=over +=over 4 =item SYNOPSIS @@ -6718,6 +9168,10 @@ PERL_MM_OPT C I, C I, C I<$!>, C I +=item ENVIRONMENT + +B + =item SEE ALSO =item AUTHOR @@ -6726,7 +9180,7 @@ C I =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c -=over +=over 4 =item SYNOPSIS @@ -6738,7 +9192,7 @@ C I =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader -=over +=over 4 =item SYNOPSIS @@ -6749,7 +9203,7 @@ C I =head2 ExtUtils::Mksymlists - write linker options files for dynamic extension -=over +=over 4 =item SYNOPSIS @@ -6765,7 +9219,7 @@ DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME =head2 ExtUtils::Packlist - manage .packlist files -=over +=over 4 =item SYNOPSIS @@ -6785,7 +9239,7 @@ new(), read(), write(), validate(), packlist_file() =head2 ExtUtils::testlib - add blib/* directories to @INC -=over +=over 4 =item SYNOPSIS @@ -6795,7 +9249,7 @@ new(), read(), write(), validate(), packlist_file() =head2 Fatal - replace functions with equivalents which succeed or die -=over +=over 4 =item SYNOPSIS @@ -6807,7 +9261,7 @@ new(), read(), write(), validate(), packlist_file() =head2 Fcntl - load the C Fcntl.h defines -=over +=over 4 =item SYNOPSIS @@ -6821,7 +9275,7 @@ new(), read(), write(), validate(), packlist_file() =head2 File::Basename, fileparse - split a pathname into pieces -=over +=over 4 =item SYNOPSIS @@ -6837,7 +9291,7 @@ C, C =head2 File::CheckTree, validate - run many filetest checks on a tree -=over +=over 4 =item SYNOPSIS @@ -6847,7 +9301,7 @@ C, C =head2 File::Compare - Compare files or filehandles -=over +=over 4 =item SYNOPSIS @@ -6861,13 +9315,13 @@ C, C =head2 File::Copy - Copy files or filehandles -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Special behaviour if C is defined (OS/2, VMS and Win32) @@ -6883,7 +9337,7 @@ rmscopy($from,$to[,$date_flag]) =head2 File::DosGlob - DOS like globbing and then some -=over +=over 4 =item SYNOPSIS @@ -6903,14 +9357,15 @@ rmscopy($from,$to[,$date_flag]) =head2 File::Find, find - traverse a file tree -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -C, C, C, C, C, -C, C, C, C +C, C, C, C, C, +C, C, C, C, +C, C =item CAVEAT @@ -6918,7 +9373,7 @@ C, C, C, C =head2 File::Glob - Perl extension for BSD glob routine -=over +=over 4 =item SYNOPSIS @@ -6939,7 +9394,7 @@ C, C =head2 File::Path - create or remove directory trees -=over +=over 4 =item SYNOPSIS @@ -6951,7 +9406,7 @@ C, C =head2 File::Spec - portably perform operations on file names -=over +=over 4 =item SYNOPSIS @@ -6963,15 +9418,49 @@ C, C =back +=head2 File::Spec::Epoc - methods for Epoc file specs + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +devnull + +=back + +tmpdir + +path + +canonpath + +splitpath + +splitdir + +catpath + +abs2rel + +rel2abs + +=over 4 + +=item SEE ALSO + +=back + =head2 File::Spec::Functions - portably perform operations on file names -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Exports @@ -6983,7 +9472,7 @@ C, C =head2 File::Spec::Mac - File::Spec for MacOS -=over +=over 4 =item SYNOPSIS @@ -7013,7 +9502,17 @@ file_name_is_absolute path -=over +splitpath + +splitdir + +catpath + +abs2rel + +rel2abs + +=over 4 =item SEE ALSO @@ -7021,7 +9520,7 @@ path =head2 File::Spec::OS2 - methods for OS/2 file specs -=over +=over 4 =item SYNOPSIS @@ -7031,7 +9530,7 @@ path =head2 File::Spec::Unix - methods used by File::Spec -=over +=over 4 =item SYNOPSIS @@ -7059,6 +9558,8 @@ updir no_upwards +case_tolerant + file_name_is_absolute path @@ -7075,7 +9576,7 @@ abs2rel rel2abs -=over +=over 4 =item SEE ALSO @@ -7083,7 +9584,7 @@ rel2abs =head2 File::Spec::VMS - methods for VMS file specs -=over +=over 4 =item SYNOPSIS @@ -7095,14 +9596,16 @@ eliminate_macros fixpath -=over +=over 4 =item Methods always loaded -catdir +canonpath (override) =back +catdir + catfile curdir (override) @@ -7115,11 +9618,23 @@ tmpdir (override) updir (override) +case_tolerant (override) + path (override) file_name_is_absolute (override) -=over +splitpath (override) + +splitdir (override) + +catpath (override) + +abs2rel (override) + +rel2abs (override) + +=over 4 =item SEE ALSO @@ -7127,7 +9642,7 @@ file_name_is_absolute (override) =head2 File::Spec::Win32 - methods for Win32 file specs -=over +=over 4 =item SYNOPSIS @@ -7149,59 +9664,211 @@ splitdir catpath -abs2rel +=over 4 -rel2abs +=item SEE ALSO + +=back + +=head2 File::Temp - return name and handle of a temporary file safely + +=over 4 + +=item PORTABILITY + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=over 4 + +=item FUNCTIONS + +B + +=back + +B + +=over 4 + +=item MKTEMP FUNCTIONS + +B + +=back + +B + +B + +B + +=over 4 + +=item POSIX FUNCTIONS + +B + +=back + +B + +=over 4 + +=item ADDITIONAL FUNCTIONS + +B + +=back + +=over 4 + +=item UTILITY FUNCTIONS + +B + +=back + +=over 4 + +=item PACKAGE VARIABLES + +B, STANDARD, MEDIUM, HIGH + +=back + +TopSystemUID + +=over 4 -=over +=item WARNING + +=over 4 + +=item Temporary files and NFS + +=back + +=item HISTORY =item SEE ALSO +=item AUTHOR + =back =head2 File::stat - by-name interface to Perl's built-in stat() functions -=over +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item NOTE + +=item AUTHOR + +=back + +=head2 FileCache - keep more files open than the system permits + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item BUGS + +=back + +=head2 FileHandle - supply object methods for filehandles + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +$fh->print, $fh->printf, $fh->getline, $fh->getlines + +=item SEE ALSO + +=back + +=head2 Filter::Simple - Simplified source filtering + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=over 4 + +=item The Problem + +=item A Solution + +=item How it works + +=back + +=item AUTHOR + +=item COPYRIGHT + +=back + +=head2 Filter::Util::Call - Perl Source Filter Utility Module + +=over 4 =item SYNOPSIS + use Filter::Util::Call ; + =item DESCRIPTION -=item NOTE +=over 4 -=item AUTHOR +=item B -=back +=item B -=head2 FileCache - keep more files open than the system permits +=item B -=over +B<$_>, B<$status>, B and B, B -=item SYNOPSIS +=back -=item DESCRIPTION +=item EXAMPLES -=item BUGS +=over 4 -=back +=item Example 1: A simple filter. -=head2 FileHandle - supply object methods for filehandles +=item Example 2: Using the context -=over +=item Example 3: Using the context within the filter -=item SYNOPSIS +=item Example 4: Using filter_del -=item DESCRIPTION +=back -$fh->print, $fh->printf, $fh->getline, $fh->getlines +=item AUTHOR -=item SEE ALSO +=item DATE =back =head2 FindBin - Locate directory of original perl script -=over +=over 4 =item SYNOPSIS @@ -7219,7 +9886,7 @@ $fh->print, $fh->printf, $fh->getline, $fh->getlines =head2 GDBM_File - Perl5 access to the gdbm library. -=over +=over 4 =item SYNOPSIS @@ -7233,45 +9900,94 @@ $fh->print, $fh->printf, $fh->getline, $fh->getlines =back -=head2 Getopt::Long, GetOptions - extended processing of command line -options +=head2 Getopt::Long - Extended processing of command line options -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -!, +, :s, :i, :f +=item Command Line Options, an Introduction -=over +=item Getting Started with Getopt::Long -=item Linkage specification +=over 4 -=item Aliases and abbreviations +=item Simple options -=item Non-option call-back routine +=item A little bit less simple options -=item Option starters +=item Mixing command line option with other arguments -=item Return values and Errors +=item Options with values + +=item Options with multiple values + +=item Options with hash values + +=item User-defined subroutines to handle options + +=item Options with multiple names + +=item Case and abbreviations + +=item Summary of Option Specifications + +!, +, s, i, f, : I [ I ] =back -=item COMPATIBILITY +=item Advanced Possibilities -=item EXAMPLES +=over 4 + +=item Object oriented interface + +=item Documentation and help texts + +=item Storing options in a hash + +=item Bundling -=item CONFIGURATION OPTIONS +=item The lonesome dash -default, auto_abbrev, getopt_compat, require_order, permute, bundling -(default: reset), bundling_override (default: reset), ignore_case -(default: set), ignore_case_always (default: reset), pass_through (default: -reset), prefix, prefix_pattern, debug (default: reset) +=item Argument call-back -=item OTHER USEFUL VARIABLES +=back + +=item Configuring Getopt::Long + +default, posix_default, auto_abbrev, getopt_compat, gnu_compat, gnu_getopt, +require_order, permute, bundling (default: disabled), bundling_override +(default: disabled), ignore_case (default: enabled), ignore_case_always +(default: disabled), pass_through (default: disabled), prefix, +prefix_pattern, debug (default: disabled) + +=item Return values and Errors + +=item Legacy + +=over 4 + +=item Default destinations + +=item Alternative option starters + +=item Configuration variables + +=back + +=item Trouble Shooting + +=over 4 + +=item Warning: Ignoring '!' modifier for short option + +=item GetOptions does not return a false result when an option is not +supplied -$Getopt::Long::VERSION, $Getopt::Long::error +=back =item AUTHOR @@ -7282,7 +9998,7 @@ $Getopt::Long::VERSION, $Getopt::Long::error =head2 Getopt::Std, getopt - Process single-character switches with switch clustering -=over +=over 4 =item SYNOPSIS @@ -7293,7 +10009,7 @@ clustering =head2 I18N::Collate - compare 8-bit scalar data according to the current locale -=over +=over 4 =item SYNOPSIS @@ -7303,7 +10019,7 @@ locale =head2 IO - load various IO modules -=over +=over 4 =item SYNOPSIS @@ -7313,7 +10029,7 @@ locale =head2 IO::Dir - supply object methods for directory handles -=over +=over 4 =item SYNOPSIS @@ -7332,7 +10048,7 @@ rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] =head2 IO::File - supply object methods for filehandles -=over +=over 4 =item SYNOPSIS @@ -7354,7 +10070,7 @@ open( FILENAME [,MODE [,PERMS]] ) =head2 IO::Handle - supply object methods for I/O handles -=over +=over 4 =item SYNOPSIS @@ -7383,7 +10099,7 @@ $io->blocking ( [ BOOL ] ), $io->untaint =head2 IO::Pipe - supply object methods for pipes -=over +=over 4 =item SYNOPSIS @@ -7407,7 +10123,7 @@ reader ([ARGS]), writer ([ARGS]), handles () =head2 IO::Poll - Object interface to system poll call -=over +=over 4 =item SYNOPSIS @@ -7428,13 +10144,15 @@ IO ), handles( [ EVENT_MASK ] ) =head2 IO::Seekable - supply seek based methods for I/O objects -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=item SEE ALSO +$io->getpos, $io->setpos, $io->setpos ( POS, WHENCE ), WHENCE=0 (SEEK_SET), +WHENCE=1 (SEEK_CUR), WHENCE=1 (SEEK_END), $io->sysseek( POS, WHENCE ), +$io->tell =item HISTORY @@ -7442,7 +10160,7 @@ IO ), handles( [ EVENT_MASK ] ) =head2 IO::Select - OO interface to the select system call -=over +=over 4 =item SYNOPSIS @@ -7468,7 +10186,7 @@ count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) =head2 IO::Socket - Object interface to socket communications -=over +=over 4 =item SYNOPSIS @@ -7493,7 +10211,7 @@ sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected =head2 IO::Socket::INET - Object interface for AF_INET domain sockets -=over +=over 4 =item SYNOPSIS @@ -7503,7 +10221,7 @@ sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected new ( [ARGS] ) -=over +=over 4 =item METHODS @@ -7522,7 +10240,7 @@ sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost =head2 IO::Socket::UNIX - Object interface for AF_UNIX domain sockets -=over +=over 4 =item SYNOPSIS @@ -7547,7 +10265,7 @@ hostpath(), peerpath() =head2 IO::lib::IO::Dir, IO::Dir - supply object methods for directory handles -=over +=over 4 =item SYNOPSIS @@ -7566,7 +10284,7 @@ rewind (), close (), tie %hash, IO::Dir, DIRNAME [, OPTIONS ] =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles -=over +=over 4 =item SYNOPSIS @@ -7589,7 +10307,7 @@ open( FILENAME [,MODE [,PERMS]] ) =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O handles -=over +=over 4 =item SYNOPSIS @@ -7618,7 +10336,7 @@ $io->blocking ( [ BOOL ] ), $io->untaint =head2 IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes -=over +=over 4 =item SYNOPSIS @@ -7642,7 +10360,7 @@ reader ([ARGS]), writer ([ARGS]), handles () =head2 IO::lib::IO::Poll, IO::Poll - Object interface to system poll call -=over +=over 4 =item SYNOPSIS @@ -7664,13 +10382,15 @@ IO ), handles( [ EVENT_MASK ] ) =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for I/O objects -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=item SEE ALSO +$io->getpos, $io->setpos, $io->setpos ( POS, WHENCE ), WHENCE=0 (SEEK_SET), +WHENCE=1 (SEEK_CUR), WHENCE=1 (SEEK_END), $io->sysseek( POS, WHENCE ), +$io->tell =item HISTORY @@ -7679,7 +10399,7 @@ I/O objects =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system call -=over +=over 4 =item SYNOPSIS @@ -7706,7 +10426,7 @@ count (), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] ) =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket communications -=over +=over 4 =item SYNOPSIS @@ -7732,7 +10452,7 @@ sockopt(OPT [, VAL]), sockdomain, socktype, protocol, connected =head2 IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for AF_INET domain sockets -=over +=over 4 =item SYNOPSIS @@ -7742,7 +10462,7 @@ AF_INET domain sockets new ( [ARGS] ) -=over +=over 4 =item METHODS @@ -7762,7 +10482,7 @@ sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost =head2 IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for AF_UNIX domain sockets -=over +=over 4 =item SYNOPSIS @@ -7786,7 +10506,7 @@ hostpath(), peerpath() =head2 IPC::Msg - SysV Msg IPC object class -=over +=over 4 =item SYNOPSIS @@ -7808,7 +10528,7 @@ FLAGS ] ), stat =head2 IPC::Open2, open2 - open a process for both reading and writing -=over +=over 4 =item SYNOPSIS @@ -7823,7 +10543,7 @@ FLAGS ] ), stat =head2 IPC::Open3, open3 - open a process for reading, writing, and error handling -=over +=over 4 =item SYNOPSIS @@ -7835,7 +10555,7 @@ handling =head2 IPC::Semaphore - SysV Semaphore IPC object class -=over +=over 4 =item SYNOPSIS @@ -7858,7 +10578,7 @@ set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N =head2 IPC::SysV - SysV IPC constants -=over +=over 4 =item SYNOPSIS @@ -7876,7 +10596,7 @@ ftok( PATH, ID ) =head2 IPC::SysV::Msg, IPC::Msg - SysV Msg IPC object class -=over +=over 4 =item SYNOPSIS @@ -7899,7 +10619,7 @@ FLAGS ] ), stat =head2 IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore IPC object class -=over +=over 4 =item SYNOPSIS @@ -7922,7 +10642,7 @@ set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N =head2 Math::BigFloat - Arbitrary length float math package -=over +=over 4 =item SYNOPSIS @@ -7939,7 +10659,7 @@ performed =head2 Math::BigInt - Arbitrary size integer math package -=over +=over 4 =item SYNOPSIS @@ -7960,7 +10680,7 @@ Canonical notation, Input, Output =head2 Math::Complex - complex numbers and associated mathematical functions -=over +=over 4 =item SYNOPSIS @@ -7972,6 +10692,12 @@ functions =item STRINGIFICATION +=over 4 + +=item CHANGED IN PERL 5.6 + +=back + =item USAGE =item ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO @@ -7986,7 +10712,7 @@ functions =head2 Math::Trig - trigonometric functions -=over +=over 4 =item SYNOPSIS @@ -7996,7 +10722,7 @@ functions B -=over +=over 4 =item ERRORS DUE TO DIVISION BY ZERO @@ -8008,7 +10734,7 @@ B =item RADIAL COORDINATE CONVERSIONS -=over +=over 4 =item COORDINATE SYSTEMS @@ -8031,23 +10757,33 @@ cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical =head2 NDBM_File - Tied access to ndbm files -=over +=over 4 =item SYNOPSIS -=item DESCRIPTION +C, C, C + +=item DIAGNOSTICS + +=over 4 + +=item C + +=back + +=item BUGS AND WARNINGS =back =head2 Net::Ping - check a remote host for reachability -=over +=over 4 =item SYNOPSIS =item DESCRIPTION -=over +=over 4 =item Functions @@ -8065,7 +10801,7 @@ $timeout]);, $p->close();, pingecho($host [, $timeout]); =head2 Net::hostent - by-name interface to Perl's built-in gethost*() functions -=over +=over 4 =item SYNOPSIS @@ -8082,7 +10818,7 @@ functions =head2 Net::netent - by-name interface to Perl's built-in getnet*() functions -=over +=over 4 =item SYNOPSIS @@ -8099,7 +10835,7 @@ functions =head2 Net::protoent - by-name interface to Perl's built-in getproto*() functions -=over +=over 4 =item SYNOPSIS @@ -8114,7 +10850,7 @@ functions =head2 Net::servent - by-name interface to Perl's built-in getserv*() functions -=over +=over 4 =item SYNOPSIS @@ -8130,7 +10866,7 @@ functions =head2 O - Generic interface to Perl Compiler backends -=over +=over 4 =item SYNOPSIS @@ -8146,17 +10882,27 @@ functions =head2 ODBM_File - Tied access to odbm files -=over +=over 4 =item SYNOPSIS -=item DESCRIPTION +C, C, C + +=item DIAGNOSTICS + +=over 4 + +=item C + +=back + +=item BUGS AND WARNINGS =back =head2 Opcode - Disable named opcodes when compiling perl code -=over +=over 4 =item SYNOPSIS @@ -8184,7 +10930,7 @@ opdump (PAT) =back -=over +=over 4 =item Predefined Opcode Tags @@ -8202,7 +10948,7 @@ opdump (PAT) =head2 Opcode::Safe, Safe - Compile and execute code in restricted compartments -=over +=over 4 =item SYNOPSIS @@ -8212,7 +10958,7 @@ a new namespace, an operator mask =item WARNING -=over +=over 4 =item RECENT CHANGES @@ -8236,7 +10982,7 @@ Memory, CPU, Snooping, Signals, State Changes =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when compiling -=over +=over 4 =item SYNOPSIS @@ -8248,7 +10994,7 @@ compiling =head2 POSIX - Perl interface to IEEE Std 1003.1 -=over +=over 4 =item SYNOPSIS @@ -8280,16 +11026,16 @@ rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid, setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp, sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen, -strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr, -strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, -tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, -tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, -ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, -wcstombs, wctomb, write +strncat, strncmp, strncpy, strpbrk, strrchr, strspn, strstr, strtod, +strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, tcdrain, +tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, tmpfile, +tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, ungetc, +unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, wcstombs, +wctomb, write =item CLASSES -=over +=over 4 =item POSIX::SigAction @@ -8373,347 +11119,644 @@ Constants Constants, Macros -=item CREATION - =back =head2 Pod::Checker, podchecker() - check pod documents for syntax errors -=over +=over 4 =item SYNOPSIS =item OPTIONS/ARGUMENTS -=over +=over 4 + +=item podchecker() + +B<-warnings> =E I + +=back + +=item DESCRIPTION + +=item DIAGNOSTICS + +=over 4 + +=item Errors + +empty =headn, =over on line I without closing =back, =item without +previous =over, =back without previous =over, No argument for =begin, =end +without =begin, Nested =begin's, =for without formatter specification, +unresolved internal link I, Unknown command "I", Unknown +interior-sequence "I", nested commands +IE...IE...E...E, garbled entity I, Entity +number out of range, malformed link LEE, nonempty ZEE, +empty XEE, Spurious text after =pod / =cut, Spurious character(s) +after =back + +=item Warnings + +multiple occurence of link target I, line containing nothing but +whitespace in paragraph, file does not start with =head, No numeric +argument for =over, previous =item has no contents, preceding non-item +paragraph(s), =item type mismatch (I vs. I), I unescaped +CE> in paragraph, Unknown entity, No items in =over, No argument +for =item, empty section in previous paragraph, Verbatim paragraph in NAME +section + +=item Hyperlinks + +collapsing newlines to blanks, ignoring leading/trailing whitespace in +link, (section) in '$page' deprecated, alternative text/node '%s' contains +non-escaped | or / + +=back + +=item RETURN VALUE + +=item EXAMPLES + +=item INTERFACE + +=back + +Cnew( %options )> + +C<$checker-Epoderror( @args )>, C<$checker-Epoderror( {%opts}, +@args )> + +C<$checker-Enum_errors()> + +C<$checker-Ename()> + +C<$checker-Enode()> + +C<$checker-Eidx()> + +C<$checker-Ehyperlink()> + +=over 4 + +=item AUTHOR + +=back + +=head2 Pod::Find - find POD documents in directory trees + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=back + +=over 4 + +=item C + +C<-verbose =E 1>, C<-perl =E 1>, C<-script =E 1>, C<-inc =E +1> + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item C + +C<-inc =E 1>, C<-dirs =E [ $dir1, $dir2, ... ]>, C<-verbose =E +1> + +=back + +=over 4 + +=item C + +=back + +=over 4 + +=item AUTHOR + +=item SEE ALSO + +=back + +=head2 Pod::Html - module to convert pod files to HTML + +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION + +=item ARGUMENTS + +backlink, css, flush, header, help, htmldir, htmlroot, index, infile, +libpods, netscape, outfile, podpath, podroot, quiet, recurse, title, +verbose + +=item EXAMPLE + +=item ENVIRONMENT + +=item AUTHOR + +=item SEE ALSO + +=item COPYRIGHT + +=back + +=head2 Pod::InputObjects - objects representing POD input paragraphs, +commands, etc. + +=over 4 + +=item SYNOPSIS + +=item REQUIRES + +=item EXPORTS + +=item DESCRIPTION + +package B, package B, package +B, package B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item Pod::Paragraph-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item $pod_para-EB + +=back + +=over 4 + +=item B + +=back + +=over 4 + +=item Pod::InteriorSequence-EB + +=back + +=over 4 + +=item $pod_seq-EB + +=back -=item Options +=over 4 -B<-warnings> =E I +=item $pod_seq-EB =back -=item DESCRIPTION - -=over +=over 4 -=item Warnings +=item $pod_seq-EB =back -=item DIAGNOSTICS +=over 4 -=item RETURN VALUE +=item $pod_seq-EB -=item EXAMPLES +=back -=item AUTHOR +=over 4 + +=item $pod_seq-EB =back -=head2 Pod::Checker, Pod::Hyperlink - class for manipulation of POD -hyperlinks +=over 4 -=over +=item $pod_seq-EB -=item SYNOPSIS +=back -=item DESCRIPTION +=over 4 -=item METHODS +=item $pod_seq-EB + +=back -new(), parse(), markup($on,$off,$pageon,$pageoff), text(), warning(), -page(), node(), type(), alttext(), line(), file() +=over 4 -=item AUTHOR +=item $pod_seq-EB =back -=head2 Pod::Html - module to convert pod files to HTML +=over 4 -=over +=item $pod_seq-EB -=item SYNOPSIS +=back -=item DESCRIPTION +=over 4 -=item ARGUMENTS +=item Pod::InteriorSequence::B -help, htmldir, htmlroot, infile, outfile, podroot, podpath, libpods, -netscape, nonetscape, index, noindex, recurse, norecurse, title, css, -verbose, quiet +=back -=item EXAMPLE +=over 4 -=item ENVIRONMENT +=item B -=item AUTHOR +=back -=item SEE ALSO +=over 4 -=item COPYRIGHT +=item Pod::ParseTree-EB =back -=head2 Pod::InputObjects - objects representing POD input paragraphs, -commands, etc. +=over 4 -=over +=item $ptree-EB -=item SYNOPSIS +=back -=item REQUIRES +=over 4 -=item EXPORTS +=item $ptree-EB -=item DESCRIPTION +=back + +=over 4 -B, B, B, -B +=item $ptree-EB =back -=over +=over 4 -=item B +=item $ptree-EB =back -=over +=over 4 -=item B +=item $ptree-EB =back -=over +=over 4 -=item B +=item Pod::ParseTree::B =back -=over +=over 4 -=item B +=item SEE ALSO + +=item AUTHOR =back -=over +=head2 Pod::LaTeX - Convert Pod data to formatted Latex -=item B +=over 4 + +=item SYNOPSIS + +=item DESCRIPTION =back -=over +=over 4 -=item B +=item OBJECT METHODS + +C =back -=over +=over 4 -=item B +=item Data Accessors + +B =back -=over +B -=item B +B -=back +B