GNU/Linux |
CentOS 2.1AS(Slurm) |
|
![]() |
perltoc(1) |
![]() |
perltoc − perl documentation table of contents
This page provides a brief table of contents for the rest of the Perl documentation set. It is meant to be scanned quickly or grepped through to locate the proper section you’re looking for.
perl −
Practical Extraction and Report Language
SYNOPSIS
DESCRIPTION
AVAILABILITY
ENVIRONMENT
AUTHOR
FILES
SEE ALSO
DIAGNOSTICS
BUGS
NOTES
perlfaq
− frequently asked questions about Perl ($Date:
1999/05/23 20:38:02 $)
DESCRIPTION
perlfaq: Structural overview of
the FAQ .
the perlfaq1 manpage: General Questions About Perl
the perlfaq2 manpage: Obtaining and Learning about Perl
the perlfaq3 manpage: Programming Tools
the perlfaq4 manpage: Data Manipulation
the perlfaq5 manpage: Files and Formats
the perlfaq6 manpage: Regexps
the perlfaq7 manpage: General Perl Language Issues
the perlfaq8 manpage: System Interaction
the perlfaq9 manpage: Networking
About the perlfaq documents
Where to get the perlfaq
How to contribute to the perlfaq
What will happen if you mail your Perl programming problems
to the
authors
Credits
Author and Copyright Information
Bundled Distributions
Disclaimer
Changes
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
perlbook
− Perl book information
DESCRIPTION
perlsyn
− Perl syntax
DESCRIPTION
Declarations
Simple statements
Compound statements
Loop Control
For Loops
Foreach Loops
Basic BLOCKs and Switch Statements
Goto
PODs: Embedded Documentation
Plain Old Comments (Not!)
perldata
− Perl data types
DESCRIPTION
Variable names
Context
Scalar values
Scalar value constructors
List value constructors
Slices
Typeglobs and Filehandles
SEE ALSO
perlop
− Perl operators and precedence
SYNOPSIS
DESCRIPTION
Terms and List Operators
(Leftward)
The Arrow Operator
Auto-increment and Auto-decrement
Exponentiation
Symbolic Unary Operators
Binding Operators
Multiplicative Operators
Additive Operators
Shift Operators
Named Unary Operators
Relational Operators
Equality Operators
Bitwise And
Bitwise Or and Exclusive Or
C-style Logical And
C-style Logical Or
Range Operators
Conditional Operator
Assignment Operators
Comma Operator
List Operators (Rightward)
Logical Not
Logical And
Logical or and Exclusive Or
C Operators Missing From Perl
unary &, unary *, ( TYPE )
Quote and Quote-like Operators
Regexp Quote-Like Operators
?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, "’STRING’", qq/STRING/, " STRING ", qr/STRING/imosx, qx/STRING/, ’STRING’, qw/STRING/, s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds, y/SEARCHLIST/REPLACEMENTLIST/cds
Gory details of parsing quoted constructs
Finding the end, Removal of backslashes before delimiters, Interpolation, "<<’EOF’", "m’’", "s’’’", "tr///", "y///", "’’", "q//", """", "’’", "qq//", "qx//", "<file*glob>", "?RE?", "/RE/", "m/RE/", "s/RE/foo/",, Interpolation of regular expressions, Optimization of regular expressions
I/O Operators
Constant Folding
Bitwise String Operators
Integer Arithmetic
Floating-point Arithmetic
Bigger Numbers
perlsub
− Perl subroutines
SYNOPSIS
DESCRIPTION
Private Variables via
my()
Persistent Private Variables
Temporary Values via local()
Lvalue subroutines
Passing Symbol Table Entries (typeglobs)
When to Still Use local()
Pass by Reference
Prototypes
Constant Functions
Overriding Built-in Functions
Autoloading
Subroutine Attributes
SEE ALSO
perlfunc
− Perl builtin functions
DESCRIPTION
Perl Functions by Category
Functions for SCALARs or strings, Regular expressions and pattern matching, Numeric functions, Functions for real @ARRAYs, Functions for list data, Functions for real %HASHes, Input and output functions, Functions for fixed length data or records, Functions for filehandles, files, or directories, Keywords related to the control flow of your perl program, Keywords related to scoping, Miscellaneous functions, Functions for processes and process groups, Keywords related to perl modules, Keywords related to classes and object-orientedness, Low-level socket functions, System V interprocess communication functions, Fetching user and group info, Fetching network info, Time-related functions, Functions new in perl5, Functions obsoleted in perl5
Portability
Alphabetical Listing of Perl Functions
−X FILEHANDLE , −X EXPR , −X, abs VALUE , abs, accept NEWSOCKET ,GENERICSOCKET, alarm SECONDS , alarm, atan2 Y,X, bind SOCKET ,NAME, binmode FILEHANDLE , 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 FILEHANDLE , 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///
perlreftut
− Mark’s very short tutorial about
references
DESCRIPTION
Who Needs Complicated Data Structures?
The Solution
Syntax
Making References
Using References
An Example
Arrow Rule
Solution
The Rest
Summary
Credits
Distribution Conditions
perldsc
− Perl Data Structures Cookbook
DESCRIPTION
arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, more elaborate constructs
REFERENCES
COMMON MISTAKES
CAVEAT ON PRECEDENCE
WHY YOU SHOULD ALWAYS ""use
strict""
DEBUGGING
CODE EXAMPLES
ARRAYS OF ARRAYS
Declaration of a ARRAY
OF ARRAYS
Generation of a ARRAY OF ARRAYS
Access and Printing of a ARRAY OF ARRAYS
HASHES OF ARRAYS
Declaration of a HASH OF
ARRAYS
Generation of a HASH OF ARRAYS
Access and Printing of a HASH OF ARRAYS
ARRAYS OF HASHES
Declaration of a ARRAY
OF HASHES
Generation of a ARRAY OF HASHES
Access and Printing of a ARRAY OF HASHES
HASHES OF HASHES
Declaration of a HASH OF
HASHES
Generation of a HASH OF HASHES
Access and Printing of a HASH OF HASHES
MORE ELABORATE RECORDS
Declaration of MORE
ELABORATE RECORDS
Declaration of a HASH OF COMPLEX RECORDS
Generation of a HASH OF COMPLEX RECORDS
Database Ties
SEE ALSO
AUTHOR
perlrequick
− Perl regular expressions quick start
DESCRIPTION
The Guide
Simple word matching
Using character classes
Matching this or that
Grouping things and hierarchical matching
Extracting matches
Matching repetitions
More matching
Search and replace
The split operator
BUGS
SEE ALSO
AUTHOR AND COPYRIGHT
Acknowledgments
perlpod
− plain old documentation
DESCRIPTION
Verbatim Paragraph
Command Paragraph
Ordinary Block of Text
The Intent
Embedding Pods in Perl Modules
Common Pod Pitfalls
SEE ALSO
AUTHOR
perlstyle
− Perl style guide
DESCRIPTION
perltrap
− Perl traps for the unwary
DESCRIPTION
Awk Traps
C Traps
Sed Traps
Shell Traps
Perl Traps
Perl4 to Perl5 Traps
Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical Traps, General data type traps, Context Traps − scalar, list contexts, Precedence Traps, General Regular Expression Traps using s///, etc, Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
Discontinuance, Deprecation, and BugFix traps
Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance, Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix, Discontinuance, Deprecation, Discontinuance, Discontinuance
Parsing Traps
Parsing, Parsing, Parsing, Parsing
Numerical Traps
Numerical, Numerical, Numerical, Bitwise string ops
General data type traps
(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String), (Constants), (Scalars), (Variable Suicide)
Context Traps − scalar, list contexts
(list context), (scalar context), (scalar context), (list, builtin)
Precedence Traps
Precedence, Precedence, Precedence, Precedence, Precedence, Precedence, Precedence
General Regular Expression Traps using s///, etc.
Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression, Regular Expression
Subroutine, Signal, Sorting Traps
(Signals), (Sort Subroutine), warn() won’t let you specify a filehandle
OS Traps
(SysV), (SysV)
Interpolation Traps
Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation, Interpolation
DBM Traps
DBM , DBM
Unclassified Traps
"require"/"do" trap using returned value, "split" on empty string with LIMIT specified
perlrun
− how to execute the Perl interpreter
SYNOPSIS
DESCRIPTION
#! and quoting on non-Unix systems
OS/2 , MS-DOS , Win95/NT, Macintosh, VMS
Location of Perl
Command Switches
−0[digits], −a, −C, −c, −d, −d:foo[=bar,baz], −Dletters, −Dnumber, −e commandline, −Fpattern, −h, −i[extension], −Idirectory, −l[octnum], −m[-]module, −M[-]module, −M[-]’module ...’, −[mM][-]module=arg[,arg]..., −n, −p, −P, −s, −S, −T, −u, −U, −v, −V, −V:name, −w, −W, −X, −x directory
ENVIRONMENT
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)
perldiag
− various Perl diagnostics
DESCRIPTION
perllexwarn
− Perl Lexical Warnings
DESCRIPTION
Default Warnings and Optional
Warnings
What’s wrong with −w and
""$^W""
Controlling Warnings from the Command Line
−w, −W, −X
Backward Compatibility
Category Hierarchy
Fatal Warnings
Reporting Warnings from a Module
TODO
SEE ALSO
AUTHOR
perldebtut
− Perl debugging tutorial
DESCRIPTION
use strict
Looking at data and −w and w
help
Stepping through code
Placeholder for a, w, t, T
REGULAR EXPRESSIONS
OUTPUT TIPS
CGI |
GUIs
SUMMARY
SEE ALSO
AUTHOR
CONTRIBUTORS
perldebug
− Perl debugging
DESCRIPTION
The Perl Debugger
Debugger Commands
h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n [expr], r, < CR >, 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]
Configurable Options
"recallCommand", "ShellBang", "pager", "tkRunning", "signalLevel", "warnLevel", "dieLevel", "AutoTrace", "LineInfo", "inhibit_exit", "PrintRet", "ornaments", "frame", "maxTraceLen", "arrayDepth", "hashDepth", "compactDump", "veryCompact", "globPrint", "DumpDBFiles", "DumpPackages", "DumpReused", "quote", "HighBit", "undefPrint", "UsageOnly", "TTY", "noTTY", "ReadLine", "NonStop"
Debugger input/output
Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame listing
Debugging compile-time
statements
Debugger Customization
Readline Support
Editor Support for Debugging
The Perl Profiler
Debugging regular expressions
Debugging memory usage
SEE ALSO
BUGS
perlvar
− Perl predefined variables
DESCRIPTION
Predefined Names
$ARG, $_, $<digits>, $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, @−, "$’" is the same as "substr($var, 0, $−[0])", "$&" is the same as "substr($var, $−[0], $+[0] − $−[0])", "$’" is the same as "substr($var, $+[0])", "$1" is the same as "substr($var, $−[1], $+[1] − $−[1])", "$2" is the same as "substr($var, $−[2], $+[2] − $−[2])", "$3" is the same as "substr $var, $−[3], $+[3] − $−[3])", 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}
Error Indicators
Technical Note on the Syntax of Variable Names
BUGS
perllol
− Manipulating Arrays of Arrays in Perl
DESCRIPTION
Declaration and Access of
Arrays of Arrays
Growing Your Own
Access and Printing
Slices
SEE ALSO
AUTHOR
perlopentut
− tutorial on opening things in Perl
DESCRIPTION
Open A la shell
Simple Opens
Pipe Opens
The Minus File
Mixing Reads and Writes
Filters
Open A la C
Permissions A la mode
Obscure Open Tricks
Re-Opening Files (dups)
Dispelling the Dweomer
Paths as Opens
Single Argument Open
Playing with STDIN and
STDOUT
Other I/O Issues
Opening Non-File Files
Binary Files
File Locking
SEE ALSO
AUTHOR and COPYRIGHT
HISTORY
perlretut
− Perl regular expressions tutorial
DESCRIPTION
Part 1: The basics
Simple word matching
Using character classes
Matching this or that
Grouping things and hierarchical matching
Extracting matches
Matching repetitions
Building a regexp
Using regular expressions in Perl
Part 2: Power tools
More on characters, strings,
and character classes
Compiling and saving regular expressions
Embedding comments and modifiers in a regular expression
Non-capturing groupings
Looking ahead and looking behind
Using independent subexpressions to prevent backtracking
Conditional expressions
A bit of magic: executing Perl code in a regular expression
Pragmas and debugging
BUGS
SEE ALSO
AUTHOR AND COPYRIGHT
Acknowledgments
perlre
− Perl regular expressions
DESCRIPTION
i, m, s, x
Regular Expressions
cntrl, graph, print, punct, xdigit
Extended Patterns
"(?#text)", "(?imsx−imsx)", "(?:pattern)", "(?imsx−imsx:pattern)", "(?=pattern)", "(?!pattern)", "(?<=pattern)", "(?<!pattern)", "(?{ code })", "(??{ code })", "(?>pattern)", "(?(condition)yes−pattern⎪no−pattern)", "(?(condition)yes−pattern)"
Backtracking
Version 8 Regular Expressions
Warning on \1 vs $1
Repeated patterns matching zero-length substring
Combining pieces together
"ST", "S⎪T", "S{REPEAT_COUNT}", "S{min,max}", "S{min,max}?", "S?", "S*", "S+", "S??", "S*?", "S+?", "(?>S)", "(?=S)", "(?<=S)", "(?!S)", "(?<!S)", "(??{ EXPR })", "(?(condition)yes−pattern⎪no−pattern)"
Creating custom RE engines
BUGS
SEE ALSO
perlref
− Perl references and nested data structures
NOTE
DESCRIPTION
Making References
Using References
Symbolic references
Not-so-symbolic references
Pseudo-hashes: Using an array as a hash
Function Templates
WARNING
SEE ALSO
perlform
− Perl formats
DESCRIPTION
Format Variables
NOTES
Footers
Accessing Formatting Internals
WARNINGS
perlboot
− Beginner’s Object-Oriented Tutorial
DESCRIPTION
If we could talk to the
animals...
Introducing the method invocation arrow
Invoking a barnyard
The extra parameter of method invocation
Calling a second method to simplify things
Inheriting the windpipes
A few notes about @ISA
Overriding the methods
Starting the search from a different place
The SUPER way of doing things
Where we’re at so far...
A horse is a horse, of course of course -- or is it?
Invoking an instance method
Accessing the instance data
How to build a horse
Inheriting the constructor
Making a method work with either classes or instances
Adding parameters to a method
More interesting instances
A horse of a different color
Summary
SEE ALSO
COPYRIGHT
perltoot
− Tom’s object-oriented tutorial for perl
DESCRIPTION
Creating a Class
Object Representation
Class Interface
Constructors and Instance Methods
Planning for the Future: Better Constructors
Destructors
Other Object Methods
Class Data
Accessing Class Data
Debugging Methods
Class Destructors
Documenting the Interface
Aggregation
Inheritance
Overridden Methods
Multiple Inheritance
UNIVERSAL: The Root of All Objects
Alternate Object Representations
Arrays as Objects
Closures as Objects
AUTOLOAD: Proxy Methods
Autoloaded Data Methods
Inherited Autoloaded Data Methods
Metaclassical Tools
Class::Struct
Data Members as Variables
NOTES
Object Terminology
SEE ALSO
AUTHOR AND COPYRIGHT
COPYRIGHT
Acknowledgments
perltootc
− Tom’s OO Tutorial for Class
Data in Perl
DESCRIPTION
Class Data in a Can
Class Data as Package Variables
Putting All Your Eggs in One
Basket
Inheritance Concerns
The Eponymous Meta-Object
Indirect References to Class Data
Monadic Classes
Translucent Attributes
Class Data as Lexical Variables
Privacy and Responsibility
File-Scoped Lexicals
More Inheritance Concerns
Locking the Door and Throwing Away the Key
Translucency Revisited
NOTES
SEE ALSO
AUTHOR AND COPYRIGHT
ACKNOWLEDGEMENTS
HISTORY
perlobj
− Perl objects
DESCRIPTION
An Object is Simply a Reference
A Class is Simply a Package
A Method is Simply a Subroutine
Method Invocation
WARNING
Default UNIVERSAL methods
isa( CLASS ), can( METHOD ), VERSION( [ NEED ] )
Destructors
Summary
Two-Phased Garbage Collection
SEE ALSO
perlbot
− Bag’o Object Tricks (the BOT
)
DESCRIPTION
OO SCALING TIPS
INSTANCE VARIABLES
SCALAR INSTANCE VARIABLES
INSTANCE VARIABLE INHERITANCE
OBJECT RELATIONSHIPS
OVERRIDING SUPERCLASS METHODS
USING RELATIONSHIP WITH SDBM
THINKING OF CODE REUSE
CLASS CONTEXT AND THE OBJECT
INHERITING A CONSTRUCTOR
DELEGATION
perltie
− how to hide an object class in a simple variable
SYNOPSIS
DESCRIPTION
Tying Scalars
TIESCALAR classname, LIST , FETCH this, STORE this, value, UNTIE this, DESTROY this
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
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
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
UNTIE this
The ""untie"" Gotcha
SEE ALSO
BUGS
AUTHOR
perlipc
− Perl interprocess communication (signals, fifos,
pipes, safe subprocesses, sockets, and semaphores)
DESCRIPTION
Signals
Named Pipes
WARNING
Using open() for IPC
Filehandles
Background Processes
Complete Dissociation of Child from Parent
Safe Pipe Opens
Bidirectional Communication with Another Process
Bidirectional Communication with Yourself
Sockets: Client/Server Communication
Internet Line Terminators
Internet TCP Clients and Servers
Unix-Domain TCP Clients and Servers
TCP Clients with IO: :Socket
A Simple Client
"Proto", "PeerAddr", "PeerPort"
A Webget Client
Interactive Client with IO: :Socket
TCP Servers with IO: :Socket
Proto, LocalPort, Listen, Reuse
UDP: Message
Passing
SysV IPC
NOTES
BUGS
AUTHOR
SEE ALSO
perlfork
− Perl’s fork() emulation (
EXPERIMENTAL , subject to change)
SYNOPSIS
DESCRIPTION
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
Resource limits
Killing the parent process
Lifetime of the parent process and pseudo-processes
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
BUGS
AUTHOR
SEE ALSO
perlnumber
− semantics of numbers and numeric operations in
Perl
SYNOPSIS
DESCRIPTION
Storing numbers
Numeric operators and numeric conversions
Flavors of Perl numeric operations
Arithmetic operators except, "no integer", Arithmetic operators except, "use integer", Bitwise operators, "no integer", Bitwise operators, "use integer", Operators which expect an integer, Operators which expect a string
AUTHOR
SEE ALSO
perlthrtut
− tutorial on threads in Perl
DESCRIPTION
What Is A Thread Anyway?
Threaded Program Models
Boss/Worker
Work Crew
Pipeline
Native threads
What kind of threads are perl threads?
Threadsafe Modules
Thread Basics
Basic Thread Support
Creating Threads
Giving up control
Waiting For A Thread To Exit
Errors In Threads
Ignoring A Thread
Threads And Data
Shared And Unshared Data
Thread Pitfall: Races
Controlling access: lock()
Thread Pitfall: Deadlocks
Queues: Passing Data Around
Threads And Code
Semaphores: Synchronizing Data Access
Basic semaphores, Advanced Semaphores
Attributes: Restricting Access
To Subroutines
Subroutine Locks
Methods
Locking A Subroutine
General Thread Utility Routines
What Thread Am I In?
Thread IDs
Are These Threads The Same?
What Threads Are Running?
A Complete Example
Conclusion
Bibliography
Introductory Texts
OS-Related References
Other References
Acknowledgements
AUTHOR
Copyrights
perlport
− Writing portable Perl
DESCRIPTION
Not all Perl programs have to be portable, Nearly all of Perl already is portable
ISSUES
Newlines
Numbers endianness and Width
Files and Filesystems
System Interaction
Interprocess Communication ( IPC )
External Subroutines ( XS )
Standard Modules
Time and Date
Character sets and character encoding
Internationalisation
System Resources
Security
Style
CPAN Testers
Mailing list: cpan-testers@perl.org, Testing results: http://testers.cpan.org/
PLATFORMS
Unix
DOS and Derivatives
Mac OS
VMS |
||
VOS |
EBCDIC Platforms
Acorn RISC OS
Other perls
FUNCTION IMPLEMENTATIONS
Alphabetical Listing of Perl Functions
-X FILEHANDLE , -X EXPR , -X, 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
CHANGES
v1.48, 02 February 2001, v1.47, 22 March 2000, v1.46, 12 February 2000, v1.45, 20 December 1999, v1.44, 19 July 1999, v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May 1999, v1.40, 11 April 1999, v1.39, 11 February 1999, v1.38, 31 December 1998, v1.37, 19 December 1998, v1.36, 9 September 1998, v1.35, 13 August 1998, v1.33, 06 August 1998, v1.32, 05 August 1998, v1.30, 03 August 1998, v1.23, 10 July 1998
Supported Platforms
SEE ALSO
AUTHORS / CONTRIBUTORS
VERSION
perllocale
− Perl locale handling (internationalization and
localization)
DESCRIPTION
PREPARING TO USE LOCALES
USING LOCALES
The use locale pragma
The setlocale function
Finding locales
LOCALE PROBLEMS
Temporarily fixing locale problems
Permanently fixing locale problems
Permanently fixing your system’s locale configuration
Fixing system locale configuration
The localeconv function
LOCALE CATEGORIES
Category
LC_COLLATE: Collation
Category LC_CTYPE: Character Types
Category LC_NUMERIC: Numeric Formatting
Category LC_MONETARY: Formatting of monetary
amounts
LC_TIME
Other categories
SECURITY
ENVIRONMENT
PERL_BADLANG , LC_ALL , LANGUAGE , LC_CTYPE , LC_COLLATE , LC_MONETARY , LC_NUMERIC , LC_TIME , LANG
NOTES
Backward compatibility
I18N:Collate obsolete
Sort speed and memory use impacts
write() and LC_NUMERIC
Freely available locale definitions
I18n and l10n
An imperfect standard
BUGS
Broken systems
SEE ALSO
HISTORY
perlunicode
− Unicode support in Perl (
EXPERIMENTAL , subject to change)
DESCRIPTION
Important Caveat
Input and Output Disciplines, Regular Expressions, "use utf8" still needed to enable a few features
Byte and Character semantics
Effects of character semantics
Character encodings for input and output
CAVEATS
SEE ALSO
perlebcdic
− Considerations for running Perl on
EBCDIC platforms
DESCRIPTION
COMMON CHARACTER CODE SETS
ASCII
ISO 8859
Latin 1 ( ISO 8859−1)
EBCDIC
13 variant characters
0037
1047
POSIX-BC
SINGLE OCTET TABLES
recipe 0, recipe 1, recipe 2, recipe 3, recipe 4
IDENTIFYING CHARACTER
CODE SETS
CONVERSIONS
tr///
iconv
C RTL
OPERATOR DIFFERENCES
FUNCTION DIFFERENCES
chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack()
REGULAR EXPRESSION
DIFFERENCES
SOCKETS
SORTING
Ignore ASCII vs.
EBCDIC sort differences.
MONO CASE then sort data.
Convert, sort data, then re convert.
Perform sorting on one type of machine only.
TRANFORMATION FORMATS
URL decoding and
encoding
uu encoding and decoding
Quoted-Printable encoding and decoding
Caesarian cyphers
Hashing order and checksums
I18N AND L10N
MULTI OCTET CHARACTER SETS
OS ISSUES
OS/400
IFS access
OS/390
chcp, dataset access, OS/390 iconv, locales
VM/ESA ?
POSIX-BC ?
BUGS
SEE ALSO
REFERENCES
AUTHOR
perlsec
− Perl security
DESCRIPTION
Laundering and Detecting
Tainted Data
Switches On the ""#!"" Line
Cleaning Up Your Path
Security Bugs
Protecting Your Programs
SEE ALSO
perlmod
− Perl modules (packages and symbol tables)
DESCRIPTION
Packages
Symbol Tables
Package Constructors and Destructors
Perl Classes
Perl Modules
SEE ALSO
perlmodlib
− constructing new Perl modules and finding existing
ones
DESCRIPTION
THE PERL MODULE LIBRARY
Pragmatic Modules
attributes, attrs, autouse, base, blib, bytes, charnames, constant, diagnostics, fields, filetest, integer, less, lib, locale, open, ops, overload, re, sigtrap, strict, subs, utf8, vars, warnings, warnings::register
Standard Modules
AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC, B::Concise, B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, B::Terse, B::Xref, Benchmark, ByteLoader, CGI , CGI: :Apache, CGI: :Carp, CGI: :Cookie, CGI: :Fast, CGI: :Pretty, CGI: :Push, CGI: :Switch, CGI: :Util, CPAN , CPAN: :FirstTime, CPAN: :Nox, Carp, Carp::Heavy, Class::Struct, Cwd, DB , DB_File, Devel::SelfStubber, DirHandle, Dumpvalue, 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, FindBin, GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO , IPC: :Open2, IPC: :Open3, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig, Net::Ping, Net::hostent, Net::netent, Net::protoent, Net::servent, O, Opcode, POSIX , 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::Overstrike, Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Symbol, Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread, Thread::Queue, Thread::Semaphore, Thread::Signal, Thread::Specific, 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, Win32
Extension Modules
CPAN
Africa
Asia
Central America
Europe
North America
Oceania
South America
Modules: Creation, Use, and Abuse
Guidelines for Module Creation
Adding a Copyright Notice
Guidelines for Converting Perl
4 Library Scripts into Modules
Guidelines for Reusing Application Code
NOTE
perlmodinstall
− Installing CPAN Modules
DESCRIPTION
PREAMBLE
DECOMPRESS the file, UNPACK the file into a directory, BUILD the module (sometimes unnecessary), INSTALL the module
PORTABILITY
HEY |
AUTHOR
COPYRIGHT
perlnewmod
− preparing a new module for distribution
DESCRIPTION
Warning
What should I make into a module?
Step-by-step: Preparing the ground
Look around, Check it’s new, Discuss the need, Choose a name, Check again
Step-by-step: Making the module
Start with h2xs, Use strict and warnings, Use Carp, Use Exporter − wisely!, Use plain old documentation, Write tests, Write the README
Step-by-step: Distributing your module
Get a CPAN user ID , "perl Makefile.PL; make test; make dist", Upload the tarball, Announce to the modules list, Announce to clpa, Fix bugs!
AUTHOR
SEE ALSO
perlfaq1
− General Questions About Perl ($Revision: 1.23 $,
$Date: 1999/05/23 16:08:30 $)
DESCRIPTION
What is Perl?
Who supports Perl? Who develops it? Why is it free?
Which version of Perl should I use?
What are perl4 and perl5?
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?
AUTHOR AND COPYRIGHT
perlfaq2
− Obtaining and Learning about Perl ($Revision: 1.32
$, $Date: 1999/10/14 18:46:09 $)
DESCRIPTION
What machines support Perl?
Where do I get it?
How can I get a binary version of Perl?
I don’t have a C compiler on my system. How can I
compile perl?
I copied the Perl binary from one machine to another, but
scripts
don’t work.
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
References, Tutorials, Task-Oriented, Special Topics
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? Perl Mongers? pm.org? perl.org?
AUTHOR AND COPYRIGHT
perlfaq3
− Programming Tools ($Revision: 1.38 $,
$Date: 1999/05/23 16:08:30 $)
DESCRIPTION
How do I do (anything)?
How can I use Perl interactively?
Is there a Perl shell?
How do I debug my Perl programs?
How do I profile my Perl programs?
How do I cross-reference my Perl programs?
Is there a pretty-printer (formatter) for Perl?
Is there a ctags for Perl?
Is there an IDE or Windows Perl Editor?
CodeMagicCD, Komodo, The Object System, PerlBuilder, Perl code magic, visiPerl+, GNU Emacs, MicroEMACS, XEmacs, Elvis, Vile, Vim, Codewright, MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, BBEdit and BBEdit Lite, Alpha
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 ""#!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 in my C
program; what am I doing wrong?
When I tried to run my script, I got this message. What does
it
mean?
What’s MakeMaker?
AUTHOR AND COPYRIGHT
perlfaq4
− Data Manipulation ($Revision: 1.49 $,
$Date: 1999/05/23 20:37:49 $)
DESCRIPTION
Data: Numbers
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?
Data: Dates
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?
Data: Strings
How do I validate input?
How do I unescape a string?
How do I remove consecutive pairs of characters?
How do I expand function calls in a string?
How do I find matching/nesting anything?
How do I reverse a string?
How do I expand tabs in a string?
How do I reformat a paragraph?
How can I access/change the first N letters of a string?
How do I change the Nth occurrence of something?
How can I count the number of occurrences of a substring
within a
string?
How do I capitalize all the words on one line?
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 << HERE documents
work?
1. There must be no space after the << part, 2. There (probably) should be a semicolon at the end, 3. You can’t (easily) have any space in front of the tag
Data: Arrays
What is the difference between
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?
a), b), c), d), e)
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?
Data: Hashes (Associative Arrays)
How do I process an entire
hash?
What happens if I add or remove keys from a hash while
iterating
over it?
How do I look up a hash element by value?
How can I know how many entries are in a hash?
How do I sort a hash (optionally by value instead of key)?
How can I always keep my hash sorted?
What’s the difference between
""delete"" and
""undef"" with hashes?
Why don’t my tied hashes make the defined/exists
distinction?
How do I reset an each() operation part-way through?
How can I get the unique keys from two hashes?
How can I store a multidimensional array in a
DBM file?
How can I make my hash remember the order I put elements
into it?
Why does passing a subroutine an undefined element in a hash
create
it?
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?
Data: Misc
How do I handle binary data
correctly?
How do I determine whether a scalar is a
number/whole/integer/float?
How do I keep persistent data across program calls?
How do I print out or copy a recursive data structure?
How do I define methods for every class/object?
How do I verify a credit card checksum?
How do I pack arrays of doubles or floats for
XS code?
AUTHOR AND COPYRIGHT
perlfaq5
− Files and Formats ($Revision: 1.38 $,
$Date: 1999/05/23 16:08:30 $)
DESCRIPTION
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
<*>?
Is there a leak/bug in glob()?
How can I open a file with a leading
"">"" or trailing blanks?
How can I reliably rename a file?
How can I lock a file?
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 ""tail −f""
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
""−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?
AUTHOR AND COPYRIGHT
perlfaq6
− Regexes ($Revision: 1.27 $, $Date:
1999/05/23 16:08:30 $)
DESCRIPTION
How can I hope to use regular
expressions without creating
illegible and unmaintainable code?
Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
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 while preserving
case on the RHS ?
How can I make ""\w"" match
national character sets?
How can I match a locale-smart version of
""/[a−zA−Z]/""?
How can I quote a variable to use in a regex?
What is ""/o"" really for?
How do I use a regular expression to strip C style comments
from a
file?
Can I use Perl regular expressions to match balanced text?
What does it mean that 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
""\b"" work for me?
Why does using $&, $’, or $’ slow my program
down?
What good is ""\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?
AUTHOR AND COPYRIGHT
perlfaq7
− Perl Language Issues ($Revision: 1.28 $,
$Date: 1999/05/23 20:36:18 $)
DESCRIPTION
Can I get a BNF/yacc/RE for the
Perl language?
What are all these $@%&* punctuation signs, and how do I
know when
to use them?
Do I always/never have to quote my strings or use semicolons
and
commas?
How do I skip some return values?
How do I temporarily block warnings?
What’s an extension?
Why do Perl operators have different precedence than C
operators?
How do I declare/create a structure?
How do I create a module?
How do I create a class?
How can I tell if a variable is tainted?
What’s a closure?
What is variable suicide and how can I prevent it?
How can I pass/return a {Function, FileHandle, Array, Hash,
Method,
Regex}?
Passing Variables and Functions, Passing Filehandles, Passing Regexes, Passing Methods
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) = <
FILE >;"" work right?
How do I redefine a builtin function, operator, or method?
What’s the difference between calling a function as
&foo and foo()?
How do I create a switch or case statement?
How can I catch accesses to undefined
variables/functions/methods?
Why can’t a method included in this same file be
found?
How can I find out my current package?
How can I comment out a large block of perl code?
How do I clear a package?
How can I use a variable as a variable name?
AUTHOR AND COPYRIGHT
perlfaq8
− System Interaction ($Revision: 1.39 $,
$Date: 1999/05/23 18:37:57 $)
DESCRIPTION
How do I find out which
operating system I’m running under?
How come exec() doesn’t return?
How do I do fancy stuff with the keyboard/screen/mouse?
Keyboard, Screen, Mouse
How do I print something out in
color?
How do I read just one key without waiting for a return key?
How do I check whether input is ready on the keyboard?
How do I clear the screen?
How do I get the screen size?
How do I ask the user for a password?
How do I read and write the serial port?
lockfiles, open mode, end of line, flushing output, non-blocking input
How do I decode encrypted
password files?
How do I start a process in the background?
STDIN , STDOUT , and STDERR are shared, Signals, Zombies
How do I trap control
characters/signals?
How do I modify the shadow password file on a Unix system?
How do I set the time and date?
How can I sleep() or alarm() for under a
second?
How can I measure time under a second?
How can I do an atexit() or
setjmp()/longjmp()? (Exception
handling)
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 do I get my changes to be visible?
Unix
How do I close a
process’s filehandle without waiting for it to
complete?
How do I fork a daemon process?
How do I 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?
AUTHOR AND COPYRIGHT
perlfaq9
− Networking ($Revision: 1.26 $, $Date:
1999/05/23 16:08:30 $)
DESCRIPTION
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 use MIME to make an attachment to a
mail message?
How do I read mail?
How do I find out my hostname/domainname/IP address?
How do I fetch a news article or the active newsgroups?
How do I fetch/put an FTP file?
How can I do RPC in Perl?
AUTHOR AND COPYRIGHT
perlcompile
− Introduction to the Perl Compiler-Translator
DESCRIPTION
Layout
B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
Using The Back Ends
The Cross Referencing Back End
i, &, s, r
The Decompiling Back End
The Lint Back End
The Simple C Back End
The Bytecode Back End
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
KNOWN PROBLEMS
AUTHOR
perlembed
− how to embed perl in your C program
DESCRIPTION
PREAMBLE
Use C from Perl?, Use a Unix program from Perl?, Use Perl from Perl?, Use C from C?, Use Perl from C?
ROADMAP
Compiling your C program
Adding a Perl interpreter to your C program
Calling a Perl subroutine from your C program
Evaluating a Perl statement from your C program
Performing Perl pattern matches and substitutions from your
C
program
Fiddling with the Perl stack from your C program
Maintaining a persistent interpreter
Maintaining multiple interpreter instances
Using Perl modules, which themselves use C libraries, from
your C
program
Embedding Perl under Win32
MORAL
AUTHOR
COPYRIGHT
perldebguts
− Guts of Perl debugging
DESCRIPTION
Debugger Internals
Writing Your Own Debugger
Frame Listing Output Examples
Debugging regular expressions
Compile-time output
"anchored" STRING "at" POS , "floating" STRING "at" POS1 ..POS2, "matching floating/anchored", "minlen", "stclass" TYPE , "noscan", "isall", "GPOS", "plus", "implicit", "with eval", "anchored(TYPE)"
Types of nodes
Run-time output
Debugging Perl memory usage
Using ""$ENV{PERL_DEBUG_MSTATS}""
"buckets SMALLEST(APPROX)..GREATEST(APPROX)", Free/Used, "Total sbrk(): SBRKed/SBRKs:CONTINUOUS", "pad: 0", "heads: 2192", "chain: 0", "tail: 6144"
Example of using −DL switch
"717", "002", "054", "602", "702", "704"
−DL details
"!!!", "!!", "!"
Limitations of −DL statistics
SEE ALSO
perlxstut,
perlXStut − Tutorial for writing XSUBs
DESCRIPTION
SPECIAL NOTES
make
Version caveat
Dynamic Loading versus Static Loading
TUTORIAL
EXAMPLE 1
EXAMPLE 2
What has gone on?
Writing good test scripts
EXAMPLE 3
What’s new here?
Input and Output Parameters
The XSUBPP Program
The TYPEMAP file
Warning about Output Arguments
EXAMPLE 4
What has happened here?
Anatomy of .xs file
Getting the fat out of XSUBs
More about XSUB arguments
The Argument Stack
Extending your Extension
Documenting your Extension
Installing your Extension
EXAMPLE 5
New Things in this Example
EXAMPLE 6
New Things in this Example
EXAMPLE 7 (Coming Soon)
EXAMPLE 8 (Coming Soon)
EXAMPLE 9 (Coming Soon)
Troubleshooting these Examples
See also
Author
Last Changed
perlxs
− XS language reference manual
DESCRIPTION
Introduction
On The Road
The Anatomy of an XSUB
The Argument Stack
The RETVAL Variable
The MODULE Keyword
The PACKAGE Keyword
The PREFIX Keyword
The OUTPUT: Keyword
The NO_OUTPUT Keyword
The CODE: Keyword
The INIT: Keyword
The NO_INIT Keyword
Initializing Function Parameters
Default Parameter Values
The PREINIT: Keyword
The SCOPE: Keyword
The INPUT: Keyword
The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords
Variable-length Parameter Lists
The C_ARGS: Keyword
The PPCODE: Keyword
Returning Undef And Empty Lists
The REQUIRE: Keyword
The CLEANUP: Keyword
The POST_CALL: Keyword
The BOOT: Keyword
The VERSIONCHECK: Keyword
The PROTOTYPES: Keyword
The PROTOTYPE: Keyword
The ALIAS: Keyword
The INTERFACE: Keyword
The INTERFACE_MACRO: Keyword
The INCLUDE: Keyword
The CASE: Keyword
The & Unary Operator
Inserting POD , Comments and C Preprocessor
Directives
Using XS With C ++
Interface Strategy
Perl Objects And C Structures
The Typemap
EXAMPLES
XS VERSION
AUTHOR
perlclib
− Internal replacements for standard C library
functions
DESCRIPTION
Conventions
"t", "p", "n", "s"
File Operations
File Input and Output
File Positioning
Memory Management and String Handling
Character Class Tests
stdlib.h functions
Miscellaneous functions
SEE ALSO
perlguts
− Introduction to the Perl API
DESCRIPTION
Variables
Datatypes
What is an "" IV ""?
Working with SVs
Offsets
What’s Really Stored in an SV ?
Working with AVs
Working with HVs
Hash API Extensions
References
Blessed References and Class Objects
Creating New Variables
Reference Counts and Mortality
Stashes and Globs
Double-Typed SVs
Magic Variables
Assigning Magic
Magic Virtual Tables
Finding Magic
Understanding the Magic of Tied Hashes and Arrays
Localizing changes
"SAVEINT(int i)", "SAVEIV(IV i)", "SAVEI32(I32 i)", "SAVELONG(long i)", "SAVESPTR(s)", "SAVEPPTR(p)", "SAVEFREESV(SV *sv)", "SAVEMORTALIZESV(SV *sv)", "SAVEFREEOP(OP *op)", "SAVEFREEPV(p)", "SAVECLEARSV(SV *sv)", "SAVEDELETE(HV *hv, char *key, I32 length)", "SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)", "SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)", "SAVESTACK_POS()", "SV* save_scalar(GV *gv)", "AV* save_ary(GV *gv)", "HV* save_hash(GV *gv)", "void save_item(SV *item)", "void save_list(SV **sarg, I32 maxsarg)", "SV* save_svref(SV **sptr)", "void save_aptr(AV **aptr)", "void save_hptr(HV **hptr)"
Subroutines
XSUBs and the Argument Stack
Calling Perl Routines from within C Programs
Memory Allocation
PerlIO
Putting a C value on Perl stack
Scratchpads
Scratchpads and recursion
Compiled code
Code tree
Examining the tree
Compile pass 1: check routines
Compile pass 1a: constant folding
Compile pass 2: context propagation
Compile pass 3: peephole optimization
Examining internal data
structures with the ""dump""
functions
How multiple interpreters and concurrency are supported
Background and
PERL_IMPLICIT_CONTEXT
So what happened to dTHR?
How do I use all this in extensions?
Should I do anything special if I call perl from multiple
threads?
Future Plans and PERL_IMPLICIT_SYS
Internal Functions
A, p, d, s, n, r, f, M, o, j, x
Formatted Printing of IVs, UVs, and NVs
Pointer-To-Integer and Integer-To-Pointer
Source Documentation
Unicode Support
What is Unicode, anyway?
How can I recognise a UTF8 string?
How does UTF8 represent Unicode characters?
How does Perl store UTF8 strings?
How do I convert a string to UTF8 ?
Is there anything else I need to know?
AUTHORS
SEE ALSO
perlcall
− Perl calling conventions from C
DESCRIPTION
An Error Handler, An Event Driven Program
THE CALL_ FUNCTIONS
call_sv, call_pv, call_method, call_argv
FLAG VALUES
G_VOID
G_SCALAR
G_ARRAY
G_DISCARD
G_NOARGS
G_EVAL
G_KEEPERR
Determining the Context
KNOWN PROBLEMS
EXAMPLES
No Parameters, Nothing returned
Passing Parameters
Returning a Scalar
Returning a list of values
Returning a list in a scalar context
Returning Data from Perl via the parameter list
Using G_EVAL
Using G_KEEPERR
Using call_sv
Using call_argv
Using call_method
Using GIMME_V
Using Perl to dispose of temporaries
Strategies for storing Callback Context Information
1. Ignore the problem − Allow only 1 callback, 2. Create a sequence of callbacks − hard wired limit, 3. Use a parameter to map to the Perl callback
Alternate Stack Manipulation
Creating and calling an anonymous subroutine in C
SEE ALSO
AUTHOR
DATE
perlutil
− utilities packaged with the Perl distribution
DESCRIPTION
DOCUMENTATION
perldoc, pod2man and pod2text, pod2html and pod2latex, pod2usage, podselect, podchecker, splain, roffitall
CONVERTORS
a2p, s2p, find2perl
Development
perlbug, h2ph, c2ph and pstruct, h2xs, dprofpp, perlcc
SEE ALSO
perlfilter
− Source Filters
DESCRIPTION
CONCEPTS
USING FILTERS
WRITING A SOURCE FILTER
WRITING A SOURCE FILTER IN C
Decryption Filters
CREATING A
SOURCE FILTER AS A SEPARATE EXECUTABLE
WRITING A SOURCE FILTER IN PERL
USING CONTEXT: THE DEBUG FILTER
CONCLUSION
REQUIREMENTS
AUTHOR
Copyrights
perldbmfilter
− Perl DBM Filters
SYNOPSIS
DESCRIPTION
filter_store_key,
filter_store_value, filter_fetch_key,
filter_fetch_value
The Filter
An Example -- the NULL termination problem.
Another Example -- Key is a C int.
SEE ALSO
AUTHOR
perlapi
− autogenerated documentation for the perl public
API
DESCRIPTION
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_from_utf8, bytes_to_utf8, 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, 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, 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_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_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, 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_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
AUTHORS
SEE ALSO
perlintern
− autogenerated documentation of purely internal Perl
functions
DESCRIPTION
is_gv_magical, LVRET , PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_last_in_gv, PL_ofs_sv, PL_rs
AUTHORS
SEE ALSO
perlapio
− perl’s IO abstraction
interface.
SYNOPSIS
DESCRIPTION
PerlIO *,
PerlIO_stdin(), PerlIO_stdout(),
PerlIO_stderr(), PerlIO_open(path,
mode), PerlIO_fdopen(fd,mode),
PerlIO_printf(f,fmt,...),
PerlIO_vprintf(f,fmt,a),
PerlIO_stdoutf(fmt,...),
PerlIO_read(f,buf,count),
PerlIO_write(f,buf,count),
PerlIO_close(f),
PerlIO_puts(f,s), PerlIO_putc(f,c),
PerlIO_ungetc(f,c),
PerlIO_getc(f),
PerlIO_eof(f),
PerlIO_error(f),
PerlIO_fileno(f),
PerlIO_clearerr(f),
PerlIO_flush(f),
PerlIO_tell(f),
PerlIO_seek(f,o,w), PerlIO_getpos(f,p),
PerlIO_setpos(f,p),
PerlIO_rewind(f),
PerlIO_tmpfile()
Co-existence with stdio
PerlIO_importFILE(f,flags), PerlIO_exportFILE(f,flags), PerlIO_findFILE(f), PerlIO_releaseFILE(p,f), PerlIO_setlinebuf(f), PerlIO_has_cntptr(f), PerlIO_get_ptr(f), PerlIO_get_cnt(f), PerlIO_canset_cnt(f), PerlIO_fast_gets(f), PerlIO_set_ptrcnt(f,p,c), PerlIO_set_cnt(f,c), PerlIO_has_base(f), PerlIO_get_base(f), PerlIO_get_bufsiz(f)
perltodo
− Perl TO-DO List
DESCRIPTION
Infrastructure
Mailing list archives
Bug tracking system
Regression Tests
Coverage, Regression, __DIE__, suidperl, The 25% slowdown from perl4 to perl5
Configure
Install HTML
Perl Language
64−bit Perl
Prototypes
Named prototypes, Indirect objects, Method calls, Context, Scoped subs
Perl Internals
magic_setisa
Garbage Collection
Reliable signals
Alternate runops() for signal despatch, Figure out how to die() in delayed sighandler, Add tests for Thread::Signal, Automatic tests against CPAN
Interpolated regex performance
bugs
Memory leaks from failed eval/regcomp
Make XS easier to use
Make embedded Perl easier to use
Namespace cleanup
MULTIPLICITY
MacPerl
Documentation
A clear division into tutorial
and reference
Remove the artificial distinction between operators and
functions
More tutorials
Regular expressions, I/O, pack/unpack, Debugging
Include a search tool
Include a locate tool
Separate function manpages by default
Users can’t find the manpages
Install ALL Documentation
Outstanding issues to be documented
Adapt www.linuxhq.com for Perl
Replace man with a perl program
Unicode tutorial
Modules
Update the POSIX
extension to conform with the POSIX 1003.1
Edition
2
Module versions
New modules
Profiler
Tie Modules
VecArray, SubstrArray, VirtualArray, ShiftSplice
Procedural options
RPC |
y2k localtime/gmtime
Export File::Find variables
Ioctl
Debugger attach/detach
Regular Expression debugger
Alternative RE Syntax
Bundled modules
Expect
GUI: :Native
Update semibroken auxiliary tools; h2ph, a2p, etc.
pod2html
Podchecker
Tom’s Wishes
Webperl
Mobile agents
POSIX on non-POSIX
Portable installations
Win32 Stuff
Rename new headers to be
consistent with the rest
Sort out the spawnvp() mess
Work out DLL versioning
Style-check
Would be nice to have
"pack "(stuff)*"", 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
Possible pragmas
’less’
Optimizations
constant function cache
foreach(reverse...)
Cache eval tree
rcatmaybe
Shrink opcode tables
Cache hash value
Optimize away @_ where possible
Optimize sort by { $a <=> $b }
Rewrite regexp parser for better integrated optimization
Vague possibilities
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
To Do Or Not To Do
Making my() work on
""package"" variables
""or"" testing defined not truth
""dynamic"" lexicals
""class""−based, rather than
package-based ""lexicals""
Threading
Modules
Testing
$AUTOLOAD
exit/die
External threads
Thread::Pool
thread-safety
Per-thread GVs
Compiler
Optimization
Byteperl
Precompiled modules
Executables
Typed lexicals
Win32
END blocks
_AUTOLOAD
comppadlist
Cached compilation
Recently Finished Tasks
Figure a way out of $^(capital
letter)
Filenames
Foreign lines
Namespace cleanup
ISA .pm
gettimeofday
autocroak?
perlhack
− How to hack at the Perl internals
DESCRIPTION
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
Keeping in sync
rsync’ing the source tree, Using rsync over the LAN , Using pushing over the NFS , rsync’ing the patches
Why rsync the source tree
It’s easier, It’s more recent, It’s more reliable
Why rsync the patches
It’s easier, It’s a good reference, Finding a start point, Finding how to fix a bug, Finding the source of misbehaviour
Submitting patches
the perlguts manpage, the perlxstut manpage and the perlxs manpage, the perlapi manpage, Porting/pumpkin.pod, The perl5−porters FAQ
Finding Your Way Around
Core modules, Documentation, Configure, Interpreter
Elements of the interpreter
Startup, Parsing, Optimization, Running
Internal Variable Types
Op Trees
Stacks
Argument stack, Mark stack, Save stack
Millions of Macros
Poking at Perl
Using a source-level debugger
run [args], break function_name, break source.c:xxx, step, next, continue, finish, ’enter’, print
Dumping Perl Data Structures
Patching
EXTERNAL TOOLS FOR DEBUGGING PERL
Rational Software’s
Purify
Purify on Unix
−Accflags=−DPURIFY, −Doptimize=’−g’, −Uusemymalloc, −Dusemultiplicity
Purify on NT
DEFINES , USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug
CONCLUSION
The Road goes ever on and on, down from the door where it began.
AUTHOR
perlhist
− the Perl history records
DESCRIPTION
INTRODUCTION
THE KEEPERS OF THE PUMPKIN
PUMPKIN ?
THE RECORDS
SELECTED RELEASE SIZES
SELECTED PATCH SIZES
THE KEEPERS OF THE RECORDS
perldelta
− what’s new for perl v5.6
DESCRIPTION
Summary of changes between 5.6.0 and 5.6.1
Security Issues
Core bug fixes
"UNIVERSAL::isa()", Memory leaks, Numeric conversions, qw(a\\b), caller(), Bugs in regular expressions, "slurp" mode, Autovivification of symbolic references to special variables, Lexical warnings, Spurious warnings and errors, glob(), Tainting, sort(), #line directives, Subroutine prototypes, map(), Debugger, Locales, PERL5OPT , chop(), Unicode support, 64−bit support, Compiler, Lvalue subroutines, IO: :Socket, File::Find, xsubpp, "no Module;", Tests
Core features
Configuration issues
Documentation
Bundled modules
B::Concise, File::Temp, Pod::LaTeX, Pod::Text::Overstrike, CGI , CPAN , Class::Struct, DB_File, Devel::Peek, File::Find, Getopt::Long, IO: :Poll, IPC: :Open3, Math::BigFloat, Math::Complex, Net::Ping, Opcode, Pod::Parser, Pod::Text, SDBM_File, Sys::Syslog, Tie::RefHash, Tie::SubstrHash
Platform-specific improvements
NCR MP-RAS , NonStop-UX
Interpreter cloning, threads,
and concurrency
Lexically scoped warning categories
Unicode and UTF-8 support
Support for interpolating named characters
""our"" declarations
Support for strings represented as a vector of ordinals
Improved Perl version numbering system
New syntax for declaring subroutine attributes
File and directory handles can be autovivified
open() with more than two arguments
64−bit support
Large file support
Long doubles
""more bits""
Enhanced support for sort() subroutines
""sort $coderef @foo"" allowed
File globbing implemented internally
Support for CHECK blocks
POSIX character class syntax [: :] supported
Better pseudo-random number generator
Improved ""qw//"" operator
Better worst-case behavior of hashes
pack() format ’Z’ supported
pack() format modifier ’!’ supported
pack() and unpack() support counted strings
Comments in pack() templates
Weak references
Binary numbers supported
Lvalue subroutines
Some arrows may be omitted in calls through references
Boolean assignment operators are legal lvalues
exists() is supported on subroutine names
exists() and delete() are supported on array
elements
Pseudo-hashes work better
Automatic flushing of output buffers
Better diagnostics on meaningless filehandle operations
Where possible, buffered data discarded from duped input
filehandle
eof() has the same old magic as <>
binmode() can be used to set :crlf and :raw modes
""−T"" filetest recognizes
UTF-8 encoded files as
""text""
system(), backticks and pipe open now reflect
exec() failure
Improved diagnostics
Diagnostics follow STDERR
More consistent close-on-exec behavior
syswrite() ease-of-use
Better syntax checks on parenthesized unary operators
Bit operators support full native integer width
Improved security features
More functional bareword prototype (*)
""require"" and
""do"" may be overridden
$^X variables may now have names longer than one character
New variable $^C reflects
""−c"" switch
New variable $^V contains Perl version as a string
Optional Y2K warnings
Arrays now always interpolate into double-quoted strings
Modules and Pragmata
Modules
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
Pragmata
Utility Changes
dprofpp
find2perl
h2xs
perlcc
perldoc
The Perl Debugger
Improved Documentation
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
Performance enhancements
Simple sort() using {
$a <=> $b } and the like are
optimized
Optimized assignments to lexical variables
Faster subroutine calls
delete(), each(), values() and hash
iteration are faster
Installation and Configuration Improvements
−Dusethreads means
something different
New Configure flags
Threadedness and 64−bitness now more daring
Long Doubles
−Dusemorebits
−Duselargefiles
installusrbinperl
SOCKS support
""−A"" flag
Enhanced Installation Directories
gcc automatically tried if ’cc’ does not seem to
be working
Platform specific changes
Supported platforms
DOS |
OS390 (OpenEdition MVS )
VMS |
Win32
Significant bug fixes
< HANDLE >
on empty files
""eval ’...’""
improvements
All compilation errors are true errors
Implicitly closed filehandles are safer
Behavior of list slices is more consistent
""(\$)"" prototype and
""$foo{a}""
""goto &sub"" and
AUTOLOAD
""−bareword"" allowed under
""use integer""
Failures in DESTROY()
Locale bugs fixed
Memory leaks
Spurious subroutine stubs after failed subroutine calls
Taint failures under
""−U""
END blocks and the
""−c"" switch
Potential to leak DATA filehandles
New or Changed Diagnostics
"%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
New tests
Incompatible Changes
Perl Source Incompatibilities
CHECK is a new keyword, Treatment of list slices of undef has changed, Format of $English::PERL_VERSION is different, Literals of the form "1.2.3" parse differently, Possibly changed pseudo-random number generator, Hashing function for hash keys has changed, "undef" fails on read only values, Close-on-exec bit may be set on pipe and socket handles, Writing ""$$1"" to mean ""${$}1"" is unsupported, delete(), each(), values() and "\(%h)", vec( EXPR ,OFFSET,BITS) enforces powers-of-two BITS , Text of some diagnostic output has changed, "%@" has been removed, Parenthesized not() behaves like a list operator, Semantics of bareword prototype "(*)" have changed, Semantics of bit operators may have changed on 64−bit platforms, More builtins taint their results
C Source Incompatibilities
"PERL_POLLUTE", "PERL_IMPLICIT_CONTEXT", "PERL_POLLUTE_MALLOC"
Compatible C Source API Changes
"PATCHLEVEL" is now "PERL_VERSION"
Binary Incompatibilities
Known Problems
Localizing a tied hash element
may leak memory
Known test failures
64−bit builds, Failure of Thread tests, NEXTSTEP 3.3 POSIX test failure, Tru64 (aka Digital UNIX , aka DEC OSF/1 ) lib/sdbm test failure with gcc
EBCDIC platforms
not fully supported
UNICOS/mk CC failures during Configure run
Arrow operator and arrays
Experimental features
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:
Obsolete Diagnostics
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 "$$<digit>" to mean "${$}<digit>" is deprecated
Reporting Bugs
SEE ALSO
HISTORY
perl5005delta,
perldelta − what’s new for perl5.005
DESCRIPTION
About the new versioning system
Incompatible Changes
WARNING: This
version is not binary compatible with Perl 5.004.
Default installation structure has changed
Perl Source Compatibility
C Source Compatibility
Binary Compatibility
Security fixes may affect compatibility
Relaxed new mandatory warnings introduced in 5.004
Licensing
Core Changes
Threads
Compiler
Regular Expressions
Many new and improved optimizations, Many bug fixes, New regular expression constructs, New operator for precompiled regular expressions, Other improvements, Incompatible changes
Improved malloc()
Quicksort is internally implemented
Reliable signals
Reliable stack pointers
More generous treatment of carriage returns
Memory leaks
Better support for multiple interpreters
Behavior of local() on array and hash elements is now
well-defined
""%!"" is transparently tied to the
the Errno manpage module
Pseudo-hashes are supported
""EXPR foreach EXPR"" is supported
Keywords can be globally overridden
""$^E"" is meaningful on Win32
""foreach (1..1000000)"" optimized
""Foo::"" can be used as implicitly
quoted package name
""exists $Foo::{Bar::}"" tests
existence of a package
Better locale support
Experimental support for 64−bit platforms
prototype() returns useful results on builtins
Extended support for exception handling
Re-blessing in DESTROY() supported for chaining
DESTROY() methods
All ""printf"" format
conversions are handled internally
New ""INIT"" keyword
New ""lock"" keyword
New ""qr//"" operator
""our"" is now a reserved word
Tied arrays are now fully supported
Tied handles support is better
4th argument to substr
Negative LENGTH argument to splice
Magic lvalues are now more magical
<> now reads in records
Supported Platforms
New Platforms
Changes in existing support
Modules and Pragmata
New Modules
B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, ExtUtils::Packlist, Fatal, IPC: :SysV, Test, Tie::Array, Tie::Handle, Thread, attrs, fields, re
Changes in existing modules
Benchmark, Carp, CGI , Fcntl, Math::Complex, Math::Trig, POSIX , DB_File, MakeMaker, CPAN , Cwd
Utility Changes
Documentation Changes
New Diagnostics
Ambiguous call resolved as CORE: :%s(), qualify as such or use &, Bad index while coercing array into hash, Bareword "%s" refers to nonexistent package, Can’t call method "%s" on an undefined value, Can’t 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
Obsolete Diagnostics
Can’t mktemp(), Can’t write to temp file for −e: %s, Cannot open temporary file, regexp too big
Configuration Changes
BUGS
SEE ALSO
HISTORY
perl5004delta,
perldelta − what’s new for perl5.004
DESCRIPTION
Supported Environments
Core Changes
List assignment to
%ENV works
Change to ""Can’t locate Foo.pm in
@INC"" error
Compilation option: Binary compatibility with 5.003
$PERL5OPT environment variable
Limitations on −M, −m, and
−T options
More precise warnings
Deprecated: Inherited
""AUTOLOAD"" for non-methods
Previously deprecated %OVERLOAD is no longer usable
Subroutine arguments created only when they’re
modified
Group vector changeable with
""$)""
Fixed parsing of $$<digit>, &$<digit>, etc.
Fixed localization of $<digit>, $&, etc.
No resetting of $. on implicit close
""wantarray"" may return undef
""eval EXPR"" determines value of
EXPR in scalar context
Changes to tainting checks
No glob() or <*>, No spawning if tainted $CDPATH, $ENV, $BASH_ENV, No spawning if tainted $TERM doesn’t look like a terminal name
New Opcode module and revised
Safe module
Embedding improvements
Internal change: FileHandle class based on
IO: :* classes
Internal change: PerlIO abstraction interface
New and changed syntax
$coderef->( PARAMS )
New and changed builtin constants
__PACKAGE__
New and changed builtin variables
$^E, $^H, $^M
New and changed builtin functions
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, "m//gc" does not reset search position on failure, "m//x" ignores whitespace before ?*+{}, nested "sub{}" closures work now, formats work right on changing lexicals
New builtin methods
isa( CLASS ), can( METHOD ), VERSION( [ NEED ] )
TIEHANDLE now supported
TIEHANDLE classname, LIST , PRINT this, LIST , PRINTF this, LIST , READ this LIST , READLINE this, GETC this, DESTROY this
Malloc enhancements
−DPERL_EMERGENCY_SBRK, −DPACK_MALLOC, −DTWO_POT_OPTIMIZE
Miscellaneous efficiency enhancements
Support for More Operating Systems
Win32
Plan 9
QNX |
AmigaOS
Pragmata
use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib ’dir’, use constant NAME => VALUE , use locale, use ops, use vmsish
Modules
Required Updates
Installation directories
Module information summary
Fcntl
IO |
Math::Complex
Math::Trig
DB_File
Net::Ping
Object-oriented overrides for builtin operators
Utility Changes
pod2html
Sends converted HTML to standard output
xsubpp
"void" XSUBs now default to returning nothing
C Language API Changes
"gv_fetchmethod" and "perl_call_sv", "perl_eval_pv", Extended API for manipulating hashes
Documentation Changes
the perldelta manpage, the perlfaq manpage, the perllocale manpage, the perltoot manpage, the perlapio manpage, the perlmodlib manpage, the perldebug manpage, the perlsec manpage
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 "−T" option, untie attempted while %d inner references still exist, Unrecognized character %s, Unsupported function fork, Use of "$$<digit>" to mean "${$}<digit>" 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
BUGS
SEE ALSO
HISTORY
perlaix,
README .aix − Perl version 5 on
IBM Unix ( AIX ) systems
DESCRIPTION
Compiling Perl 5 on AIX
OS level
Building Dynamic Extensions on AIX
The IBM ANSI C Compiler
Using GNU ’s gcc for building perl
Using Large Files with Perl
Threaded Perl
64−bit Perl
GDBM and Threads
NFS filesystems and utime(2)
AUTHOR
DATE
perlamiga
− Perl under Amiga OS
SYNOPSIS
DESCRIPTION
Prerequisites
Unix emulation for AmigaOS: ixemul.library, Version of Amiga OS
Starting Perl programs under
AmigaOS
Shortcomings of Perl under AmigaOS
INSTALLATION
Accessing documentation
Manpages
HTML
GNU ""info"" files
""LaTeX"" docs
BUILD
Prerequisites
Getting the perl source
Making
sh Configure −Dprefix=/ade −Dloclibpth=/ade/lib
Testing
Installing the built perl
AUTHORS
SEE ALSO
perlbs2000,
README .BS2000 − building and
installing Perl for BS2000 .
SYNOPSIS
DESCRIPTION
gzip
bison
Unpacking
Compiling
Testing
Install
Using Perl in the Posix-Shell
Using Perl in ""native""
BS2000
Floating point anomalies
AUTHORS
SEE ALSO
Mailing list
HISTORY
perlcygwin,
README .cygwin − Perl for Cygwin
SYNOPSIS
PREREQUISITES
Cygwin = GNU+Cygnus+Windows
(Don’t leave UNIX without it)
Cygwin Configuration
"PATH", nroff, Permissions
CONFIGURE
Strip Binaries
Optional Libraries
"−lcrypt", "−lgdbm" ("use GDBM_File"), "−ldb" ("use DB_File"), "−lcygipc" ("use IPC::SysV")
Configure-time Options
"−Uusedl", "−Uusemymalloc", "−Dusemultiplicity", "−Duseperlio", "−Duse64bitint", "−Duselongdouble", "−Dusethreads", "−Duselargefiles"
Suspicious Warnings
dlsym(), Win9x and "d_eofnblk", Compiler/Preprocessor defines
MAKE
Warnings
ld2 |
TEST
File Permissions
Hard Links
Filetime Granularity
Tainting Checks
/etc/group
Script Portability
Pathnames, Text/Binary, .exe, chown(), Miscellaneous
INSTALL
MANIFEST
Documentation, Build, Configure, Make, Install, Tests, Compiled Perl Source, Compiled Module Source, Perl Modules/Scripts
BUGS
AUTHORS
HISTORY
perldos
− Perl under DOS , W31, W95.
SYNOPSIS
DESCRIPTION
Prerequisites
DJGPP , Pthreads
Shortcomings of Perl under
DOS
Building
Testing
Installation
BUILDING AND INSTALLING MODULES
Prerequisites
Unpacking CPAN Modules
Building Non-XS Modules
Building XS Modules
AUTHOR
SEE ALSO
perlepoc,
README .epoc − Perl for
EPOC
SYNOPSIS
INTRODUCTION
INSTALLING PERL ON EPOC
STARTING PERL ON EPOC
STOPPING PERL ON EPOC
USING PERL ON EPOC
I/O Redirection
PATH Names
Editors
Features
Restrictions
Compiling Perl 5 on the EPOC cross compiling
environment
SUPPORT STATUS
AUTHOR
LAST UPDATE
perlhpux,
README .hpux − Perl version 5 on
Hewlett-Packard Unix ( HP-UX ) systems
DESCRIPTION
Compiling Perl 5 on
HP-UX
PA-RISC
PA-RISC 1.0
PA-RISC 1.1
PA-RISC 2.0
Portability Between PA-RISC Versions
Building Dynamic Extensions on HP-UX
The HP ANSI C Compiler
Using Large Files with Perl
Threaded Perl
64−bit Perl
GDBM and Threads
NFS filesystems and utime(2)
perl −P and //
AUTHOR
DATE
perlmachten,
README .machten − Perl version 5 on
Power MachTen systems
DESCRIPTION
Compiling Perl 5 on MachTen
Failures during ""make
test""
op/lexassign.t, pragma/warnings.t
Building external modules
AUTHOR
DATE
perlmacos,
README .macos − Perl under Mac
OS (Classic)
SYNOPSIS
DESCRIPTION
AUTHOR
DATE
perlmpeix, README .mpeix − Perl/iX for HP e3000 MPE
What’s
New
System Requirements
How to Obtain Perl/iX
Distribution Contents Highlights
README , public_html/feedback.cgi, 4, 6
Getting Started with Perl/iX
MPE/iX Implementation Considerations
Change History
perlos2
− Perl under OS/2 , DOS
, Win0.3*, Win0.95 and WinNT.
SYNOPSIS
DESCRIPTION
Target
Other OSes
Prerequisites
EMX , RSX , HPFS , pdksh
Starting Perl programs under
OS/2 (and DOS and...)
Starting OS/2 (and DOS )
programs under Perl
Frequently asked questions
""It does not
work""
I cannot run external programs
I cannot embed perl into my program, or use perl.dll
from my
program.
Is your program EMX-compiled with "−Zmt −Zcrtdll"?, Did you use the ExtUtils::Embed manpage?
""’’""
and pipe-""open"" do not work
under DOS .
Cannot start ""find.exe
""pattern"" file""
INSTALLATION
Automatic binary installation
"PERL_BADLANG", "PERL_BADFREE", Config.pm
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 .INF format, Pdksh
Warning
Accessing documentation
OS/2 .INF
file
Plain text
Manpages
HTML
GNU ""info"" files
.PDF files
""LaTeX"" docs
BUILD
The short story
Prerequisites
Getting perl source
Application of the patches
Hand-editing
Making
Testing
A lot of "bad free", Process terminated by SIGTERM/SIGINT , op/fs.t, op/stat.t
Installing the built perl
""a.out""−style build
Build FAQ
Some
""/"" became
""\"" in pdksh.
""’errno’"" −
unresolved external
Problems with tr or sed
Some problem (forget which ;−)
Library ... not found
Segfault in make
op/sprintf test failure
Specific (mis)features of OS/2 port
""setpriority"",
""getpriority""
""system()""
""extproc"" on the first line
Additional modules:
Prebuilt methods:
"File::Copy::syscopy", "DynaLoader::mod2fname", "Cwd::current_drive()",
"Cwd::sys_chdir(name)", "Cwd::change_drive(name)", "Cwd::sys_is_absolute(name)", |
"Cwd::sys_is_rooted(name)", "Cwd::sys_is_relative(name)", | |||
"Cwd::sys_cwd(name)", "Cwd::sys_abspath(name, dir)", "Cwd::extLibpath([type])", "Cwd::extLibpath_set( path [, type ] )", "OS2::Error(do_harderror,do_exception)", "OS2::Errors2Drive(drive)", OS2:\fIs0:SysInfo(), OS2:\fIs0:BootDrive(), "OS2::MorphPM(serve)", "OS2::UnMorphPM(serve)", "OS2::Serve_Messages(force)", "OS2::Process_Messages(force [, cnt])", "OS2::_control87(new,mask)", OS2:\fIs0:get_control87(), "OS2::set_control87_em(new=MCW_EM,mask=MCW_EM)" |
Prebuilt variables:
$OS2::emx_rev, $OS2::emx_env, $OS2::os_ver
Misfeatures
Modifications
"popen", "tmpnam", "tmpfile", "ctermid", "stat", "mkdir", "rmdir", "flock"
Identifying DLLs
Centralized management of resources
"HAB", "HMQ"
Perl flavors
perl.exe
perl_.exe
perl__.exe
perl___.exe
Why strange names?
Why dynamic linking?
Why chimera build?
ENVIRONMENT
""PERLLIB_PREFIX""
""PERL_BADLANG""
""PERL_BADFREE""
""PERL_SH_DIR""
""USE_PERL_FLOCK""
""TMP"" or
""TEMP""
Evolution
Priorities
DLL name mangling
Threading
Calls to external programs
Memory allocation
Threads
"COND_WAIT", os2.c
AUTHOR
SEE ALSO
perlos390,
README .os390 − building and installing
Perl for OS/390 .
SYNOPSIS
DESCRIPTION
Unpacking
Setup and utilities
Configure
Build, test, install
build anomalies
testing anomalies
installation anomalies
Usage Hints
Floating point anomalies
Modules and Extensions
AUTHORS
SEE ALSO
Mailing list
HISTORY
perlsolaris,
README .solaris − Perl version 5 on
Solaris systems
DESCRIPTION
Solaris Version Numbers.
RESOURCES
Solaris FAQ , Precompiled Binaries, Solaris Documentation
SETTING UP
File Extraction
Problems.
Compiler and Related Tools.
Environment
RUN CONFIGURE .
64−bit Issues.
Threads.
Malloc Issues.
MAKE PROBLEMS .
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
MAKE TEST
op/stat.t test 4
PREBUILT
BINARIES .
RUNTIME ISSUES .
Limits on Numbers of Open Files.
SOLARIS-SPECIFIC
MODULES .
SOLARIS-SPECIFIC PROBLEMS WITH MODULES .
Proc::ProcessTable
BSD: :Resource
Net::SSLeay
AUTHOR
LAST MODIFIED
perlvmesa,
README .vmesa − building and installing
Perl for VM/ESA .
SYNOPSIS
DESCRIPTION
Unpacking
Setup and utilities
Configure
Don’t turn on the compiler optimization flag "−O". There’s a bug in the compiler ( APAR PQ18812 ) that generates some bad code the optimizer is on, As VM/ESA doesn’t fully support the fork() API programs relying on this call will not work. I’ve replaced fork()/exec() with spawn() and the standalone exec() with spawn(). This has a side effect when opening unnamed pipes in a shell script: there is no child process generated under
testing anomalies
Usage Hints
When using perl on VM/ESA please keep in mind that the EBCDIC and ASCII character sets are different. Perl builtin functions that may behave differently under EBCDIC are mentioned in the perlport.pod document.
AUTHORS
SEE ALSO
Mailing list
perlvms
− VMS-specific documentation for Perl
DESCRIPTION
Installation
Organization of Perl Images
Core Images
Perl Extensions
Installing static extensions
Installing dynamic extensions
File specifications
Syntax
Wildcard expansion
Pipes
PERL5LIB
and PERLLIB
Command line
I/O redirection and
backgrounding
Command line switches
−i, −S, −u
Perl functions
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
Perl variables
%ENV, CRTL_ENV , CLISYM_[ LOCAL ], Any other string, $!, $^E, $?, $^S, $⎪
Standard modules with VMS-specific differences
SDBM_File
Revision date
AUTHOR
perlvos,
README .vos − Perl for Stratus
VOS
SYNOPSIS
Stratus POSIX Support
INSTALLING PERL IN VOS
Compiling Perl 5 on
VOS
Installing Perl 5 on VOS
USING PERL IN VOS
Unimplemented Features
Restrictions
SUPPORT STATUS
AUTHOR
LAST UPDATE
perlwin32
− Perl under Win32
SYNOPSIS
DESCRIPTION
Setting Up
Make, Command Shell, Borland C ++ , Microsoft Visual C ++ , Mingw32 with GCC
Building
Testing
Installation
Usage Hints
Environment Variables, File Globbing, Using perl from the command line, Building Extensions, Command-line Wildcard Expansion, Win32 Specific Extensions, Running Perl Scripts, Miscellaneous Things
BUGS AND CAVEATS
AUTHORS
Gary Ng <71564.1743@CompuServe.COM>, Gurusamy Sarathy <gsar@activestate.com>, Nick Ing-Simmons <nick@ni-s.u-net.com>
SEE ALSO
HISTORY
attrs
− set/get attributes of a subroutine (deprecated)
SYNOPSIS
DESCRIPTION
method, locked
re
− Perl pragma to alter regular expression
behaviour
SYNOPSIS
DESCRIPTION
attributes
− get/set subroutine or variable attributes
SYNOPSIS
DESCRIPTION
Built-in Attributes
locked, method, lvalue
Available Subroutines
get, reftype
Package-specific Attribute Handling
FETCH_ type_ATTRIBUTES, MODIFY_ type_ATTRIBUTES
Syntax of Attribute Lists
EXPORTS
Default exports
Available exports
Export tags defined
EXAMPLES
SEE ALSO
attrs
− set/get attributes of a subroutine (deprecated)
SYNOPSIS
DESCRIPTION
method, locked
autouse
− postpone load of modules until a function is
used
SYNOPSIS
DESCRIPTION
WARNING
AUTHOR
SEE ALSO
base
− Establish IS-A relationship with base
class at compile time
SYNOPSIS
DESCRIPTION
HISTORY
SEE ALSO
blib
− Use MakeMaker’s uninstalled version of a
package
SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
bytes
− Perl pragma to force byte semantics rather than
character semantics
SYNOPSIS
DESCRIPTION
SEE ALSO
charnames
− define character names for
"\N{named}" string literal escape.
SYNOPSIS
DESCRIPTION
CUSTOM TRANSLATORS
BUGS
constant
− Perl pragma to declare constants
SYNOPSIS
DESCRIPTION
NOTES
TECHNICAL NOTE
BUGS
AUTHOR
COPYRIGHT
diagnostics
− Perl compiler pragma to force verbose warning
diagnostics
SYNOPSIS
DESCRIPTION
The
""diagnostics"" Pragma
The splain Program
EXAMPLES
INTERNALS
BUGS
AUTHOR
fields
− compile-time class fields
SYNOPSIS
DESCRIPTION
new, phash
SEE ALSO
filetest
− Perl pragma to control the filetest permission
operators
SYNOPSIS
DESCRIPTION
subpragma access
integer
− Perl pragma to use integer arithmetic instead of
floating point
SYNOPSIS
DESCRIPTION
less
− perl pragma to request less of something from the
compiler
SYNOPSIS
DESCRIPTION
lib
− manipulate @INC at compile time
SYNOPSIS
DESCRIPTION
Adding directories to
@INC
Deleting directories from @INC
Restoring original @INC
SEE ALSO
AUTHOR
locale
− Perl pragma to use and avoid POSIX
locales for built-in operations
SYNOPSIS
DESCRIPTION
open
− perl pragma to set default disciplines for input and
output
SYNOPSIS
DESCRIPTION
UNIMPLEMENTED FUNCTIONALITY
SEE ALSO
ops
− Perl pragma to restrict unsafe operations when
compiling
SYNOPSIS
DESCRIPTION
SEE ALSO
overload
− Package for overloading perl operations
SYNOPSIS
DESCRIPTION
Declaration of
overloaded functions
Calling Conventions for Binary Operations
FALSE , TRUE , "undef"
Calling Conventions for
Unary Operations
Calling Conventions for Mutators
"++" and "−−", "x=" and other assignment versions
Overloadable Operations
Arithmetic operations, Comparison operations, Bit operations, Increment and decrement, Transcendental functions, Boolean, string and numeric conversion, Iteration, Dereferencing, Special
Inheritance and overloading
Strings as values of "use overload" directive, Overloading of an operation is inherited by derived classes
SPECIAL SYMBOLS FOR ""use overload""
Last Resort
Fallback
"undef", TRUE , defined, but FALSE
Copy Constructor
Example
MAGIC AUTOGENERATION
Assignment forms of arithmetic operations, Conversion operations, Increment and decrement, "abs($a)", Unary minus, Negation, Concatenation, Comparison operations, Iterator, Dereferencing, Copy operator
Losing overloading
Run-time Overloading
Public functions
overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
Overloading constants
integer, float, binary, q, qr
IMPLEMENTATION
Metaphor clash
Cookbook
Two-face scalars
Two-face references
Symbolic calculator
Really symbolic calculator
AUTHOR
DIAGNOSTICS
Odd number of arguments for overload::constant, ’%s’ is not an overloadable type, ’%s’ is not a code reference
BUGS
re
− Perl pragma to alter regular expression
behaviour
SYNOPSIS
DESCRIPTION
sigtrap
− Perl pragma to enable simple signal handling
SYNOPSIS
DESCRIPTION
OPTIONS
SIGNAL HANDLERS
stack-trace, die, handler your-handler
SIGNAL LISTS
normal-signals, error-signals, old-interface-signals
OTHER
untrapped, any, signal, number
EXAMPLES
strict
− Perl pragma to restrict unsafe constructs
SYNOPSIS
DESCRIPTION
"strict refs", "strict vars", "strict subs"
subs
− Perl pragma to predeclare sub names
SYNOPSIS
DESCRIPTION
utf8
− Perl pragma to enable/disable UTF-8
in source code
SYNOPSIS
DESCRIPTION
SEE ALSO
vars
− Perl pragma to predeclare global variable names
(obsolete)
SYNOPSIS
DESCRIPTION
warnings
− Perl pragma to control optional warnings
SYNOPSIS
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)
warnings::register − warnings import function
AnyDBM_File
− provide framework for multiple DBMs
SYNOPSIS
DESCRIPTION
DBM Comparisons
[0], [1], [2], [3]
SEE ALSO
AutoLoader
− load subroutines only on demand
SYNOPSIS
DESCRIPTION
Subroutine Stubs
Using AutoLoader’s AUTOLOAD
Subroutine
Overriding AutoLoader’s AUTOLOAD
Subroutine
Package Lexicals
Not Using AutoLoader
AutoLoader vs. SelfLoader
CAVEATS
SEE ALSO
AutoSplit
− split a package for autoloading
SYNOPSIS
DESCRIPTION
$keep, $check,
$modtime
Multiple packages
DIAGNOSTICS
B
− The Perl Compiler
SYNOPSIS
DESCRIPTION
OVERVIEW OF CLASSES
SV-RELATED
CLASSES
B::SV METHODS
REFCNT , FLAGS
B::IV METHODS
IV , IVX , UVX , int_value, needs64bits, packiv
B::NV METHODS
NV , NVX
B::RV METHODS
RV
B::PV METHODS
PV , PVX
B::PVMG METHODS
MAGIC , SvSTASH
B::MAGIC METHODS
MOREMAGIC , PRIVATE , TYPE , FLAGS , OBJ , PTR
B::PVLV METHODS
TARGOFF , TARGLEN , TYPE , TARG
B::BM METHODS
USEFUL , PREVIOUS , RARE , TABLE
B::GV METHODS
is_empty, NAME , SAFENAME , STASH , SV , IO , FORM , AV , HV , EGV , CV , CVGEN , LINE , FILE , FILEGV , GvREFCNT, FLAGS
B::IO METHODS
LINES , PAGE , PAGE_LEN , LINES_LEFT , TOP_NAME , TOP_GV , FMT_NAME , FMT_GV , BOTTOM_NAME , BOTTOM_GV , SUBPROCESS , IoTYPE, IoFLAGS
B::AV METHODS
FILL , MAX , OFF , ARRAY , AvFLAGS
B::CV METHODS
STASH , START , ROOT , GV , FILE , DEPTH , PADLIST , OUTSIDE , XSUB , XSUBANY , CvFLAGS
B::HV METHODS
FILL , MAX , KEYS , RITER , NAME , PMROOT , ARRAY
OP-RELATED
CLASSES
B::OP METHODS
next, sibling, name, ppaddr, desc, targ, type, seq, flags, private
B::UNOP METHOD
first
B::BINOP METHOD
last
B::LOGOP METHOD
other
B::LISTOP METHOD
children
B::PMOP METHODS
pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
B::SVOP METHOD
sv, gv
B::PADOP METHOD
padix
B::PVOP METHOD
pv
B::LOOP METHODS
redoop, nextop, lastop
B::COP METHODS
label, stash, file, cop_seq, arybase, line
FUNCTIONS EXPORTED BY ""B""
main_cv, init_av, main_root, main_start, comppadlist, sv_undef, sv_yes, sv_no, amagic_generation, walkoptree( OP , METHOD ), walkoptree_debug( DEBUG ), walksymtable( SYMREF , METHOD , RECURSE ), svref_2object( SV ), ppname( OPNUM ), hash( STR ), cast_I32(I), minus_c, cstring( STR ), class( OBJ ), threadsv_names
AUTHOR
B::Asmdata
− Autogenerated data about Perl ops, used to generate
bytecode
SYNOPSIS
DESCRIPTION
AUTHOR
B::Assembler
− Assemble Perl bytecode
SYNOPSIS
DESCRIPTION
AUTHORS
B::Bblock
− Walk basic blocks
SYNOPSIS
DESCRIPTION
AUTHOR
B::Bytecode
− Perl compiler’s bytecode backend
SYNOPSIS
DESCRIPTION
OPTIONS
−ofilename, −afilename, −-, −f, −fcompress-nullops, −fomit-sequence-numbers, −fbypass-nullops, −On, −D, −Do, −Db, −Da, −DC, −S, −upackage Stores package in the output. =back
EXAMPLES
BUGS
AUTHORS
B::C
− Perl compiler’s C backend
SYNOPSIS
DESCRIPTION
OPTIONS
−ofilename, −v, −-, −uPackname, −D, −Do, −Dc, −DA, −DC, −DM, −f, −fcog, −fno-cog, −On, −llimit
EXAMPLES
BUGS
AUTHOR
B::CC
− Perl compiler’s optimized C translation
backend
SYNOPSIS
DESCRIPTION
OPTIONS
−ofilename, −v, −-, −uPackname, −mModulename, −D, −Dr, −DO, −Ds, −Dp, −Dq, −Dl, −Dt, −f, −ffreetmps-each-bblock, −ffreetmps-each-loop, −fomit-taint, −On
EXAMPLES
BUGS
DIFFERENCES
Loops
Context of ""..""
Arithmetic
Deprecated features
AUTHOR
B::Concise
− Walk Perl syntax tree, printing concise info about
ops
SYNOPSIS
DESCRIPTION
OPTIONS
−basic, −exec, −tree, −compact, −loose, −vt, −ascii, −main, −basen, −bigendian, −littleendian, −concise, −terse, −linenoise, −debug, −env
FORMATTING SPECIFICATIONS
(x(exec_text;basic_text)x), (*(text)*), (*(text1;text2)*), (?(text1#varText2)?), #var, #varN, ~, #addr, #arg, #class, #classym, #coplabel, #exname, #extarg, #firstaddr, #flags, #flagval, #hyphenseq, #label, #lastaddr, #name, #NAME, #next, #nextaddr, #noise, #private, #privval, #seq, #seqnum, #sibaddr, #svaddr, #svclass, #svval, #targ, #targarg, #targarglife, #typenum
ABBREVIATIONS
OP flags
abbreviations
OP class abbreviations
AUTHOR
B::Debug
− Walk Perl syntax tree, printing debug info about
ops
SYNOPSIS
DESCRIPTION
AUTHOR
B::Deparse
− Perl compiler backend to produce perl code
SYNOPSIS
DESCRIPTION
OPTIONS
−l, −p, −q, −u PACKAGE , −s LETTERS , C, i NUMBER , T, v STRING ., −x LEVEL
USING B::Deparse AS A MODULE
Synopsis
Description
new |
coderef2text
BUGS
AUTHOR
B::Disassembler
− Disassemble Perl bytecode
SYNOPSIS
DESCRIPTION
AUTHOR
B::Lint
− Perl lint
SYNOPSIS
DESCRIPTION
OPTIONS AND LINT CHECKS
context, implicit-read and implicit-write, dollar-underscore, private-names, undefined-subs, regexp-variables, all, none
NON LINT-CHECK OPTIONS
−u Package
BUGS
AUTHOR
B::O,
O − Generic interface to Perl Compiler backends
SYNOPSIS
DESCRIPTION
CONVENTIONS
IMPLEMENTATION
AUTHOR
B::Showlex
− Show lexical variables used in functions or
files
SYNOPSIS
DESCRIPTION
AUTHOR
B::Stackobj
− Helper module for CC backend
SYNOPSIS
DESCRIPTION
AUTHOR
B::Stash − show what stashes are loaded
B::Terse
− Walk Perl syntax tree, printing terse info about
ops
SYNOPSIS
DESCRIPTION
AUTHOR
B::Xref
− Generates cross reference reports for Perl
programs
SYNOPSIS
DESCRIPTION
OPTIONS
"−oFILENAME", "−r", "−D[tO]"
BUGS
AUTHOR
Bblock,
B::Bblock − Walk basic blocks
SYNOPSIS
DESCRIPTION
AUTHOR
Benchmark
− benchmark running times of Perl code
SYNOPSIS
DESCRIPTION
Methods
new, debug, iters
Standard Exports
timeit( COUNT , CODE ), timethis ( COUNT , CODE , [ TITLE , [ STYLE ]] ), timethese ( COUNT , CODEHASHREF , [ STYLE ] ), timediff ( T1, T2 ), timestr ( TIMEDIFF , [ STYLE , [ FORMAT ] ] )
Optional Exports
clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUT , CODEHASHREF , [ STYLE ] ), cmpthese ( RESULTSHASHREF ), countit( TIME , CODE ), disablecache ( ), enablecache ( ), timesum ( T1, T2 )
NOTES
EXAMPLES
INHERITANCE
CAVEATS
SEE ALSO
AUTHORS
MODIFICATION HISTORY
ByteLoader
− load byte compiled perl code
SYNOPSIS
DESCRIPTION
AUTHOR
SEE ALSO
Bytecode,
B::Bytecode − Perl compiler’s bytecode
backend
SYNOPSIS
DESCRIPTION
OPTIONS
−ofilename, −afilename, −-, −f, −fcompress-nullops, −fomit-sequence-numbers, −fbypass-nullops, −On, −D, −Do, −Db, −Da, −DC, −S, −upackage Stores package in the output. =back
EXAMPLES
BUGS
AUTHORS
CGI
− Simple Common Gateway Interface Class
SYNOPSIS
ABSTRACT
DESCRIPTION
PROGRAMMING STYLE
CALLING CGI .PM ROUTINES
CREATING A NEW QUERY OBJECT (
OBJECT-ORIENTED STYLE ):
CREATING A NEW QUERY OBJECT FROM AN INPUT
FILE
FETCHING A LIST OF KEYWORDS FROM THE QUERY:
FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR
SCRIPT:
FETCHING THE VALUE OR VALUES OF A SINGLE
NAMED PARAMETER:
SETTING THE VALUE(S) OF A
NAMED PARAMETER:
APPENDING ADDITIONAL VALUES TO A NAMED
PARAMETER:
IMPORTING ALL PARAMETERS INTO A NAMESPACE:
DELETING A PARAMETER COMPLETELY:
DELETING ALL PARAMETERS:
DIRECT ACCESS TO THE PARAMETER LIST:
FETCHING THE PARAMETER LIST AS A HASH:
SAVING THE STATE OF THE SCRIPT TO A FILE:
RETRIEVING CGI ERRORS
USING THE FUNCTION-ORIENTED INTERFACE
:cgi, :form, :html2, :html3, :netscape, :html, :standard, :all
PRAGMAS
−any, −compile, −nosticky, −no_xhtml, −nph, −newstyle_urls, −oldstyle_urls, −autoload, −no_debug, −debug, −private_tempfiles
SPECIAL FORMS FOR IMPORTING HTML-TAG FUNCTIONS
1. start_table() (generates a < TABLE > tag), 2. end_table() (generates a </TABLE> tag), 3. start_ul() (generates a < UL > tag), 4. end_ul() (generates a </UL> tag)
GENERATING DYNAMIC DOCUMENTS
CREATING
A STANDARD HTTP HEADER:
GENERATING A REDIRECTION HEADER
CREATING THE HTML DOCUMENT HEADER
Parameters:, 4, 5, 6..
ENDING THE HTML
DOCUMENT:
CREATING A SELF-REFERENCING URL THAT
PRESERVES STATE INFORMATION:
OBTAINING THE SCRIPT ’S
URL
−absolute, −relative, −full, −path (−path_info), −query (−query_string), −base
MIXING POST AND URL PARAMETERS
CREATING STANDARD HTML ELEMENTS:
PROVIDING
ARGUMENTS TO HTML SHORTCUTS
THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
HTML SHORTCUTS AND LIST INTERPOLATION
NON-STANDARD HTML SHORTCUTS
AUTOESCAPING HTML
$escaped_string = escapeHTML("unescaped string");, $charset = charset([$charset]);, $flag = autoEscape([$flag]);
PRETTY-PRINTING HTML
CREATING FILL-OUT FORMS:
CREATING AN
ISINDEX TAG
STARTING AND ENDING A
FORM
application/x-www-form-urlencoded, multipart/form-data
CREATING A TEXT FIELD
Parameters
CREATING
A BIG TEXT FIELD
CREATING A PASSWORD FIELD
CREATING A FILE UPLOAD
FIELD
Parameters
CREATING
A POPUP MENU
CREATING A SCROLLING LIST
Parameters:
CREATING A GROUP OF RELATED CHECKBOXES
Parameters:
CREATING A STANDALONE CHECKBOX
Parameters:
CREATING A RADIO BUTTON GROUP
Parameters:
CREATING A SUBMIT BUTTON
Parameters:
CREATING
A RESET BUTTON
CREATING A DEFAULT BUTTON
CREATING A HIDDEN FIELD
Parameters:
CREATING A CLICKABLE IMAGE BUTTON
Parameters:
CREATING A JAVASCRIPT ACTION BUTTON
HTTP COOKIES
1. an expiration time, 2. a domain, 3. a path, 4. a "secure" flag, −name, −value, −path, −domain, −expires, −secure
WORKING WITH FRAMES
1. Create a <Frameset> document, 2. Specify the destination for the document in the HTTP header, 3. Specify the destination for the document in the < FORM > tag
LIMITED SUPPORT
FOR CASCADING STYLE SHEETS
DEBUGGING
DUMPING OUT ALL THE NAME/VALUE PAIRS
FETCHING ENVIRONMENT VARIABLES
Accept(), raw_cookie(), user_agent(), path_info(), path_translated(), remote_host(), script_name(), referer(), auth_type (), server_name (), virtual_host (), server_port (), server_software (), remote_user (), user_name (), request_method(), content_type(), http(), https()
USING NPH SCRIPTS
In the use statement, By calling the nph() method:, By using −nph parameters
Server Push
multipart_init(), multipart_start(), multipart_end(), multipart_final()
Avoiding Denial of Service Attacks
$CGI::POST_MAX, $CGI::DISABLE_UPLOADS, 1. On a script-by-script basis, 2. Globally for all scripts
COMPATIBILITY
WITH CGI-LIB .PL
AUTHOR INFORMATION
CREDITS
Matt Heffron (heffron@falstaff.css.beckman.com), James Taylor (james.taylor@srs.gov), Scott Anguish <sanguish@digifix.com>, Mike Jewell (mlj3u@virginia.edu), Timothy Shimmin (tes@kbs.citri.edu.au), Joergen Haegg (jh@axis.se), Laurent Delfosse (delfosse@delfosse.com), Richard Resnick (applepi1@aol.com), Craig Bishop (csb@barwonwater.vic.gov.au), Tony Curtis (tc@vcpc.univie.ac.at), Tim Bunce (Tim.Bunce@ig.co.uk), Tom Christiansen (tchrist@convex.com), Andreas Koenig (k@franz.ww.TU-Berlin.DE), Tim MacKenzie (Tim.MacKenzie@fulcrum.com.au), Kevin B. Hendricks (kbhend@dogwood.tyler.wm.edu), Stephen Dahmen (joyfire@inxpress.net), Ed Jordan (ed@fidalgo.net), David Alan Pisoni (david@cnation.com), Doug MacEachern (dougm@opengroup.org), Robin Houston (robin@oneworld.org), ...and many many more..
A COMPLETE
EXAMPLE OF A SIMPLE FORM-BASED SCRIPT
BUGS
SEE ALSO
CGI:
:Apache − Backward compatibility module for
CGI .pm
SYNOPSIS
ABSTRACT
DESCRIPTION
AUTHOR INFORMATION
BUGS
SEE ALSO
CGI:
:Carp, CGI: :Carp −
CGI routines for writing to the
HTTPD (or other) error log
SYNOPSIS
DESCRIPTION
REDIRECTING ERROR MESSAGES
MAKING PERL ERRORS APPEAR IN THE BROWSER
WINDOW
Changing the default message
MAKING WARNINGS
APPEAR AS HTML COMMENTS
CHANGE LOG
AUTHORS
SEE ALSO
CGI:
:Cookie − Interface to Netscape Cookies
SYNOPSIS
DESCRIPTION
USING CGI: :Cookie
1. expiration
date, 2. domain, 3. path, 4. secure
flag
Creating New Cookies
Sending the Cookie to the Browser
Recovering Previous Cookies
Manipulating Cookies
name(), value(), domain(), path(), expires()
AUTHOR
INFORMATION
BUGS
SEE ALSO
CGI:
:Fast − CGI Interface for Fast
CGI
SYNOPSIS
DESCRIPTION
OTHER PIECES OF THE PUZZLE
WRITING FASTCGI PERL SCRIPTS
INSTALLING FASTCGI SCRIPTS
USING FASTCGI SCRIPTS AS CGI SCRIPTS
CAVEATS
AUTHOR INFORMATION
BUGS
SEE ALSO
CGI:
:Pretty − module to produce nicely formatted
HTML code
SYNOPSIS
DESCRIPTION
Tags that won’t be
formatted
Customizing the Indenting
BUGS
AUTHOR
SEE ALSO
CGI:
:Push − Simple Interface to Server Push
SYNOPSIS
DESCRIPTION
USING CGI: :Push
−next_page,
−last_page, −type, −delay, −cookie,
−target, −expires, −nph
Heterogeneous Pages
Changing the Page Delay on the Fly
INSTALLING
CGI: :Push SCRIPTS
AUTHOR INFORMATION
BUGS
SEE ALSO
CGI:
:Switch − Backward compatibility module for defunct
CGI: :Switch
SYNOPSIS
ABSTRACT
DESCRIPTION
AUTHOR INFORMATION
BUGS
SEE ALSO
CGI:
:Util − Internal utilities used by
CGI module
SYNOPSIS
DESCRIPTION
AUTHOR INFORMATION
SEE ALSO
CPAN
− query, download and build perl modules from
CPAN sites
SYNOPSIS
DESCRIPTION
Interactive Mode
Searching for authors, bundles, distribution files and modules, make, test, install, clean modules or distributions, get, readme, look module or distribution, ls author, Signals
CPAN:
:Shell
autobundle
recompile
The four ""CPAN::*"" Classes:
Author, Bundle, Module, Distribution
Programmer’s interface
expand($type,@things), expandany(@things), Programming Examples
Methods in the other Classes
CPAN:\fIs0:Author::as_glimpse(), CPAN:\fIs0:Author::as_string(), CPAN:\fIs0:Author::email(), CPAN:\fIs0:Author::fullname(), CPAN:\fIs0:Author::name(), CPAN:\fIs0:Bundle::as_glimpse(), CPAN:\fIs0:Bundle::as_string(), CPAN:\fIs0:Bundle::clean(), CPAN:\fIs0:Bundle::contains(), CPAN::Bundle::force($method,@args),CPAN:\fIs0:Bundle::get(), CPAN:\fIs0:Bundle::inst_file(), CPAN:\fIs0:Bundle::inst_version(), CPAN:\fIs0:Bundle::uptodate(),CPAN:\fIs0:Bundle::install(), CPAN:\fIs0:Bundle::make(),CPAN:\fIs0:Bundle::readme(), CPAN:\fIs0:Bundle::test(), CPAN:\fIs0:Distribution::as_glimpse(), CPAN:\fIs0:Distribution::as_string(), CPAN:\fIs0:Distribution::clean(), CPAN:\fIs0:Distribution::containsmods(), CPAN:\fIs0:Distribution::cvs_import(), CPAN:\fIs0:Distribution::dir(), CPAN::Distribution::force($method,@args), CPAN:\fIs0:Distribution::get(), CPAN:\fIs0:Distribution::install(), CPAN:\fIs0:Distribution::isa_perl(), CPAN:\fIs0:Distribution::look(), CPAN:\fIs0:Distribution::make(), CPAN:\fIs0:Distribution::prereq_pm(), CPAN:\fIs0:Distribution::readme(), CPAN:\fIs0:Distribution::test(), CPAN:\fIs0:Distribution::uptodate(), CPAN:\fIs0:Index::force_reload(),CPAN:\fIs0:Index::reload(), CPAN:\fIs0:InfoObj::dump(),CPAN:\fIs0:Module::as_glimpse(), CPAN:\fIs0:Module::as_string(),CPAN:\fIs0:Module::clean(), CPAN:\fIs0:Module::cpan_file(), CPAN:\fIs0:Module::cpan_version(), CPAN:\fIs0:Module::cvs_import(), CPAN:\fIs0:Module::description(), CPAN::Module::force($method,@args),CPAN:\fIs0:Module::get(), CPAN:\fIs0:Module::inst_file(), CPAN:\fIs0:Module::inst_version(),CPAN:\fIs0:Module::install(), CPAN:\fIs0:Module::look(),CPAN:\fIs0:Module::make(), CPAN:\fIs0:Module::manpage_headline(), CPAN:\fIs0:Module::readme(),CPAN:\fIs0:Module::test(), CPAN:\fIs0:Module::uptodate(),CPAN:\fIs0:Module::userid()
CacheManager
Bundles
Prerequisites
Finding packages and VERSION
Debugging
Floppy, Zip, Offline
Mode
CONFIGURATION
"o
conf <scalar option>", "o conf
<scalar option> <value>", "o
conf <list option>", "o conf
<list option> [shift⎪pop]",
"o conf <list option>
[unshift⎪push⎪splice] <list>"
Note on urllist parameter’s format
urllist parameter has CD-ROM
support
SECURITY
EXPORT
POPULATE AN INSTALLATION WITH LOTS OF MODULES
WORKING WITH CPAN .pm BEHIND
FIREWALLS
Three basic types of firewalls
http firewall, ftp firewall, One way visibility, SOCKS , IP Masquerade
Configuring lynx or ncftp for going through a firewall
FAQ |
1), 2), 3), 4), 5), 6), 7), 8), 9), 10) |
BUGS
AUTHOR
TRANSLATIONS
SEE ALSO
CPAN:
:FirstTime − Utility for CPAN:
:Config file Initialization
SYNOPSIS
DESCRIPTION
CPANox,
CPAN: :Nox − Wrapper around
CPAN .pm without using any XS
module
SYNOPSIS
DESCRIPTION
SEE ALSO
Carp,
carp − warn of errors (from perspective of caller)
SYNOPSIS
DESCRIPTION
Forcing a Stack Trace
BUGS
Carp::Heavy
− Carp guts
SYNOPIS
DESCRIPTION
Class::Struct
− declare struct-like datatypes as Perl classes
SYNOPSIS
DESCRIPTION
The
""struct()"" function
Class Creation at Compile Time
Element Types and Accessor
Methods
Scalar ("’$’" or "’*$’"), Array ("’@’" or "’*@’"), Hash ("’%’" or "’*%’"), Class ("’Class_Name’" or "’*Class_Name’")
Initializing with ""new""
EXAMPLES
Example 1, Example 2, Example 3
Author and Modification History
Config
− access Perl configuration information
SYNOPSIS
DESCRIPTION
myconfig(), config_sh(), config_vars(@names)
EXAMPLE
WARNING
GLOSSARY
_ |
"_a", "_exe", "_o" | ||
a |
"afs", "alignbytes", "ansi2knr", "aphostname", "api_revision", "api_subversion", "api_version", "api_versionstring", "ar", "archlib", "archlibexp", "archname64", "archname", "archobjs", "awk" | ||
b |
"baserev", "bash", "bin", "bincompat5005", "binexp", "bison", "byacc", "byteorder" | ||
c |
"c", "castflags", "cat", "cc", "cccdlflags", "ccdlflags", "ccflags", "ccflags_uselargefiles", "ccname", "ccsymbols", "ccversion", "cf_by", "cf_email", "cf_time", "charsize", "chgrp", "chmod", "chown", "clocktype", "comm", "compress" | ||
C |
"CONFIGDOTSH", "contains", "cp", "cpio", "cpp", "cpp_stuff", "cppccsymbols", "cppflags", "cpplast", "cppminus", "cpprun", "cppstdin", "cppsymbols", "crosscompile", "cryptlib", "csh" | ||
d |
"d__fwalk", "d_access", "d_accessx", "d_alarm", "d_archlib", "d_atolf", "d_atoll", "d_attribut", "d_bcmp", "d_bcopy", "d_bincompat5005", "d_bsd", "d_bsdgetpgrp", "d_bsdsetpgrp", "d_bzero", "d_casti32", "d_castneg", "d_charvspr", "d_chown", "d_chroot", "d_chsize", "d_closedir", "d_const", "d_crypt", "d_csh", "d_cuserid", "d_dbl_dig", "d_difftime", "d_dirnamlen", "d_dlerror", "d_dlopen", "d_dlsymun", "d_dosuid", "d_drand48proto", "d_dup2", "d_eaccess", "d_endgrent", "d_endhent", "d_endnent", "d_endpent", "d_endpwent", "d_endsent", "d_eofnblk", "d_eunice", "d_fchmod", "d_fchown", "d_fcntl", "d_fcntl_can_lock", "d_fd_macros", "d_fd_set", "d_fds_bits", "d_fgetpos", "d_flexfnam", "d_flock", "d_fork", "d_fpathconf", "d_fpos64_t", "d_frexpl", "d_fs_data_s", "d_fseeko", "d_fsetpos", "d_fstatfs", "d_fstatvfs", "d_fsync", "d_ftello", "d_ftime", "d_Gconvert", "d_getcwd", "d_getespwnam", "d_getfsstat", "d_getgrent", "d_getgrps", "d_gethbyaddr", "d_gethbyname", "d_gethent", "d_gethname", "d_gethostprotos", "d_getlogin", "d_getmnt", "d_getmntent", "d_getnbyaddr", "d_getnbyname", "d_getnent", "d_getnetprotos", "d_getpagsz", "d_getpbyname", "d_getpbynumber", "d_getpent", "d_getpgid", "d_getpgrp2", "d_getpgrp", "d_getppid", "d_getprior", "d_getprotoprotos", "d_getprpwnam", "d_getpwent", "d_getsbyname", "d_getsbyport", "d_getsent", "d_getservprotos", "d_getspnam", "d_gettimeod", "d_gnulibc", "d_grpasswd", "d_hasmntopt", "d_htonl", "d_iconv", "d_index", "d_inetaton", "d_int64_t", "d_isascii", "d_isnan", "d_isnanl", "d_killpg", "d_lchown", "d_ldbl_dig", "d_link", "d_locconv", "d_lockf", "d_longdbl", "d_longlong", "d_lseekproto", "d_lstat", "d_madvise", "d_mblen", "d_mbstowcs", "d_mbtowc", "d_memchr", "d_memcmp", "d_memcpy", "d_memmove", "d_memset", "d_mkdir", "d_mkdtemp", "d_mkfifo", "d_mkstemp", "d_mkstemps", "d_mktime", "d_mmap", "d_modfl", "d_mprotect", "d_msg", "d_msg_ctrunc", "d_msg_dontroute", "d_msg_oob", "d_msg_peek", "d_msg_proxy", "d_msgctl", "d_msgget", "d_msgrcv", "d_msgsnd", "d_msync", "d_munmap", "d_mymalloc", "d_nice", "d_nv_preserves_uv", "d_nv_preserves_uv_bits", "d_off64_t", "d_old_pthread_create_joinable", "d_oldpthreads", "d_oldsock", "d_open3", "d_pathconf", "d_pause", "d_perl_otherlibdirs", "d_phostname", "d_pipe", "d_poll", "d_portable", "d_PRId64", "d_PRIeldbl", "d_PRIEUldbl", "d_PRIfldbl", "d_PRIFUldbl", "d_PRIgldbl", "d_PRIGUldbl", "d_PRIi64", "d_PRIo64", "d_PRIu64", "d_PRIx64", "d_PRIXU64", "d_pthread_yield", "d_pwage", "d_pwchange", "d_pwclass", "d_pwcomment", "d_pwexpire", "d_pwgecos", "d_pwpasswd", "d_pwquota", "d_qgcvt", "d_quad", "d_readdir", "d_readlink", "d_rename", "d_rewinddir", "d_rmdir", "d_safebcpy", "d_safemcpy", "d_sanemcmp", "d_sbrkproto", "d_sched_yield", "d_scm_rights", "d_SCNfldbl", "d_seekdir", "d_select", "d_sem", "d_semctl", "d_semctl_semid_ds", "d_semctl_semun", "d_semget", "d_semop", "d_setegid", "d_seteuid", "d_setgrent", "d_setgrps", "d_sethent", "d_setlinebuf", "d_setlocale", "d_setnent", "d_setpent", "d_setpgid", "d_setpgrp2", "d_setpgrp", "d_setprior", "d_setproctitle", "d_setpwent", "d_setregid", "d_setresgid", "d_setresuid", "d_setreuid", "d_setrgid", "d_setruid", "d_setsent", "d_setsid", "d_setvbuf", "d_sfio", "d_shm", "d_shmat", "d_shmatprototype", "d_shmctl", "d_shmdt", "d_shmget", "d_sigaction", "d_sigprocmask", "d_sigsetjmp", "d_socket", "d_socklen_t", "d_sockpair", "d_socks5_init", "d_sqrtl", "d_statblks", "d_statfs_f_flags", "d_statfs_s", "d_statvfs", "d_stdio_cnt_lval", "d_stdio_ptr_lval", "d_stdio_ptr_lval_nochange_cnt", "d_stdio_ptr_lval_sets_cnt", "d_stdio_stream_array", "d_stdiobase", "d_stdstdio", "d_strchr", "d_strcoll", "d_strctcpy", "d_strerrm", "d_strerror", "d_strtod", "d_strtol", "d_strtold", "d_strtoll", "d_strtoq", "d_strtoul", "d_strtoull", "d_strtouq", "d_strxfrm", "d_suidsafe", "d_symlink", "d_syscall", "d_sysconf", "d_sysernlst", "d_syserrlst", "d_system", "d_tcgetpgrp", "d_tcsetpgrp", "d_telldir", "d_telldirproto", "d_time", "d_times", "d_truncate", "d_tzname", "d_umask", "d_uname", "d_union_semun", "d_ustat", "d_vendorarch", "d_vendorbin", "d_vendorlib", "d_vfork", "d_void_closedir", "d_voidsig", "d_voidtty", "d_volatile", "d_vprintf", "d_wait4", "d_waitpid", "d_wcstombs", "d_wctomb", "d_xenix", "date", "db_hashtype", "db_prefixtype", "defvoidused", "direntrytype", "dlext", "dlsrc", "doublesize", "drand01", "dynamic_ext" | ||
e |
"eagain", "ebcdic", "echo", "egrep", "emacs", "eunicefix", "exe_ext", "expr", "extensions" | ||
f |
"fflushall", "fflushNULL", "find", "firstmakefile", "flex", "fpossize", "fpostype", "freetype", "full_ar", "full_csh", "full_sed" | ||
g |
"gccosandvers", "gccversion", "gidformat", "gidsign", "gidsize", "gidtype", "glibpth", "grep", "groupcat", "groupstype", "gzip" | ||
h |
"h_fcntl", "h_sysfile", "hint", "hostcat" | ||
i |
"i16size", "i16type", "i32size", "i32type", "i64size", "i64type", "i8size", "i8type", "i_arpainet", "i_bsdioctl", "i_db", "i_dbm", "i_dirent", "i_dld", "i_dlfcn", "i_fcntl", "i_float", "i_gdbm", "i_grp", "i_iconv", "i_ieeefp", "i_inttypes", "i_libutil", "i_limits", "i_locale", "i_machcthr", "i_malloc", "i_math", "i_memory", "i_mntent", "i_ndbm", "i_netdb", "i_neterrno", "i_netinettcp", "i_niin", "i_poll", "i_prot", "i_pthread", "i_pwd", "i_rpcsvcdbm", "i_sfio", "i_sgtty", "i_shadow", "i_socks", "i_stdarg", "i_stddef", "i_stdlib", "i_string", "i_sunmath", "i_sysaccess", "i_sysdir", "i_sysfile", "i_sysfilio", "i_sysin", "i_sysioctl", "i_syslog", "i_sysmman", "i_sysmode", "i_sysmount", "i_sysndir", "i_sysparam", "i_sysresrc", "i_syssecrt", "i_sysselct", "i_syssockio", "i_sysstat", "i_sysstatfs", "i_sysstatvfs", "i_systime", "i_systimek", "i_systimes", "i_systypes", "i_sysuio", "i_sysun", "i_sysutsname", "i_sysvfs", "i_syswait", "i_termio", "i_termios", "i_time", "i_unistd", "i_ustat", "i_utime", "i_values", "i_varargs", "i_varhdr", "i_vfork", "ignore_versioned_solibs", "inc_version_list", "inc_version_list_init", "incpath", "inews", "installarchlib", "installbin", "installman1dir", "installman3dir", "installprefix", "installprefixexp", "installprivlib", "installscript", "installsitearch", "installsitebin", "installsitelib", "installstyle", "installusrbinperl", "installvendorarch", "installvendorbin", "installvendorlib", "intsize", "issymlink", "ivdformat", "ivsize", "ivtype" | ||
k |
"known_extensions", "ksh" | ||
l |
"ld", "lddlflags", "ldflags", "ldflags_uselargefiles", "ldlibpthname", "less", "lib_ext", "libc", "libperl", "libpth", "libs", "libsdirs", "libsfiles", "libsfound", "libspath", "libswanted", "libswanted_uselargefiles", "line", "lint", "lkflags", "ln", "lns", "locincpth", "loclibpth", "longdblsize", "longlongsize", "longsize", "lp", "lpr", "ls", "lseeksize", "lseektype" | ||
m |
"mail", "mailx", "make", "make_set_make", "mallocobj", "mallocsrc", "malloctype", "man1dir", "man1direxp", "man1ext", "man3dir", "man3direxp", "man3ext" | ||
M |
"Mcc", "mips_type", "mkdir", "mmaptype", "modetype", "more", "multiarch", "mv", "myarchname", "mydomain", "myhostname", "myuname" | ||
n |
"n", "need_va_copy", "netdb_hlen_type", "netdb_host_type", "netdb_name_type", "netdb_net_type", "nm", "nm_opt", "nm_so_opt", "nonxs_ext", "nroff", "nveformat", "nvEUformat", "nvfformat", "nvFUformat", "nvgformat", "nvGUformat", "nvsize", "nvtype" | ||
o |
"o_nonblock", "obj_ext", "old_pthread_create_joinable", "optimize", "orderlib", "osname", "osvers", "otherlibdirs" | ||
p |
"package", "pager", "passcat", "patchlevel", "path_sep", "perl5", "perl" | ||
P |
"PERL_REVISION", "PERL_SUBVERSION", "PERL_VERSION", "perladmin", "perllibs", "perlpath", "pg", "phostname", "pidtype", "plibpth", "pm_apiversion", "pmake", "pr", "prefix", "prefixexp", "privlib", "privlibexp", "prototype", "ptrsize" | ||
q |
"quadkind", "quadtype" | ||
r |
"randbits", "randfunc", "randseedtype", "ranlib", "rd_nodata", "revision", "rm", "rmail", "runnm" | ||
s |
"sched_yield", "scriptdir", "scriptdirexp", "sed", "seedfunc", "selectminbits", "selecttype", "sendmail", "sh", "shar", "sharpbang", "shmattype", "shortsize", "shrpenv", "shsharp", "sig_count", "sig_name", "sig_name_init", "sig_num", "sig_num_init", "sig_size", "signal_t", "sitearch", "sitearchexp", "sitebin", "sitebinexp", "sitelib", "sitelib_stem", "sitelibexp", "siteprefix", "siteprefixexp", "sizesize", "sizetype", "sleep", "smail", "so", "sockethdr", "socketlib", "socksizetype", "sort", "spackage", "spitshell", "sPRId64", "sPRIeldbl", "sPRIEUldbl", "sPRIfldbl", "sPRIFUldbl", "sPRIgldbl", "sPRIGUldbl", "sPRIi64", "sPRIo64", "sPRIu64", "sPRIx64", "sPRIXU64", "src", "sSCNfldbl", "ssizetype", "startperl", "startsh", "static_ext", "stdchar", "stdio_base", "stdio_bufsiz", "stdio_cnt", "stdio_filbuf", "stdio_ptr", "stdio_stream_array", "strings", "submit", "subversion", "sysman" | ||
t |
"tail", "tar", "tbl", "tee", "test", "timeincl", "timetype", "touch", "tr", "trnl", "troff" | ||
u |
"u16size", "u16type", "u32size", "u32type", "u64size", "u64type", "u8size", "u8type", "uidformat", "uidsign", "uidsize", "uidtype", "uname", "uniq", "uquadtype", "use5005threads", "use64bitall", "use64bitint", "usedl", "useithreads", "uselargefiles", "uselongdouble", "usemorebits", "usemultiplicity", "usemymalloc", "usenm", "useopcode", "useperlio", "useposix", "usesfio", "useshrplib", "usesocks", "usethreads", "usevendorprefix", "usevfork", "usrinc", "uuname", "uvoformat", "uvsize", "uvtype", "uvuformat", "uvxformat", "uvXUformat" | ||
v |
"vendorarch", "vendorarchexp", "vendorbin", "vendorbinexp", "vendorlib", "vendorlib_stem", "vendorlibexp", "vendorprefix", "vendorprefixexp", "version", "versiononly", "vi", "voidflags" | ||
x |
"xlibpth", "xs_apiversion" | ||
z |
"zcat", "zip" |
NOTE
Cwd
− get pathname of current working directory
SYNOPSIS
DESCRIPTION
DB
− programmatic interface to the Perl debugging
API (draft, subject to change)
SYNOPSIS
DESCRIPTION
Global Variables
$DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, @DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, $DB::lineno
API Methods
CLIENT- >register(), CLIENT- >evalcode( STRING ), CLIENT- >skippkg(’D::hide’), CLIENT- >run(), CLIENT- >step(), CLIENT- >next(), CLIENT- >done()
Client Callback Methods
CLIENT- >init(), CLIENT- >prestop([ STRING ]), CLIENT- >stop(), CLIENT- >idle(), CLIENT- >poststop([ STRING ]), CLIENT- >evalcode( STRING ), CLIENT- >cleanup(), CLIENT- >output( LIST )
BUGS
AUTHOR
DB_File
− Perl5 access to Berkeley DB version
1.x
SYNOPSIS
DESCRIPTION
DB_HASH
, DB_BTREE ,
DB_RECNO
Using DB_File with Berkeley DB version 2 or 3
Interface to Berkeley DB
Opening a Berkeley DB Database File
Default Parameters
In Memory
Databases
DB_HASH
A Simple Example
DB_BTREE
Changing
the BTREE sort order
Handling Duplicate Keys
The get_dup() Method
The find_dup() Method
The del_dup() Method
Matching Partial
Keys
DB_RECNO
The
’bval’ Option
A Simple Example
Extra RECNO
Methods
$X->push(list) ;, $value = $X->pop ;, $X->shift, $X->unshift(list) ;, $X->length
Another Example
THE API INTERFACE
$status = $X->get($key, $value [, $flags]) ;, $status = $X->put($key, $value [, $flags]) ;, $status = $X->del($key [, $flags]) ;, $status = $X->fd ;, $status = $X->seq($key, $value, $flags) ;, $status = $X->sync([$flags]) ;
DBM FILTERS
filter_store_key,
filter_store_value, filter_fetch_key,
filter_fetch_value
The Filter
An Example -- the NULL termination problem.
Another Example -- Key is a C
int.
HINTS AND TIPS
Locking:
The Trouble with fd
Safe ways to lock a
database
Tie::DB_Lock, Tie::DB_LockFile, DB_File::Lock
Sharing
Databases With C Applications
The untie()
Gotcha
COMMON QUESTIONS
Why
is there Perl source in my database?
How do I store complex data structures with DB_File?
What does ""Invalid Argument"" mean?
What does ""Bareword ’DB_File’ not
allowed""
mean?
REFERENCES
HISTORY
BUGS
AVAILABILITY
COPYRIGHT
SEE ALSO
AUTHOR
Data::Dumper
− stringified perl data structures, suitable for both
printing and "eval"
SYNOPSIS
DESCRIPTION
Methods
PACKAGE −>new( ARRAYREF [, ARRAYREF ]), $OBJ−>Dump or PACKAGE −>Dump( ARRAYREF [, ARRAYREF ]), $OBJ−>Seen([ HASHREF ]), $OBJ−>Values([ ARRAYREF ]), $OBJ−>Names([ ARRAYREF ]), $OBJ−>Reset
Functions
Dumper( LIST )
Configuration Variables or Methods
$Data::Dumper::Indent or $OBJ−>Indent([ NEWVAL ]), $Data::Dumper::Purity or $OBJ−>Purity([ NEWVAL ]), $Data::Dumper::Pad or $OBJ−>Pad([ NEWVAL ]), $Data::Dumper::Varname or $OBJ−>Varname([ NEWVAL ]), $Data::Dumper::Useqq or $OBJ−>Useqq([ NEWVAL ]), $Data::Dumper::Terse or $OBJ−>Terse([ NEWVAL ]), $Data::Dumper::Freezer or $ OBJ −>Freezer([ NEWVAL ]), $Data::Dumper::Toaster or $ OBJ −>Toaster([ NEWVAL ]), $Data::Dumper::Deepcopy or $ OBJ −>Deepcopy([ NEWVAL ]), $Data::Dumper::Quotekeys or $ OBJ −>Quotekeys([ NEWVAL ]), $Data::Dumper::Bless or $ OBJ −>Bless([ NEWVAL ]), $Data::Dumper::Maxdepth or $ OBJ −>Maxdepth([ NEWVAL ])
Exports
Dumper
EXAMPLES
BUGS
AUTHOR
VERSION
SEE ALSO
Devel::DProf
− a Perl code profiler
SYNOPSIS
DESCRIPTION
PROFILE FORMAT
AUTOLOAD
ENVIRONMENT
BUGS
SEE ALSO
Devel::Peek
− A data debugging tool for the XS
programmer
SYNOPSIS
DESCRIPTION
Memory footprint debugging
EXAMPLES
A
simple scalar string
A simple scalar number
A simple scalar with an extra reference
A reference to a simple scalar
A reference to an array
A reference to a hash
Dumping a large array or hash
A reference to an SV which holds a C pointer
A reference to a
subroutine
EXPORTS
BUGS
AUTHOR
SEE ALSO
Devel::SelfStubber
− generate stubs for a SelfLoading module
SYNOPSIS
DESCRIPTION
DirHandle
− supply object methods for directory handles
SYNOPSIS
DESCRIPTION
Dumpvalue
− provides screen dump of Perl data.
SYNOPSIS
DESCRIPTION
Creation
"arrayDepth", "hashDepth", "compactDump", "veryCompact", "globPrint", "DumpDBFiles", "DumpPackages", "DumpReused", "tick", "HighBit", "printUndef", "UsageOnly", unctrl, subdump, bareStringify, quoteHighBit, stopDbSignal
Methods
dumpValue, dumpValues, dumpvars, set_quote, set_unctrl, compactDump, veryCompact, set, get
DynaLoader
− Dynamically load C libraries into Perl code
SYNOPSIS
DESCRIPTION
@dl_library_path, @dl_resolve_using, @dl_require_symbols, @dl_librefs, @dl_modules, dl_error(), $dl_debug, dl_findfile(), dl_expandspec(), dl_load_file(), dl_unload_file(), dl_loadflags(), dl_find_symbol(), dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), bootstrap()
AUTHOR
DynaLoader::XSLoader,
XSLoader − Dynamically load C libraries into Perl
code
SYNOPSIS
DESCRIPTION
AUTHOR
English
− use nice English (or awk) names for ugly punctuation
variables
SYNOPSIS
DESCRIPTION
BUGS
Env
− perl module that imports environment variables as
scalars or arrays
SYNOPSIS
DESCRIPTION
LIMITATIONS
AUTHOR
Errno
− System errno constants
SYNOPSIS
DESCRIPTION
CAVEATS
AUTHOR
COPYRIGHT
Exporter
− Implements default import method for modules
SYNOPSIS
DESCRIPTION
How
to Export
Selecting What To Export
Specialised Import Lists
Exporting without using Export’s import method
Module Version Checking
Managing Unknown Symbols
Tag Handling Utility
Functions
Exporter::Heavy
− Exporter guts
SYNOPIS
DESCRIPTION
ExtUtils::Command
− utilities to replace common UNIX
commands in Makefiles etc.
SYNOPSIS
DESCRIPTION
cat
eqtime src dst
rm_f files...
rm_f files...
touch files ..
mv source... destination
cp source... destination
chmod mode files..
mkpath directory..
test_f
file
BUGS
SEE ALSO
AUTHOR
ExtUtils::Embed
− Utilities for embedding Perl in C/C
++ applications
SYNOPSIS
DESCRIPTION
@EXPORT
FUNCTIONS
xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
EXAMPLES
SEE ALSO
AUTHOR
ExtUtils::Install
− install files from here to there
SYNOPSIS
DESCRIPTION
ExtUtils::Installed
− Inventory management of installed modules
SYNOPSIS
DESCRIPTION
USAGE
FUNCTIONS
new(), modules(), files(), directories(), directory_tree(), validate(), packlist(), version()
EXAMPLE
AUTHOR
ExtUtils::Liblist
− determine libraries to use and how to use them
SYNOPSIS
DESCRIPTION
For
static extensions, For dynamic extensions, For dynamic
extensions
EXTRALIBS
LDLOADLIBS and LD_RUN_PATH
BSLOADLIBS
PORTABILITY
VMS
implementation
Win32
implementation
SEE ALSO
ExtUtils::MM_Cygwin
− methods to override UN*X behaviour in
ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
canonpath, cflags, manifypods, perl_archive
perl_archive_after
ExtUtils::MM_OS2
− methods to override UN*X behaviour in
ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
ExtUtils::MM_Unix
− methods used by ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
METHODS
Preloaded methods
canonpath
catdir
catfile
curdir
rootdir
updir
SelfLoaded
methods
c_o (o)
cflags (o)
clean (o)
const_cccmd (o)
const_config (o)
const_loadlibs (o)
constants (o)
depend (o)
dir_target (o)
dist (o)
dist_basics (o)
dist_ci (o)
dist_core (o)
dist_dir (o)
dist_test (o)
dlsyms (o)
dynamic (o)
dynamic_bs (o)
dynamic_lib (o)
exescan
extliblist
file_name_is_absolute
find_perl
Methods to actually produce chunks of text for the
Makefile
fixin
force (o)
guess_name
has_link_code
htmlifypods (o)
init_dirscan
init_main
init_others
install (o)
installbin (o)
libscan (o)
linkext (o)
lsdir
macro (o)
makeaperl (o)
makefile (o)
manifypods (o)
maybe_command
maybe_command_in_dirs
needs_linking (o)
nicetext
parse_version
parse_abstract
pasthru (o)
path
perl_script
perldepend (o)
ppd
perm_rw (o)
perm_rwx (o)
pm_to_blib
post_constants (o)
post_initialize (o)
postamble (o)
prefixify
processPL (o)
realclean (o)
replace_manpage_separator
static (o)
static_lib (o)
staticmake (o)
subdir_x (o)
subdirs (o)
test (o)
test_via_harness (o)
test_via_script (o)
tool_autosplit (o)
tools_other (o)
tool_xsubpp (o)
top_targets (o)
writedoc
xs_c (o)
xs_cpp (o)
xs_o (o)
perl_archive
perl_archive_after
export_list
SEE ALSO
ExtUtils::MM_VMS
− methods to override UN*X behaviour in
ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
Methods always loaded
wraplist
rootdir
(override)
SelfLoaded
methods
guess_name (override)
find_perl (override)
path (override)
maybe_command (override)
maybe_command_in_dirs (override)
perl_script (override)
file_name_is_absolute (override)
replace_manpage_separator
init_others (override)
constants (override)
cflags (override)
const_cccmd (override)
pm_to_blib (override)
tool_autosplit (override)
tool_sxubpp (override)
xsubpp_version (override)
tools_other (override)
dist (override)
c_o (override)
xs_c (override)
xs_o (override)
top_targets (override)
dlsyms (override)
dynamic_lib (override)
dynamic_bs (override)
static_lib (override)
manifypods (override)
processPL (override)
installbin (override)
subdir_x (override)
clean (override)
realclean (override)
dist_basics (override)
dist_core (override)
dist_dir (override)
dist_test (override)
install (override)
perldepend (override)
makefile (override)
test (override)
test_via_harness (override)
test_via_script (override)
makeaperl (override)
nicetext (override)
ExtUtils::MM_Win32
− methods to override UN*X behaviour in
ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
catfile
constants (o)
static_lib (o)
dynamic_bs (o)
dynamic_lib (o)
canonpath
perl_script
pm_to_blib
test_via_harness (o)
tool_autosplit (override)
tools_other (o)
xs_o (o)
top_targets (o)
htmlifypods (o)
manifypods (o)
dist_ci (o)
dist_core (o)
pasthru (o)
ExtUtils::MakeMaker
− create an extension Makefile
SYNOPSIS
DESCRIPTION
How
To Write A Makefile.PL
Default Makefile Behaviour
make test
make testdb
make install
PREFIX and LIB attribute
AFS users
Static Linking of a new Perl Binary
Determination of Perl Library and Installation Locations
Which architecture dependent directory?
Using Attributes and
Parameters
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_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
Additional lowercase attributes
clean, depend, dist, dynamic_lib, linkext, macro, realclean, test, tool_autosplit
Overriding
MakeMaker Methods
Hintsfile support
Distribution
Support
make distcheck, make skipcheck, make distclean, make manifest, make distdir, make tardist, make dist, make uutardist, make shdist, make zipdist, make ci
Disabling an extension
ENVIRONMENT
PERL_MM_OPT
SEE
ALSO
AUTHORS
ExtUtils::Manifest
− utilities to write and check a
MANIFEST file
SYNOPSIS
DESCRIPTION
MANIFEST .SKIP
EXPORT_OK
GLOBAL VARIABLES
DIAGNOSTICS
"Not in MANIFEST:" file, "No such file:" file, "MANIFEST:" $!, "Added to MANIFEST:" file
SEE
ALSO
AUTHOR
ExtUtils::Miniperl,
writemain − write the C code for perlmain.c
SYNOPSIS
DESCRIPTION
SEE ALSO
ExtUtils::Mkbootstrap
− make a bootstrap file for use by DynaLoader
SYNOPSIS
DESCRIPTION
ExtUtils::Mksymlists
− write linker options files for dynamic extension
SYNOPSIS
DESCRIPTION
DLBASE , DL_FUNCS , DL_VARS , FILE , FUNCLIST , IMPORTS , NAME
AUTHOR
REVISION
ExtUtils::Packlist
− manage .packlist files
SYNOPSIS
DESCRIPTION
USAGE
FUNCTIONS
new(), read(), write(), validate(), packlist_file()
EXAMPLE
AUTHOR
ExtUtils::testlib
− add blib/* directories to @INC
SYNOPSIS
DESCRIPTION
Fatal
− replace functions with equivalents which succeed or
die
SYNOPSIS
DESCRIPTION
AUTHOR
Fcntl
− load the C Fcntl.h defines
SYNOPSIS
DESCRIPTION
NOTE
EXPORTED
SYMBOLS
File::Basename,
fileparse − split a pathname into pieces
SYNOPSIS
DESCRIPTION
fileparse_set_fstype, fileparse
EXAMPLES
"basename", "dirname"
File::CheckTree,
validate − run many filetest checks on a tree
SYNOPSIS
DESCRIPTION
File::Compare
− Compare files or filehandles
SYNOPSIS
DESCRIPTION
RETURN
AUTHOR
File::Copy
− Copy files or filehandles
SYNOPSIS
DESCRIPTION
Special behaviour if ""syscopy"" is defined ( OS/2 , VMS and Win32)
rmscopy($from,$to[,$date_flag])
RETURN
AUTHOR
File::DosGlob
− DOS like globbing and then some
SYNOPSIS
DESCRIPTION
EXPORTS (by request only)
BUGS
AUTHOR
HISTORY
SEE ALSO
File::Find,
find − traverse a file tree
SYNOPSIS
DESCRIPTION
"wanted", "bydepth", "preprocess", "postprocess", "follow", "follow_fast", "follow_skip", "no_chdir", "untaint", "untaint_pattern", "untaint_skip"
CAVEAT
File::Glob
− Perl extension for BSD glob
routine
SYNOPSIS
DESCRIPTION
"GLOB_ERR", "GLOB_MARK", "GLOB_NOCASE", "GLOB_NOCHECK", "GLOB_NOSORT", "GLOB_BRACE", "GLOB_NOMAGIC", "GLOB_QUOTE", "GLOB_TILDE", "GLOB_CSH", "GLOB_ALPHASORT"
DIAGNOSTICS
"GLOB_NOSPACE", "GLOB_ABEND"
NOTES
AUTHOR
File::Path
− create or remove directory trees
SYNOPSIS
DESCRIPTION
AUTHORS
File::Spec
− portably perform operations on file names
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHORS
File::Spec::Epoc
− methods for Epoc file specs
SYNOPSIS
DESCRIPTION
devnull
tmpdir
path
canonpath
splitpath
splitdir
catpath
abs2rel
rel2abs
SEE ALSO
File::Spec::Functions
− portably perform operations on file names
SYNOPSIS
DESCRIPTION
Exports
SEE ALSO
File::Spec::Mac
− File::Spec for MacOS
SYNOPSIS
DESCRIPTION
METHODS
canonpath
catdir
catfile
curdir
devnull
rootdir
tmpdir
updir
file_name_is_absolute
path
splitpath
splitdir
catpath
abs2rel
rel2abs
SEE ALSO
File::Spec::OS2
− methods for OS/2 file specs
SYNOPSIS
DESCRIPTION
File::Spec::Unix
− methods used by File::Spec
SYNOPSIS
DESCRIPTION
METHODS
canonpath
catdir
catfile
curdir
devnull
rootdir
tmpdir
updir
no_upwards
case_tolerant
file_name_is_absolute
path
join
splitpath
splitdir
catpath
abs2rel
rel2abs
SEE ALSO
File::Spec::VMS
− methods for VMS file specs
SYNOPSIS
DESCRIPTION
eliminate_macros
fixpath
Methods always
loaded
canonpath (override)
catdir
catfile
curdir (override)
devnull (override)
rootdir (override)
tmpdir (override)
updir (override)
case_tolerant (override)
path (override)
file_name_is_absolute (override)
splitpath (override)
splitdir (override)
catpath (override)
abs2rel (override)
rel2abs
(override)
SEE ALSO
File::Spec::Win32
− methods for Win32 file specs
SYNOPSIS
DESCRIPTION
devnull
tmpdir
catfile
canonpath
splitpath
splitdir
catpath
SEE ALSO
File::Temp
− return name and handle of a temporary file
safely
PORTABILITY
SYNOPSIS
DESCRIPTION
FUNCTIONS
tempfile
tempdir
MKTEMP
FUNCTIONS
mkstemp
mkstemps
mkdtemp
mktemp
POSIX
FUNCTIONS
tmpnam
tmpfile
ADDITIONAL
FUNCTIONS
tempnam
UTILITY FUNCTIONS
unlink0
PACKAGE VARIABLES
safe_level, STANDARD , MEDIUM , HIGH
TopSystemUID
WARNING
Temporary files and NFS
HISTORY
SEE ALSO
AUTHOR
File::stat
− by-name interface to Perl’s built-in
stat() functions
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
FileCache
− keep more files open than the system permits
SYNOPSIS
DESCRIPTION
BUGS
FileHandle
− supply object methods for filehandles
SYNOPSIS
DESCRIPTION
$fh->print, $fh->printf, $fh->getline, $fh->getlines
SEE ALSO
FindBin
− Locate directory of original perl script
SYNOPSIS
DESCRIPTION
EXPORTABLE VARIABLES
KNOWN BUGS
AUTHORS
COPYRIGHT
GDBM_File
− Perl5 access to the gdbm library.
SYNOPSIS
DESCRIPTION
AVAILABILITY
BUGS
SEE ALSO
Getopt::Long
− Extended processing of command line options
SYNOPSIS
DESCRIPTION
Command Line Options, an Introduction
Getting Started with
Getopt::Long
Simple
options
A little bit less simple options
Mixing command line option with other arguments
Options with values
Options with multiple values
Options with hash values
User-defined subroutines to handle options
Options with multiple names
Case and abbreviations
Summary of Option
Specifications
!, +, s, i, f, : type [ desttype ]
Advanced Possibilities
Object
oriented interface
Documentation and help texts
Storing options in a hash
Bundling
The lonesome dash
Argument
call-back
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)
Return
values and Errors
Legacy
Default
destinations
Alternative option starters
Configuration
variables
Trouble Shooting
Warning:
Ignoring ’!’ modifier for short option
GetOptions does not return a false result when an option is
not
supplied
AUTHOR
COPYRIGHT AND
DISCLAIMER
Getopt::Std,
getopt − Process single-character switches with switch
clustering
SYNOPSIS
DESCRIPTION
I18N::Collate
− compare 8−bit scalar data according to the
current locale
SYNOPSIS
DESCRIPTION
IO
− load various IO modules
SYNOPSIS
DESCRIPTION
IO:
:Dir − supply object methods for directory
handles
SYNOPSIS
DESCRIPTION
new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), rewind (), close (), tie %hash, IO: :Dir, DIRNAME [, OPTIONS ]
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:File − supply object methods for filehandles
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
METHODS
open( FILENAME [,MODE [,PERMS]] )
SEE
ALSO
HISTORY
IO:
:Handle − supply object methods for I/O handles
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new (), new_from_fd ( FD , MODE )
METHODS
$io->fdopen ( FD , MODE ), $io->opened, $io->getline, $io->getlines, $io->ungetc ( ORD ), $io->write ( BUF , LEN [, OFFSET ] ), $io->error, $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), $io->blocking ( [ BOOL ] ), $io->untaint
NOTE
SEE ALSO
BUGS
HISTORY
IO:
:Pipe − supply object methods for pipes
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ READER , WRITER ] )
METHODS
reader ([ ARGS ]), writer ([ ARGS ]), handles ()
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:Poll − Object interface to system poll call
SYNOPSIS
DESCRIPTION
METHODS
mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( IO ), handles( [ EVENT_MASK ] )
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:Seekable − supply seek based methods for I/O
objects
SYNOPSIS
DESCRIPTION
$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
HISTORY
IO:
:Select − OO interface to the select
system call
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ HANDLES ] )
METHODS
add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), count (), bits(), select ( READ , WRITE , ERROR [, TIMEOUT ] )
EXAMPLE
AUTHOR
COPYRIGHT
IO:
:Socket − Object interface to socket
communications
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ ARGS ] )
METHODS
accept([ PKG ]), socketpair( DOMAIN , TYPE , PROTOCOL ), timeout([ VAL ]), sockopt( OPT [, VAL ]), sockdomain, socktype, protocol, connected
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:Socket::INET − Object interface for
AF_INET domain sockets
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new
( [ ARGS ] )
METHODS
sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost ()
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:Socket::UNIX − Object interface for
AF_UNIX domain sockets
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ ARGS ] )
METHODS
hostpath(), peerpath()
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::Dir, IO: :Dir − supply
object methods for directory handles
SYNOPSIS
DESCRIPTION
new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), rewind (), close (), tie %hash, IO: :Dir, DIRNAME [, OPTIONS ]
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::File, IO: :File − supply
object methods for filehandles
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
METHODS
open( FILENAME [,MODE [,PERMS]] )
SEE
ALSO
HISTORY
IO:
:lib::IO::Handle, IO: :Handle −
supply object methods for I/O handles
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new (), new_from_fd ( FD , MODE )
METHODS
$io->fdopen ( FD , MODE ), $io->opened, $io->getline, $io->getlines, $io->ungetc ( ORD ), $io->write ( BUF , LEN [, OFFSET ] ), $io->error, $io->clearerr, $io->sync, $io->flush, $io->printflush ( ARGS ), $io->blocking ( [ BOOL ] ), $io->untaint
NOTE
SEE ALSO
BUGS
HISTORY
IO:
:lib::IO::Pipe, IO: :Pipe − supply
object methods for pipes
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ READER , WRITER ] )
METHODS
reader ([ ARGS ]), writer ([ ARGS ]), handles ()
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::Poll, IO: :Poll − Object
interface to system poll call
SYNOPSIS
DESCRIPTION
METHODS
mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( IO ), handles( [ EVENT_MASK ] )
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::Seekable, IO: :Seekable −
supply seek based methods for I/O objects
SYNOPSIS
DESCRIPTION
$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
HISTORY
IO:
:lib::IO::Select, IO: :Select −
OO interface to the select system call
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ HANDLES ] )
METHODS
add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), count (), bits(), select ( READ , WRITE , ERROR [, TIMEOUT ] )
EXAMPLE
AUTHOR
COPYRIGHT
IO:
:lib::IO::Socket, IO: :Socket −
Object interface to socket communications
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ ARGS ] )
METHODS
accept([ PKG ]), socketpair( DOMAIN , TYPE , PROTOCOL ), timeout([ VAL ]), sockopt( OPT [, VAL ]), sockdomain, socktype, protocol, connected
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::Socket::INET, IO: :Socket::INET
− Object interface for AF_INET domain
sockets
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new
( [ ARGS ] )
METHODS
sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost ()
SEE
ALSO
AUTHOR
COPYRIGHT
IO:
:lib::IO::Socket::UNIX, IO: :Socket::UNIX
− Object interface for AF_UNIX domain
sockets
SYNOPSIS
DESCRIPTION
CONSTRUCTOR
new ( [ ARGS ] )
METHODS
hostpath(), peerpath()
SEE
ALSO
AUTHOR
COPYRIGHT
IPC:
:Msg − SysV Msg IPC object class
SYNOPSIS
DESCRIPTION
METHODS
new ( KEY , FLAGS ), id, rcv ( BUF , LEN [, TYPE [, FLAGS ]] ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE , MSG [, FLAGS ] ), stat
SEE
ALSO
AUTHOR
COPYRIGHT
IPC:
:Open2, open2 − open a process for both reading and
writing
SYNOPSIS
DESCRIPTION
WARNING
SEE ALSO
IPC:
:Open3, open3 − open a process for reading,
writing, and error handling
SYNOPSIS
DESCRIPTION
WARNING
IPC:
:Semaphore − SysV Semaphore IPC
object class
SYNOPSIS
DESCRIPTION
METHODS
new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N , VALUE ), stat
SEE
ALSO
AUTHOR
COPYRIGHT
IPC:
:SysV − SysV IPC constants
SYNOPSIS
DESCRIPTION
ftok( PATH , ID )
SEE
ALSO
AUTHORS
COPYRIGHT
IPC:
:SysV::Msg, IPC: :Msg − SysV Msg
IPC object class
SYNOPSIS
DESCRIPTION
METHODS
new ( KEY , FLAGS ), id, rcv ( BUF , LEN [, TYPE [, FLAGS ]] ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE , MSG [, FLAGS ] ), stat
SEE
ALSO
AUTHOR
COPYRIGHT
IPC:
:SysV::Semaphore, IPC: :Semaphore −
SysV Semaphore IPC object class
SYNOPSIS
DESCRIPTION
METHODS
new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N , VALUE ), stat
SEE
ALSO
AUTHOR
COPYRIGHT
Math::BigFloat
− Arbitrary length float math package
SYNOPSIS
DESCRIPTION
number format, Error returns ’NaN’, Division is computed to, Rounding is performed
BUGS
AUTHOR
Math::BigInt
− Arbitrary size integer math package
SYNOPSIS
DESCRIPTION
Canonical notation, Input, Output
EXAMPLES
Autocreating constants
BUGS
AUTHOR
Math::Complex
− complex numbers and associated mathematical
functions
SYNOPSIS
DESCRIPTION
OPERATIONS
CREATION
STRINGIFICATION
CHANGED IN PERL 5.6
USAGE
ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
ERRORS DUE TO INDIGESTIBLE ARGUMENTS
BUGS
AUTHORS
Math::Trig
− trigonometric functions
SYNOPSIS
DESCRIPTION
TRIGONOMETRIC
FUNCTIONS
tan
ERRORS DUE TO DIVISION BY ZERO
SIMPLE ( REAL )
ARGUMENTS , COMPLEX
RESULTS
PLANE
ANGLE CONVERSIONS
RADIAL COORDINATE
CONVERSIONS
COORDINATE
SYSTEMS
3−D ANGLE
CONVERSIONS
cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
GREAT
CIRCLE DISTANCES
EXAMPLES
BUGS
AUTHORS
NDBM_File
− Tied access to ndbm files
SYNOPSIS
"O_RDONLY", "O_WRONLY", "O_RDWR"
DIAGNOSTICS
""ndbm store returned −1, errno 22, key ""..."" at ...""
BUGS AND WARNINGS
Net::Ping
− check a remote host for reachability
SYNOPSIS
DESCRIPTION
Functions
Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [, $timeout]);, $p->close();, pingecho($host [, $timeout]);
WARNING
NOTES
Net::hostent
− by-name interface to Perl’s built-in
gethost*() functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
Net::netent
− by-name interface to Perl’s built-in getnet*()
functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
Net::protoent
− by-name interface to Perl’s built-in
getproto*() functions
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Net::servent
− by-name interface to Perl’s built-in
getserv*() functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
O
− Generic interface to Perl Compiler backends
SYNOPSIS
DESCRIPTION
CONVENTIONS
IMPLEMENTATION
AUTHOR
ODBM_File
− Tied access to odbm files
SYNOPSIS
"O_RDONLY", "O_WRONLY", "O_RDWR"
DIAGNOSTICS
""odbm store returned −1, errno 22, key ""..."" at ...""
BUGS AND WARNINGS
Opcode
− Disable named opcodes when compiling perl code
SYNOPSIS
DESCRIPTION
NOTE
WARNING
Operator Names and Operator
Lists
an operator name (opname), an operator tag name (optag), a negated opname or optag, an operator set (opset)
Opcode Functions
opcodes, opset ( OP , ...), opset_to_ops ( OPSET ), opset_to_hex ( OPSET ), full_opset, empty_opset, invert_opset ( OPSET ), verify_opset ( OPSET , ...), define_optag ( OPTAG , OPSET ), opmask_add ( OPSET ), opmask, opdesc ( OP , ...), opdump ( PAT )
Manipulating
Opsets
TO DO (maybe)
Predefined Opcode
Tags
:base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math, :base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open, :filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided, :dangerous
SEE
ALSO
AUTHORS
Opcode::Safe,
Safe − Compile and execute code in restricted
compartments
SYNOPSIS
DESCRIPTION
a new namespace, an operator mask
WARNING
RECENT
CHANGES
Methods in class
Safe
permit ( OP , ...), permit_only ( OP , ...), deny ( OP , ...), deny_only ( OP , ...), trap ( OP , ...), untrap ( OP , ...), share ( NAME , ...), share_from ( PACKAGE , ARRAYREF ), varglob ( VARNAME ), reval ( STRING ), rdo ( FILENAME ), root ( NAMESPACE ), mask ( MASK )
Some Safety Issues
Memory, CPU , Snooping, Signals, State Changes
AUTHOR
Opcode::ops,
ops − Perl pragma to restrict unsafe operations when
compiling
SYNOPSIS
DESCRIPTION
SEE ALSO
POSIX
− Perl interface to IEEE Std
1003.1
SYNOPSIS
DESCRIPTION
NOTE
CAVEATS
FUNCTIONS
_exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2, atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown, clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime, cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv, execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror, fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf, fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos, fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid, getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid, getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10, longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy, memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open, opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts, qsort, raise, rand, read, readdir, realloc, remove, rename, rewind, rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid, setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp, sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen, strncat, strncmp, strncpy, strpbrk, strrchr, strspn, strstr, strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh, tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times, tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname, ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid, wcstombs, wctomb, write
CLASSES
POSIX: :SigAction
new
POSIX: :SigSet
new, addset, delset, emptyset, fillset, ismember
POSIX: :Termios
new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag, getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag, setoflag, setospeed, Baud rate values, Terminal interface values, c_cc field values, c_cflag field values, c_iflag field values, c_lflag field values, c_oflag field values
PATHNAME CONSTANTS
Constants
POSIX CONSTANTS
Constants
SYSTEM CONFIGURATION
Constants
ERRNO
Constants
FCNTL
Constants
FLOAT
Constants
LIMITS
Constants
LOCALE
Constants
MATH
Constants
SIGNAL
Constants
STAT
Constants, Macros
STDLIB
Constants
STDIO
Constants
TIME
Constants
UNISTD
Constants
WAIT
Constants, Macros
Pod::Checker,
podchecker() − check pod documents for
syntax errors
SYNOPSIS
OPTIONS/ARGUMENTS
podchecker()
−warnings => val
DESCRIPTION
DIAGNOSTICS
Errors
empty =headn, =over on line N 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 NAME , Unknown command " CMD ", Unknown interior-sequence " SEQ ", nested commands CMD <... CMD <...>...>, garbled entity STRING , Entity number out of range, malformed link L<>, nonempty Z<>, empty X<>, Spurious text after =pod / =cut, Spurious character(s) after =back
Warnings
multiple occurence of link target name, line containing nothing but whitespace in paragraph, file does not start with =head, previous =item has no contents, preceding non-item paragraph(s), =item type mismatch (one vs. two), N unescaped "<>" in paragraph, Unknown entity, No items in =over, No argument for =item, empty section in previous paragraph, Verbatim paragraph in NAME section
Hyperlinks
ignoring leading/trailing whitespace in link, (section) in ’$page’ deprecated, alternative text/node ’%s’ contains non-escaped ⎪ or /
RETURN
VALUE
EXAMPLES
INTERFACE
"Pod::Checker−>new( %options )"
"$checker−>poderror( @args )", "$checker−>poderror( {%opts}, @args )"
"$checker−>num_errors()"
"$checker−>name()"
"$checker−>node()"
"$checker−>idx()"
"$checker−>hyperlink()"
AUTHOR
Pod::Find
− find POD documents in directory
trees
SYNOPSIS
DESCRIPTION
""pod_find( { %opts } , @directories
)""
"−verbose => 1", "−perl => 1", "−script => 1", "−inc => 1"
""simplify_name(
$str )""
""pod_where( { %opts }, $pod
)""
"−inc => 1", "−dirs => [ $dir1, $dir2, ... ]", "−verbose => 1"
""contains_pod(
$file , $verbose )""
AUTHOR
SEE ALSO
Pod::Html
− module to convert pod files to
HTML
SYNOPSIS
DESCRIPTION
ARGUMENTS
backlink, css, flush, header, help, htmldir, htmlroot, index, infile, libpods, netscape, outfile, podpath, podroot, quiet, recurse, title, verbose
EXAMPLE
ENVIRONMENT
AUTHOR
SEE ALSO
COPYRIGHT
Pod::InputObjects
− objects representing POD input
paragraphs, commands, etc.
SYNOPSIS
REQUIRES
EXPORTS
DESCRIPTION
package Pod::InputSource, package Pod::Paragraph, package Pod::InteriorSequence, package Pod::ParseTree
Pod::InputSource
new()
name()
handle()
was_cutting()
Pod::Paragraph
Pod::Paragraph->new()
$pod_para->cmd_name()
$pod_para->text()
$pod_para->raw_text()
$pod_para->cmd_prefix()
$pod_para->cmd_separator()
$pod_para->parse_tree()
$pod_para->file_line()
Pod::InteriorSequence
Pod::InteriorSequence->new()
$pod_seq->cmd_name()
$pod_seq->prepend()
$pod_seq->append()
$pod_seq->nested()
$pod_seq->raw_text()
$pod_seq->left_delimiter()
$pod_seq->right_delimiter()
$pod_seq->parse_tree()
$pod_seq->file_line()
Pod::InteriorSequence::DESTROY()
Pod::ParseTree
Pod::ParseTree->new()
$ptree->top()
$ptree->children()
$ptree->prepend()
$ptree->append()
$ptree->raw_text()
Pod::ParseTree::DESTROY()
SEE ALSO
AUTHOR
Pod::LaTeX
− Convert Pod data to formatted Latex
SYNOPSIS
DESCRIPTION
OBJECT
METHODS
"initialize"
Data Accessors
AddPreamble
AddPostamble
Head1Level
Label
LevelNoNum
MakeIndex
ReplaceNAMEwithSection
StartWithNewPage
TableOfContents
UniqueLabels
UserPreamble
UserPostamble
Lists
Subclassed
methods
begin_pod
end_pod
command
verbatim
textblock
interior_sequence
List Methods
begin_list
end_list
add_item
Methods for
headings
head
Internal methods
_output
_replace_special_chars
_create_label
_create_index
_clean_latex_commands
NOTES
SEE ALSO
AUTHORS
COPYRIGHT
REVISION
Pod::Man
− Convert POD data to formatted *roff
input
SYNOPSIS
DESCRIPTION
center, date, fixed, fixedbold, fixeditalic, fixedbolditalic, quotes, release, section
DIAGNOSTICS
roff font should be 1 or 2 chars, not "%s", Invalid link %s, Invalid quote specification "%s", %s:%d: Unknown command paragraph "%s", Unknown escape E<%s>, Unknown sequence %s, %s: Unknown command paragraph "%s" on line %d, Unmatched =back
BUGS
SEE ALSO
AUTHOR
Pod::ParseUtils
− helpers for POD parsing and
conversion
SYNOPSIS
DESCRIPTION
Pod::List
Pod::List->new()
$list->file()
$list->start()
$list->indent()
$list->type()
$list->rx()
$list->item()
$list->parent()
$list->tag()
Pod::Hyperlink
Pod::Hyperlink->new()
$link->parse($string)
$link->markup($string)
$link->text()
$link->warning()
$link->file(), $link->line()
$link->page()
$link->node()
$link->alttext()
$link->type()
$link->link()
Pod::Cache
Pod::Cache->new()
$cache->item()
$cache->find_page($name)
Pod::Cache::Item
Pod::Cache::Item->new()
$cacheitem->page()
$cacheitem->description()
$cacheitem->path()
$cacheitem->file()
$cacheitem->nodes()
$cacheitem->find_node($name)
$cacheitem->idx()
AUTHOR
SEE ALSO
Pod::Parser
− base class for creating POD filters
and translators
SYNOPSIS
REQUIRES
EXPORTS
DESCRIPTION
QUICK OVERVIEW
PARSING
OPTIONS
−want_nonPODs (default: unset), −process_cut_cmd (default: unset), −warnings (default: unset)
RECOMMENDED
SUBROUTINE/METHOD OVERRIDES
command()
"$cmd", "$text", "$line_num", "$pod_para"
verbatim()
"$text", "$line_num", "$pod_para"
textblock()
"$text", "$line_num", "$pod_para"
interior_sequence()
OPTIONAL SUBROUTINE/METHOD OVERRIDES
new()
initialize()
begin_pod()
begin_input()
end_input()
end_pod()
preprocess_line()
preprocess_paragraph()
METHODS FOR PARSING AND PROCESSING
parse_text()
−expand_seq => code-ref⎪method-name, −expand_text => code-ref⎪method-name, −expand_ptree => code-ref⎪method-name
interpolate()
parse_paragraph()
parse_from_filehandle()
parse_from_file()
ACCESSOR METHODS
errorsub()
cutting()
parseopts()
output_file()
output_handle()
input_file()
input_handle()
input_streams()
top_stream()
PRIVATE METHODS AND DATA
_push_input_stream()
_pop_input_stream()
TREE-BASED PARSING
SEE ALSO
AUTHOR
Pod::Plainer
− Perl extension for converting Pod to old style
Pod.
SYNOPSIS
DESCRIPTION
EXPORT
AUTHOR
SEE ALSO
Pod::Select,
podselect() − extract selected sections of
POD from input
SYNOPSIS
REQUIRES
EXPORTS
DESCRIPTION
SECTION SPECIFICATIONS
RANGE SPECIFICATIONS
OBJECT METHODS
curr_headings()
select()
add_selection()
clear_selections()
match_section()
is_selected()
EXPORTED FUNCTIONS
podselect()
−output, −sections, −ranges
PRIVATE
METHODS AND DATA
_compile_section_spec()
$self->{_SECTION_HEADINGS}
$self->{_SELECTED_SECTIONS}
SEE ALSO
AUTHOR
Pod::Text
− Convert POD data to formatted
ASCII text
SYNOPSIS
DESCRIPTION
alt, indent, loose, quotes, sentence, width
DIAGNOSTICS
Bizarre space in item, Can’t open %s for reading: %s, Invalid quote specification "%s", %s:%d: Unknown command paragraph "%s", Unknown escape: %s, Unknown sequence: %s, Unmatched =back
RESTRICTIONS
NOTES
SEE ALSO
AUTHOR
Pod::Text::Color
− Convert POD data to formatted color
ASCII text
SYNOPSIS
DESCRIPTION
BUGS
SEE ALSO
AUTHOR
Pod::Text::Overstrike
− Convert POD data to formatted
overstrike text
SYNOPSIS
DESCRIPTION
BUGS
SEE ALSO
AUTHOR
Pod::Text::Termcap,
Pod::Text::Color − Convert POD data to
ASCII text with format escapes
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
Pod::Usage,
pod2usage() − print a usage message from
embedded pod documentation
SYNOPSIS
ARGUMENTS
"−message", "−msg", "−exitval", "−verbose", "−output", "−input", "−pathlist"
DESCRIPTION
EXAMPLES
Recommended Use
CAVEATS
AUTHOR
ACKNOWLEDGEMENTS
SDBM_File
− Tied access to sdbm files
SYNOPSIS
DESCRIPTION
"O_RDONLY", "O_WRONLY", "O_RDWR"
DIAGNOSTICS
""sdbm store returned −1, errno 22, key ""..."" at ...""
BUGS AND WARNINGS
Safe
− Compile and execute code in restricted
compartments
SYNOPSIS
DESCRIPTION
a new namespace, an operator mask
WARNING
RECENT
CHANGES
Methods in class
Safe
permit ( OP , ...), permit_only ( OP , ...), deny ( OP , ...), deny_only ( OP , ...), trap ( OP , ...), untrap ( OP , ...), share ( NAME , ...), share_from ( PACKAGE , ARRAYREF ), varglob ( VARNAME ), reval ( STRING ), rdo ( FILENAME ), root ( NAMESPACE ), mask ( MASK )
Some Safety Issues
Memory, CPU , Snooping, Signals, State Changes
AUTHOR
Search::Dict,
look − search for key in dictionary file
SYNOPSIS
DESCRIPTION
SelectSaver
− save and restore selected file handle
SYNOPSIS
DESCRIPTION
SelfLoader
− load functions only on demand
SYNOPSIS
DESCRIPTION
The
__DATA__ token
SelfLoader autoloading
Autoloading and package lexicals
SelfLoader and AutoLoader
__DATA__, __END__, and the FOOBAR::DATA
filehandle.
Classes and inherited
methods.
Multiple packages and fully qualified subroutine names
Shell
− run shell commands transparently within perl
SYNOPSIS
DESCRIPTION
OBJECT ORIENTED SYNTAX
AUTHOR
Socket,
sockaddr_in, sockaddr_un, inet_aton, inet_ntoa − load
the C socket.h defines and structure manipulators
SYNOPSIS
DESCRIPTION
inet_aton HOSTNAME , inet_ntoa IP_ADDRESS , INADDR_ANY , INADDR_BROADCAST , INADDR_LOOPBACK , INADDR_NONE , sockaddr_in PORT , ADDRESS , sockaddr_in SOCKADDR_IN , pack_sockaddr_in PORT , IP_ADDRESS , unpack_sockaddr_in SOCKADDR_IN , sockaddr_un PATHNAME , sockaddr_un SOCKADDR_UN , pack_sockaddr_un PATH , unpack_sockaddr_un SOCKADDR_UN
Symbol
− manipulate Perl symbols and their names
SYNOPSIS
DESCRIPTION
Sys::Hostname
− Try every conceivable way to get hostname
SYNOPSIS
DESCRIPTION
AUTHOR
Syslog,
Sys::Syslog, openlog, closelog, setlogmask, syslog −
Perl interface to the UNIX
syslog(3) calls
SYNOPSIS
DESCRIPTION
openlog $ident, $logopt, $facility, syslog $priority, $format, @args, setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), closelog
EXAMPLES
SEE ALSO
AUTHOR
Syslog::Syslog,
Sys::Syslog, openlog, closelog, setlogmask, syslog −
Perl interface to the UNIX
syslog(3) calls
SYNOPSIS
DESCRIPTION
openlog $ident, $logopt, $facility, syslog $priority, $format, @args, setlogmask $mask_priority, setlogsock $sock_type (added in 5.004_02), closelog
EXAMPLES
SEE ALSO
AUTHOR
Term::ANSIColor
− Color screen output using ANSI escape
sequences
SYNOPSIS
DESCRIPTION
DIAGNOSTICS
Invalid attribute name %s, Name "%s" used only once: possible typo, No comma allowed after filehandle, Bareword "%s" not allowed while "strict subs" in use
RESTRICTIONS
NOTES
AUTHORS
Term::Cap
− Perl termcap interface
SYNOPSIS
DESCRIPTION
EXAMPLES
Term::Complete
− Perl word completion module
SYNOPSIS
DESCRIPTION
<tab>, ^D, ^U, <del>, <bs>
DIAGNOSTICS
BUGS
AUTHOR
Term::ReadLine
− Perl interface to various
"readline" packages. If no real
package is found, substitutes stubs instead of basic
functions.
SYNOPSIS
DESCRIPTION
Minimal set of supported
functions
"ReadLine", "new", "readline", "addhistory", "IN", $"OUT", "MinLine", "findConsole", Attribs, "Features"
Additional supported functions
"tkRunning", "ornaments", "newTTY"
EXPORTS
ENVIRONMENT
Test
− provides a simple framework for writing test
scripts
SYNOPSIS
DESCRIPTION
TEST
TYPES
NORMAL TESTS , SKIPPED TESTS , TODO TESTS
RETURN
VALUE
ONFAIL
SEE ALSO
AUTHOR
Test::Harness
− run perl standard test scripts with statistics
SYNOPSIS
DESCRIPTION
The test script output
EXPORT
DIAGNOSTICS
"All tests successful.\nFiles=%d, Tests=%d, %s", "FAILED tests %s\n\tFailed %d/%d tests, %.2f%% okay.", "Test returned status %d (wstat %d)", "Failed 1 test, %.2f%% okay. %s", "Failed %d/%d tests, %.2f%% okay. %s"
ENVIRONMENT
SEE ALSO
AUTHORS
BUGS
Text::Abbrev,
abbrev − create an abbreviation table from a list
SYNOPSIS
DESCRIPTION
EXAMPLE
Text::ParseWords
− parse text into an array of tokens or array of
arrays
SYNOPSIS
DESCRIPTION
EXAMPLES
AUTHORS
Text::Soundex
− Implementation of the Soundex Algorithm as Described
by Knuth
SYNOPSIS
DESCRIPTION
EXAMPLES
LIMITATIONS
AUTHOR
Text::Tabs
-- expand and unexpand tabs per the unix
expand(1) and unexpand(1)
SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
Text::Wrap
− line wrapping to form simple paragraphs
SYNOPSIS
DESCRIPTION
EXAMPLE
AUTHOR
Thread
− manipulate threads in Perl (
EXPERIMENTAL , subject to change)
CAVEAT
SYNOPSIS
DESCRIPTION
FUNCTIONS
new \&start_sub, new \&start_sub, LIST , lock VARIABLE , async BLOCK ;, Thread->self, Thread->list, cond_wait VARIABLE , cond_signal VARIABLE , cond_broadcast VARIABLE , yield
METHODS
join, eval, detach, equal, tid
LIMITATIONS
SEE ALSO
Thread::Queue
− thread-safe queues
SYNOPSIS
DESCRIPTION
FUNCTIONS AND
METHODS
new, enqueue LIST , dequeue, dequeue_nb, pending
SEE ALSO
Thread::Semaphore
− thread-safe semaphores
SYNOPSIS
DESCRIPTION
FUNCTIONS AND
METHODS
new, new NUMBER , down, down NUMBER , up, up NUMBER
Thread::Signal
− Start a thread which runs signal handlers
reliably
SYNOPSIS
DESCRIPTION
BUGS
Thread::Specific
− thread-specific keys
SYNOPSIS
DESCRIPTION
Tie::Array
− base class for tied arrays
SYNOPSIS
DESCRIPTION
TIEARRAY classname, LIST , STORE this, index, value, FETCH this, index, FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, key, DELETE this, key, CLEAR this, DESTROY this, PUSH this, LIST , POP this, SHIFT this, UNSHIFT this, LIST , SPLICE this, offset, length, LIST
CAVEATS
AUTHOR
Tie::Handle,
Tie::StdHandle − base class definitions for tied
handles
SYNOPSIS
DESCRIPTION
TIEHANDLE classname, LIST , WRITE this, scalar, length, offset, PRINT this, LIST , PRINTF this, format, LIST , READ this, scalar, length, offset, READLINE this, GETC this, CLOSE this, OPEN this, filename, BINMODE this, EOF this, TELL this, SEEK this, offset, whence, DESTROY this
MORE
INFORMATION
COMPATIBILITY
Tie::Hash,
Tie::StdHash − base class definitions for tied
hashes
SYNOPSIS
DESCRIPTION
TIEHASH classname, LIST , STORE this, key, value, FETCH this, key, FIRSTKEY this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
CAVEATS
MORE
INFORMATION
Tie::RefHash
− use references as hash keys
SYNOPSIS
DESCRIPTION
EXAMPLE
AUTHOR
VERSION
SEE ALSO
Tie::Scalar,
Tie::StdScalar − base class definitions for tied
scalars
SYNOPSIS
DESCRIPTION
TIESCALAR classname, LIST , FETCH this, STORE this, value, DESTROY this
MORE INFORMATION
Tie::SubstrHash
− Fixed-table-size, fixed-key-length hashing
SYNOPSIS
DESCRIPTION
CAVEATS
Time::Local
− efficiently compute time from local and
GMT time
SYNOPSIS
DESCRIPTION
IMPLEMENTATION
BUGS
Time::gmtime
− by-name interface to Perl’s built-in
gmtime() function
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Time::localtime
− by-name interface to Perl’s built-in
localtime() function
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Time::tm
− internal object used by Time::gmtime and
Time::localtime
SYNOPSIS
DESCRIPTION
AUTHOR
UNIVERSAL
− base class for ALL classes
(blessed references)
SYNOPSIS
DESCRIPTION
isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), UNIVERSAL: :isa ( VAL , TYPE ), UNIVERSAL: :can ( VAL , METHOD )
User::grent
− by-name interface to Perl’s built-in getgr*()
functions
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
User::pwent
− by-name interface to Perl’s built-in getpw*()
functions
SYNOPSIS
DESCRIPTION
System Specifics
NOTE
AUTHOR
HISTORY
March 18th, 2000
Win32
− Interfaces to some Win32 API
Functions
DESCRIPTION
Alphabetical Listing of Win32 Functions
Win32::AbortSystemShutdown( MACHINE ), Win32::BuildNumber(), Win32::CopyFile( FROM , TO , OVERWRITE ), Win32::DomainName(), Win32::ExpandEnvironmentStrings( STRING ), Win32::FormatMessage( ERRORCODE ), Win32::FsType(), Win32::FreeLibrary( HANDLE ), Win32::GetArchName(), Win32::GetChipName(), Win32::GetCwd(), Win32::GetFullPathName( FILENAME ), Win32::GetLastError(), Win32::GetLongPathName( PATHNAME ), Win32::GetNextAvailDrive(), Win32::GetOSVersion(), Win32::GetShortPathName( PATHNAME ), Win32::GetProcAddress( INSTANCE , PROCNAME ), Win32::GetTickCount(), Win32::InitiateSystemShutdown, Win32::IsWinNT(), Win32::IsWin95(), Win32::LoadLibrary( LIBNAME ), Win32::LoginName(), Win32::LookupAccountName( SYSTEM , ACCOUNT , DOMAIN , SID , SIDTYPE ), Win32::LookupAccountSID( SYSTEM , SID , ACCOUNT , DOMAIN , SIDTYPE ), Win32::MsgBox( MESSAGE [, FLAGS [, TITLE ]]), Win32::NodeName(), Win32::RegisterServer( LIBRARYNAME ), Win32::SetCwd( NEWDIRECTORY ), Win32::SetLastError( ERROR ), Win32::Sleep( TIME ), Win32::Spawn( COMMAND , ARGS , PID ), Win32::UnregisterServer( LIBRARYNAME )
XSLoader
− Dynamically load C libraries into Perl code
SYNOPSIS
DESCRIPTION
AUTHOR
Here should be listed all the extra programs’ documentation, but they don’t all have manual pages yet:
a2p |
||
s2p |
find2perl
h2ph
c2ph
h2xs
xsubpp
pod2man
wrapsuid
Larry Wall <larry@wall.org>, with the help of oodles of other folks.
![]() |
perltoc(1) | ![]() |