4 perltoc - perl documentation table of contents
8 This page provides a brief table of contents for the rest of the Perl
9 documentation set. It is meant to be bescanned quickly or grepped
10 through to locate the proper section you're looking for.
12 =head1 BASIC DOCUMENTATION
14 =head2 perl - Practical Extraction and Report Language
20 Many usability enhancements, Simplified grammar, Lexical scoping,
21 Arbitrarily nested data structures, Modularity and reusability,
22 Object-oriented programming, Embeddable and Extensible, POSIX compliant,
23 Package constructors and destructors, Multiple simultaneous DBM
24 implementations, Subroutine definitions may now be autoloaded, Regular
25 expression enhancements, Innumerable Unbundled Modules, Compilability
29 HOME, LOGDIR, PATH, PERL5LIB, PERL5DB, PERL_DESTRUCT_LEVEL, PERLLIB
43 =head2 perlnews - what's new for perl5.004
47 =item Supported Environments
53 =item Compilation Option: Binary Compatibility With 5.003
55 =item New Opcode Module and Revised Safe Module
57 =item Internal Change: FileHandle Deprecated
59 =item Internal Change: PerlIO internal IO abstraction interface.
61 =item New and Changed Built-in Variables
65 =item New and Changed Built-in Functions
67 delete on slices, flock, keys as an lvalue, my() in Control Structures,
68 unpack() and pack(), use VERSION, use Module VERSION LIST,
69 prototype(FUNCTION), $_ as Default
71 =item New Built-in Methods
73 isa(CLASS), can(METHOD), VERSION( [NEED] ), class(), is_instance()
75 =item TIEHANDLE Now Supported
77 TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this
83 use blib, use locale, use ops
89 =item Module Information Summary
95 =item Overridden Built-ins
99 =item Efficiency Enhancements
101 =item Documentation Changes
103 L<perlnews>, L<perllocale>, L<perltoot>, L<perlapio>, L<perldebug>,
106 =item New Diagnostics
108 "my" variable %s masks earlier declaration in same scope, Allocation too
109 large: %lx, Allocation too large, Attempt to free non-existent shared
110 string, Attempt to use reference as lvalue in substr, Unsupported function
111 fork, Ill-formed logical name |%s| in prime_env_iter, Integer overflow in
112 hex number, Integer overflow in octal number, Null picture in formline,
113 Offset outside string, Out of memory!, Out of memory during request for %s,
114 Possible attempt to put comments in qw() list, Possible attempt to separate
115 words with commas, untie attempted while %d inner references still exist,
116 Got an error from DosAllocMem:, Malformed PERLLIB_PREFIX, PERL_SH_DIR too
117 long, Process terminated by SIG%s
125 =head2 perldata - Perl data types
137 =item Scalar value constructors
139 =item List value constructors
141 =item Typeglobs and Filehandles
145 =head2 perlsyn - Perl syntax
153 =item Simple statements
155 =item Compound statements
163 =item Basic BLOCKs and Switch Statements
167 =item PODs: Embedded Documentation
171 =head2 perlop - Perl operators and precedence
179 =item Terms and List Operators (Leftward)
181 =item The Arrow Operator
183 =item Auto-increment and Auto-decrement
187 =item Symbolic Unary Operators
189 =item Binding Operators
191 =item Multiplicative Operators
193 =item Additive Operators
195 =item Shift Operators
197 =item Named Unary Operators
199 =item Relational Operators
201 =item Equality Operators
205 =item Bitwise Or and Exclusive Or
207 =item C-style Logical And
209 =item C-style Logical Or
213 =item Conditional Operator
215 =item Assignment Operators
219 =item List Operators (Rightward)
225 =item Logical or and Exclusive Or
227 =item C Operators Missing From Perl
229 unary &, unary *, (TYPE)
231 =item Quote and Quote-like Operators
233 =item Regexp Quote-Like Operators
235 ?PATTERN?, m/PATTERN/gimosx, /PATTERN/gimosx, q/STRING/, C<'STRING'>,
236 qq/STRING/, "STRING", qx/STRING/, `STRING`, qw/STRING/,
237 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
238 y/SEARCHLIST/REPLACEMENTLIST/cds
242 =item Constant Folding
244 =item Integer Arithmetic
248 =head2 perlre - Perl regular expressions
256 =item Regular Expressions
258 (?#text), (?:regexp), (?=regexp), (?!regexp), (?imsx)
262 =item Version 8 Regular Expressions
264 =item WARNING on \1 vs $1
268 =head2 perlrun - how to execute the Perl interpreter
278 B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<number>,
279 B<-D>I<list>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
280 B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
281 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
282 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
283 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
287 =head2 perlfunc - Perl builtin functions
291 I<THERE IS NO GENERAL RULE FOR CONVERTING A LIST INTO A SCALAR!>
295 =item Perl Functions by Category
297 Functions for SCALARs or strings, Regular expressions and pattern matching,
298 Numeric functions, Functions for real @ARRAYs, Functions for list data,
299 Functions for real %HASHes, Input and output functions, Functions for fixed
300 length data or records, Functions for filehandles, files, or directories,
301 Keywords related to the control flow of your perl program, Keywords related
302 to scoping, Miscellaneous functions, Functions for processes and process
303 groups, Keywords related to perl modules, Keywords related to classes and
304 object-orientedness, Low-level socket functions, System V interprocess
305 communication functions, Fetching user and group info, Fetching network
306 info, Time-related functions, Functions new in perl5, Functions obsoleted
309 =item Alphabetical Listing of Perl Functions
311 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, abs, accept
312 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
313 binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
314 chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
315 chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
316 close FILEHANDLE, closedir DIRHANDLE, connect SOCKET,NAME, continue BLOCK,
317 cos EXPR, crypt PLAINTEXT,SALT, dbmclose ASSOC_ARRAY, dbmopen
318 ASSOC,DBNAME,MODE, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
319 do SUBROUTINE(LIST), do EXPR, dump LABEL, each ASSOC_ARRAY, eof FILEHANDLE,
320 eof (), eof, eval EXPR, eval BLOCK, exec LIST, exists EXPR, exit EXPR, exp
321 EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock
322 FILEHANDLE,OPERATION, fork, format, formline PICTURE, LIST, getc
323 FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp PID, getppid,
324 getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME,
325 getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid GID,
326 getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr
327 ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent,
328 getgrent, gethostent, getnetent, getprotoent, getservent, setpwent,
329 setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN,
330 setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent,
331 endprotoent, endservent, getsockname SOCKET, getsockopt
332 SOCKET,LEVEL,OPTNAME, glob EXPR, gmtime EXPR, goto LABEL, goto EXPR, goto
333 &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
334 STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
335 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys ASSOC_ARRAY, kill LIST,
336 last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
337 link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
338 log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST,
339 map EXPR,LIST, mkdir FILENAME,MODE, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
340 msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL,
341 next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,
342 opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package
343 NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pos SCALAR, pos, print
344 FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, printf
345 FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, qq/STRING/,
346 qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR, rand, read
347 FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir
348 DIRHANDLE, readlink EXPR, readlink, recv SOCKET,SCALAR,LEN,FLAGS, redo
349 LABEL, redo, ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require,
350 reset EXPR, reset, return LIST, reverse LIST, rewinddir DIRHANDLE, rindex
351 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
352 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
353 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
354 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
355 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
356 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
357 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
358 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
359 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
360 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
361 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
362 splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
363 split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
364 stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME,
365 sub NAME BLOCK, substr EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink
366 OLDFILE,NEWFILE, syscall LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen
367 FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET,
368 sysread FILEHANDLE,SCALAR,LENGTH, system LIST, syswrite
369 FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, tell
370 FILEHANDLE, tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied
371 VARIABLE, time, times, tr///, truncate FILEHANDLE,LENGTH, truncate
372 EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef
373 EXPR, undef, unlink LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE,
374 unshift ARRAY,LIST, use Module LIST, use Module, use Module VERSION LIST,
375 use VERSION, utime LIST, values ASSOC_ARRAY, vec EXPR,OFFSET,BITS, wait,
376 waitpid PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR,
381 =head2 perlvar - Perl predefined variables
387 =item Predefined Names
389 $ARG, $_, $E<lt>I<digit>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
390 $LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE
391 EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR,
392 $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH,
393 $|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
394 output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\,
395 $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
396 format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%,
397 format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=,
398 format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE
399 EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
400 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
401 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
402 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
403 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
404 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
405 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
406 $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $OSNAME,
407 $^O, $PERLDB, $^P, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X,
408 $ARGV, @ARGV, @INC, %INC, $ENV{expr}, $SIG{expr}
412 =head2 perlsub - Perl subroutines
420 =item Private Variables via my()
422 =item Temporary Values via local()
424 =item Passing Symbol Table Entries (typeglobs)
426 =item Pass by Reference
430 =item Overriding Builtin Functions
438 =head2 perlmod - Perl modules (packages)
448 =item Package Constructors and Destructors
458 =item THE PERL MODULE LIBRARY
462 =item Pragmatic Modules
464 blib, diagnostics, integer, less, lib, locale, ops, overload, sigtrap,
467 =item Standard Modules
469 AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime,
470 CPAN::Nox, Carp, Class::Template, Config, Cwd, DB_File, Devel::SelfStubber,
471 DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed,
472 ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix,
473 ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest,
474 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal,
475 Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy,
476 File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin,
477 GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File,
478 IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2,
479 IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, NDBM_File,
480 Net::Ping, Net::hostent, Net::netent, Net::protoent, Net::servent, Opcode,
481 Pod::Text, POSIX, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader,
482 Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog, Term::Cap,
483 Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev,
484 Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash,
485 Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime,
486 Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent
488 =item Extension Modules
494 Language Extensions and Documentation Tools, Development Support, Operating
495 System Interfaces, Networking, Device Control (modems) and InterProcess
496 Communication, Data Types and Data Type Utilities, Database Interfaces,
497 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
498 File Names, File Systems and File Locking (see also File Handles), String
499 Processing, Language Text Processing, Parsing, and Searching, Option,
500 Argument, Parameter, and Configuration File Processing,
501 Internationalization and Locale, Authentication, Security, and Encryption,
502 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
503 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
504 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
505 exceptions etc), File Handle and Input/Output Stream Utilities,
506 Miscellaneous Modules
508 =item Modules: Creation, Use, and Abuse
512 =item Guidelines for Module Creation
514 Do similar modules already exist in some form?, Try to design the new
515 module to be easy to extend and reuse, Some simple style guidelines, Select
516 what to export, Select a name for the module, Have you got it right?,
517 README and other Additional Files, A description of the
518 module/package/extension etc, A copyright notice - see below, Prerequisites
519 - what else you may need to have, How to build it - possible changes to
520 Makefile.PL etc, How to install it, Recent changes in this release,
521 especially incompatibilities, Changes / enhancements you plan to make in
522 the future, Adding a Copyright Notice, Give the module a
523 version/issue/release number, How to release and distribute a module, Take
524 care when changing a released module
526 =item Guidelines for Converting Perl 4 Library Scripts into Modules
528 There is no requirement to convert anything, Consider the implications,
529 Make the most of the opportunity, The pl2pm utility will get you started,
530 Adds the standard Module prologue lines, Converts package specifiers from '
531 to ::, Converts die(...) to croak(...), Several other minor changes
533 =item Guidelines for Reusing Application Code
535 Complete applications rarely belong in the Perl Module Library, Many
536 applications contain some perl code which could be reused, Break-out the
537 reusable code into one or more separate module files, Take the opportunity
538 to reconsider and redesign the interfaces, In some cases the 'application'
539 can then be reduced to a small
543 =head2 perlform - Perl formats
549 =item Format Variables
559 =item Accessing Formatting Internals
565 =head2 perllocale - Perl locale handling (internationalization and
570 =item PREPARING TO USE LOCALES
576 =item The use locale pragma
578 =item The setlocale function
580 =item The localeconv function
584 =item LOCALE CATEGORIES
588 =item Category LC_COLLATE: Collation
590 =item Category LC_CTYPE: Character Types
592 =item Category LC_NUMERIC: Numeric Formatting
594 =item Category LC_MONETARY: Formatting of monetary amounts
598 =item Other categories
604 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
605 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or <\U>),
606 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
607 B<In-memory formatting function> (sprintf()):, B<Output formatting
608 functions> (printf() and write()):, B<Case-mapping functions> (lc(),
609 lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
610 (localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
611 tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
612 ispunct(), isspace(), isupper(),
617 PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC,
624 =item Backward compatibility
626 =item I18N:Collate obsolete
628 =item Sort speed and memory use impacts
630 =item write() and LC_NUMERIC
632 =item Freely available locale definitions
636 =item An imperfect standard
652 =head2 perlref - Perl references and nested data structures
658 =item Symbolic references
660 =item Not-so-symbolic references
668 =head2 perldsc - Perl Data Structures Cookbook
672 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
673 more elaborate constructs, recursive and self-referential data structures,
678 =item COMMON MISTAKES
680 =item CAVEAT ON PRECEDENCE
682 =item WHY YOU SHOULD ALWAYS C<use strict>
692 =item Declaration of a LIST OF LISTS
694 =item Generation of a LIST OF LISTS
696 =item Access and Printing of a LIST OF LISTS
700 =item HASHES OF LISTS
704 =item Declaration of a HASH OF LISTS
706 =item Generation of a HASH OF LISTS
708 =item Access and Printing of a HASH OF LISTS
712 =item LISTS OF HASHES
716 =item Declaration of a LIST OF HASHES
718 =item Generation of a LIST OF HASHES
720 =item Access and Printing of a LIST OF HASHES
724 =item HASHES OF HASHES
728 =item Declaration of a HASH OF HASHES
730 =item Generation of a HASH OF HASHES
732 =item Access and Printing of a HASH OF HASHES
736 =item MORE ELABORATE RECORDS
740 =item Declaration of MORE ELABORATE RECORDS
742 =item Declaration of a HASH OF COMPLEX RECORDS
744 =item Generation of a HASH OF COMPLEX RECORDS
754 =head2 perllol, perlLoL - Manipulating Lists of Lists in Perl
758 =item Declaration and Access of Lists of Lists
760 =item Growing Your Own
762 =item Access and Printing
770 =head2 perltoot - Tom's object-oriented tutorial for perl
774 =item Creating a Class
778 =item Object Representation
780 =item Class Interface
782 =item Constructors and Instance Methods
784 =item Planning for the Future: Better Constructors
788 =item Other Object Methods
796 =item Accessing Class Data
798 =item Debugging Methods
800 =item Class Destructors
802 =item Documenting the Interface
812 =item Overridden Methods
814 =item Multiple Inheritance
816 =item UNIVERSAL: The Root of All Objects
820 =item Alternate Object Representations
824 =item Arrays as Objects
826 =item Closures as Objects
830 =item AUTOLOAD: Proxy Methods
834 =item Autoloaded Data Methods
836 =item Inherited Autoloaded Data Methods
840 =item Metaclassical Tools
844 =item Class::Template
846 =item Data Members as Variables
850 =item Object Terminology
860 =item Acknowledgments
864 =head2 perlobj - Perl objects
870 =item An Object is Simply a Reference
872 =item A Class is Simply a Package
874 =item A Method is Simply a Subroutine
876 =item Method Invocation
878 =item Default UNIVERSAL methods
880 isa(CLASS), can(METHOD), VERSION( [NEED] ), class(), is_instance()
888 =item Two-Phased Garbage Collection
894 =head2 perltie - how to hide an object class in a simple variable
904 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
908 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
913 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
914 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
915 this, NEXTKEY this, lastkey, DESTROY this
917 =item Tying FileHandles
919 TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this
929 =head2 perlbot - Bag'o Object Tricks (the BOT)
933 =item OO SCALING TIPS
935 =item INSTANCE VARIABLES
937 =item SCALAR INSTANCE VARIABLES
939 =item INSTANCE VARIABLE INHERITANCE
941 =item OBJECT RELATIONSHIPS
943 =item OVERRIDING SUPERCLASS METHODS
945 =item USING RELATIONSHIP WITH SDBM
947 =item THINKING OF CODE REUSE
949 =item CLASS CONTEXT AND THE OBJECT
951 =item INHERITING A CONSTRUCTOR
955 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
956 safe subprocesses, sockets, and semaphores)
964 =item Using open() for IPC
968 =item Safe Pipe Opens
970 =item Bidirectional Communication
974 =item Sockets: Client/Server Communication
978 =item Internet TCP Clients and Servers
980 =item Unix-Domain TCP Clients and Servers
982 =item UDP: Message Passing
998 =head2 perldebug - Perl debugging
1002 =item The Perl Debugger
1006 =item Debugger Commands
1008 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n,
1009 E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l subname, -,
1010 w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], t, t expr, b
1011 [line] [condition], b subname [condition], b postpone subname [condition],
1012 b load filename, d [line], D, a [line] command, A, O [opt[=val]] [opt"val"]
1013 [opt?].., recallCommand, ShellBang, pager, tkRunning, signalLevel,
1014 warnLevel, dieLevel, AutoTrace, LineInfo, C<inhibit_exit>, C<PrintRet>,
1015 C<frame>, arrayDepth, hashDepth, compactDump, veryCompact, globPrint,
1016 DumpDBFiles, DumpPackages, quote, HighBit, undefPrint, C<TTY>, noTTY,
1017 C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ], E<lt>E<lt> command,
1018 E<gt> command, E<gt>E<gt> command, { [ command ], {{ command, ! number, !
1019 -number, ! pattern, !! cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, =
1020 [alias value], command, p expr
1022 =item Debugger Customization
1024 =item Readline Support
1026 =item Editor Support for Debugging
1028 =item The Perl Profiler
1030 =item Debugger support in perl
1032 =item Debugger Internals
1034 =item Other resources
1040 =head2 perldiag - various Perl diagnostics
1044 =head2 perlsec - Perl security
1050 =item Laundering and Detecting Tainted Data
1052 =item Cleaning Up Your Path
1058 =head2 perltrap - Perl traps for the unwary
1074 =item Perl4 to Perl5 Traps
1076 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
1077 Traps, General data type traps, Context Traps - scalar, list contexts,
1078 Precedence Traps, General Regular Expression Traps using s///, etc,
1079 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
1081 =item Discontinuance, Deprecation, and BugFix traps
1083 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
1084 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
1085 Discontinuance, Deprecation, Discontinuance
1089 Parsing, Parsing, Parsing
1091 =item Numerical Traps
1093 Numerical, Numerical, Numerical
1095 =item General data type traps
1097 (Arrays), (Arrays), (Hashes), (Globs), (Scalar String), (Constants),
1098 (Scalars), (Variable Suicide)
1100 =item Context Traps - scalar, list contexts
1102 (list context), (scalar context), (scalar context), (list, builtin)
1104 =item Precedence Traps
1106 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
1109 =item General Regular Expression Traps using s///, etc.
1111 Regular Expression, Regular Expression, Regular Expression, Regular
1112 Expression, Regular Expression, Regular Expression, Regular Expression
1114 =item Subroutine, Signal, Sorting Traps
1116 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
1122 =item Interpolation Traps
1124 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
1125 Interpolation, Interpolation, Interpolation, Interpolation
1131 =item Unclassified Traps
1137 =head2 perlstyle - Perl style guide
1141 =head2 perlpod - plain old documentation
1145 =item Embedding Pods in Perl Modules
1147 =item Common Pod Pitfalls
1153 =head2 perlbook - Perl book information
1157 =head2 perlembed - how to embed perl in your C program
1165 B<Use C from Perl?>, B<Use a UNIX program from Perl?>, B<Use Perl from
1166 Perl?>, B<Use C from C?>, B<Use Perl from C?>
1170 =item Compiling your C program
1172 =item Adding a Perl interpreter to your C program
1174 =item Calling a Perl subroutine from your C program
1176 =item Evaluating a Perl statement from your C program
1178 =item Performing Perl pattern matches and substitutions from your C program
1180 =item Fiddling with the Perl stack from your C program
1182 =item Maintaining a persistent interpreter
1184 =item Maintaining multiple interpreter instances
1186 =item Using Perl modules, which themselves use C libraries, from your C
1195 =head2 perlapio, perlio - perl's IO abstraction interface.
1201 B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
1202 B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
1203 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
1204 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
1205 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(s,f)>,
1206 B<PerlIO_putc(c,f)>, B<PerlIO_ungetc(c,f)>, B<PerlIO_getc(f)>,
1207 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
1208 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
1209 B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
1210 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
1214 =item Co-existence with stdio
1216 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
1217 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
1218 B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
1219 B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
1220 B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
1221 B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
1225 =head2 perlxs - XS language reference manual
1235 =item The Anatomy of an XSUB
1237 =item The Argument Stack
1239 =item The RETVAL Variable
1241 =item The MODULE Keyword
1243 =item The PACKAGE Keyword
1245 =item The PREFIX Keyword
1247 =item The OUTPUT: Keyword
1249 =item The CODE: Keyword
1251 =item The INIT: Keyword
1253 =item The NO_INIT Keyword
1255 =item Initializing Function Parameters
1257 =item Default Parameter Values
1259 =item The PREINIT: Keyword
1261 =item The SCOPE: Keyword
1263 =item The INPUT: Keyword
1265 =item Variable-length Parameter Lists
1267 =item The PPCODE: Keyword
1269 =item Returning Undef And Empty Lists
1271 =item The REQUIRE: Keyword
1273 =item The CLEANUP: Keyword
1275 =item The BOOT: Keyword
1277 =item The VERSIONCHECK: Keyword
1279 =item The PROTOTYPES: Keyword
1281 =item The PROTOTYPE: Keyword
1283 =item The ALIAS: Keyword
1285 =item The INCLUDE: Keyword
1287 =item The CASE: Keyword
1289 =item The & Unary Operator
1291 =item Inserting Comments and C Preprocessor Directives
1293 =item Using XS With C++
1295 =item Interface Strategy
1297 =item Perl Objects And C Structures
1309 =head2 perlxstut, perlXStut - Tutorial for XSUBs
1315 =item VERSION CAVEAT
1317 =item DYNAMIC VERSUS STATIC
1323 =item WHAT HAS GONE ON?
1325 =item WRITING GOOD TEST SCRIPTS
1329 =item WHAT'S NEW HERE?
1331 =item INPUT AND OUTPUT PARAMETERS
1333 =item THE XSUBPP COMPILER
1335 =item THE TYPEMAP FILE
1341 =item WHAT HAS HAPPENED HERE?
1343 =item SPECIFYING ARGUMENTS TO XSUBPP
1345 =item THE ARGUMENT STACK
1347 =item EXTENDING YOUR EXTENSION
1349 =item DOCUMENTING YOUR EXTENSION
1351 =item INSTALLING YOUR EXTENSION
1361 =head2 perlguts - Perl's Internal Functions
1369 =item What is an "IV"?
1371 =item Working with SV's
1373 =item What's Really Stored in an SV?
1375 =item Working with AV's
1377 =item Working with HV's
1381 =item Blessed References and Class Objects
1383 =item Creating New Variables
1385 =item Reference Counts and Mortality
1387 =item Stashes and Globs
1391 =item Assigning Magic
1393 =item Magic Virtual Tables
1397 =item Double-Typed SV's
1399 =item XSUB's and the Argument Stack
1401 =item Calling Perl Routines from within C Programs
1403 =item Memory Allocation
1409 =item Putting a C value on Perl stack
1413 =item Scratchpads and recursions
1417 AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop, av_push,
1418 av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH,
1419 DBsingle, DBsub, DBtrace, dMARK, dORIGMARK, dowarn, dSP, dXSARGS, dXSI32,
1420 dXSI32, ENTER, EXTEND, FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME,
1421 G_NOARGS, G_SCALAR, gv_fetchmeth, gv_fetchmethod, gv_stashpv, gv_stashsv,
1422 GvSV, he_free, hv_clear, hv_delete, hv_exists, hv_fetch, hv_iterinit,
1423 hv_iterkey, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, HvNAME,
1424 hv_store, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER,
1425 items, ix, LEAVE, MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get,
1426 mg_len, mg_magical, mg_set, Move, na, New, Newc, Newz, newAV, newHV,
1427 newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, newSVpv, newSVrv, newSVsv,
1428 newXS, newXSproto, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK,
1429 perl_alloc, perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv,
1430 perl_construct, perl_destruct, perl_eval_sv, perl_free, perl_get_av,
1431 perl_get_cv, perl_get_hv, perl_get_sv, perl_parse, perl_require_pv,
1432 perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi, PUSHn, PUSHp,
1433 PUSHs, PUTBACK, Renew, Renewc, RETVAL, safefree, safemalloc, saferealloc,
1434 savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE, strGT, strLE,
1435 strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless, sv_catpv, sv_catpvn,
1436 sv_catsv, sv_cmp, sv_cmp, SvCUR, SvCUR_set, sv_dec, sv_dec, SvEND, sv_eq,
1437 SvGROW, sv_grow, sv_inc, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only,
1438 SvIOK_only, SvIOKp, sv_isa, SvIV, sv_isobject, SvIVX, SvLEN, sv_len,
1439 sv_len, sv_magic, sv_mortalcopy, SvOK, sv_newmortal, sv_no, SvNIOK,
1440 SvNIOK_off, SvNIOKp, SvNOK, SvNOK_off, SvNOK_on, SvNOK_only, SvNOK_only,
1441 SvNOKp, SvNV, SvNVX, SvPOK, SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only,
1442 SvPOKp, SvPV, SvPVX, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK,
1443 SvROK_off, SvROK_on, SvRV, sv_setiv, sv_setnv, sv_setpv, sv_setpvn,
1444 sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setsv, SvSTASH,
1445 SVt_IV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE,
1446 SvTYPE, svtype, SvUPGRADE, sv_upgrade, sv_undef, sv_unref, sv_usepvn,
1447 sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XS,
1448 XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV,
1449 XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, XST_mNO,
1450 XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero
1458 =head2 perlcall - Perl calling conventions from C
1462 An Error Handler, An Event Driven Program
1464 =item THE PERL_CALL FUNCTIONS
1466 B<perl_call_sv>, B<perl_call_pv>, B<perl_call_method>, B<perl_call_argv>
1484 =item Determining the Context
1488 =item KNOWN PROBLEMS
1494 =item No Parameters, Nothing returned
1496 =item Passing Parameters
1498 =item Returning a Scalar
1500 =item Returning a list of values
1502 =item Returning a list in a scalar context
1504 =item Returning Data from Perl via the parameter list
1508 =item Using G_KEEPERR
1510 =item Using perl_call_sv
1512 =item Using perl_call_argv
1514 =item Using perl_call_method
1518 =item Using Perl to dispose of temporaries
1520 =item Strategies for storing Callback Context Information
1522 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
1523 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
1526 =item Alternate Stack Manipulation
1536 =head1 PRAGMA DOCUMENTATION
1538 =head2 blib - Use MakeMaker's uninstalled version of a package
1548 =head2 diagnostics - Perl compiler pragma to force verbose warning
1557 =item The C<diagnostics> Pragma
1559 =item The I<splain> Program
1571 =head2 integer - Perl pragma to compute arithmetic in integer instead of
1578 =head2 less - perl pragma to request less of something from the compiler
1584 =head2 lib - manipulate @INC at compile time
1592 =item ADDING DIRECTORIES TO @INC
1594 =item DELETING DIRECTORIES FROM @INC
1596 =item RESTORING ORIGINAL @INC
1604 =head2 locale - Perl pragma to use and avoid POSIX locales for built-in
1611 =head2 ops - Perl pragma to restrict unsafe operations when compiling
1619 =head2 overload - Package for overloading perl operations
1623 =item CAVEAT SCRIPTOR
1629 =item Declaration of overloaded functions
1631 =item Calling Conventions for Binary Operations
1633 FALSE, TRUE, C<undef>
1635 =item Calling Conventions for Unary Operations
1637 =item Overloadable Operations
1639 I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
1640 I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
1641 and numeric conversion>, I<Special>
1645 =item SPECIAL SYMBOLS FOR C<use overload>
1653 C<undef>, TRUE, defined, but FALSE
1655 =item Copy Constructor
1661 =item MAGIC AUTOGENERATION
1663 I<Assignment forms of arithmetic operations>, I<Conversion operations>,
1664 I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
1665 I<Concatenation>, I<Comparison operations>, I<Copy operator>
1669 =item Run-time Overloading
1671 =item Public functions
1673 overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
1675 =item IMPLEMENTATION
1683 =head2 sigtrap - Perl pragma to enable simple signal handling
1693 =item SIGNAL HANDLERS
1695 B<stack-trace>, B<die>, B<handler> I<your-handler>
1699 B<normal-signals>, B<error-signals>, B<old-interface-signals>
1703 B<untrapped>, B<any>, I<signal>, I<number>
1709 =head2 strict - Perl pragma to restrict unsafe constructs
1715 C<strict refs>, C<strict vars>, C<strict subs>
1717 =head2 subs - Perl pragma to predeclare sub names
1723 =head2 vars - Perl pragma to predeclare global variable names
1729 =head1 MODULE DOCUMENTATION
1731 =head2 AnyDBM_File - provide framework for multiple DBMs
1739 =item DBM Comparisons
1747 =head2 AutoLoader - load functions only on demand
1759 =item Package Lexicals
1761 =item AutoLoader vs. SelfLoader
1767 =head2 AutoSplit - split a package for autoloading
1777 =head2 Benchmark - benchmark running times of code
1789 =item Standard Exports
1791 timeit(COUNT, CODE), timethis, timethese, timediff, timestr
1793 =item Optional Exports
1805 =item MODIFICATION HISTORY
1807 =head2 CPAN - query, download and build perl modules from CPAN sites
1815 =item Interactive Mode
1817 Searching for authors, bundles, distribution files and modules, make, test,
1818 install, clean modules or distributions
1822 =item ProgrammerE<39>s interface
1836 o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
1837 E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
1838 [shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
1857 =head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
1863 =head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
1872 =head2 Carp, carp - warn of errors (from perspective of caller)
1878 =head2 Class::Template - struct/member template builder
1886 Example 1, Example 2
1890 =head2 Config - access Perl configuration information
1896 myconfig(), config_sh(), config_vars(@names)
1904 =head2 Cwd, getcwd - get pathname of current working directory
1910 =head2 DB_File - Perl5 access to Berkeley DB
1916 B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
1920 =item How does DB_File interface to Berkeley DB?
1922 =item Opening a Berkeley DB Database File
1924 =item Default Parameters
1926 =item In Memory Databases
1934 =item A Simple Example.
1942 =item Changing the BTREE sort order
1944 =item Handling duplicate keys
1946 =item The get_dup method.
1948 =item Matching Partial Keys
1956 =item The bval option
1958 =item A Simple Example
1962 B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
1963 B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
1965 =item Another Example
1969 =item THE API INTERFACE
1971 B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
1972 $X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
1973 $flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
1974 $value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
1976 =item HINTS AND TIPS
1980 =item Locking Databases
1982 =item Sharing databases with C applications
1986 =item COMMON QUESTIONS
1990 =item Why is there Perl source in my database?
1992 =item How do I store complex data structures with DB_File?
1994 =item What does "Invalid Argument" mean?
1996 =item What does "Bareword 'DB_File' not allowed" mean?
2010 =head2 Devel::SelfStubber - generate stubs for a SelfLoading module
2016 =head2 DirHandle - supply object methods for directory handles
2022 =head2 DynaLoader - Dynamically load C libraries into Perl code
2028 @dl_library_path, @dl_resolve_using, @dl_require_symbols, dl_error(),
2029 $dl_debug, dl_findfile(), dl_expandspec(), dl_load_file(),
2030 dl_find_symbol(), dl_undef_symbols(), dl_install_xsub(), bootstrap()
2034 =head2 English - use nice English (or awk) names for ugly punctuation
2041 =head2 Env - perl module that imports environment variables
2049 =head2 Exporter - Implements default import method for modules
2057 =item Selecting What To Export
2059 =item Specialised Import Lists
2061 =item Module Version Checking
2063 =item Managing Unknown Symbols
2065 =item Tag Handling Utility Functions
2069 =head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
2079 xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
2080 ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
2088 =head2 ExtUtils::Install - install files from here to there
2094 =head2 ExtUtils::Liblist - determine libraries to use and how to use them
2100 For static extensions, For dynamic extensions, For dynamic extensions
2106 =item LDLOADLIBS and LD_RUN_PATH
2116 =item VMS implementation
2122 =head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
2129 =head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
2139 =item Preloaded methods
2141 canonpath, catdir, catfile, curdir, rootdir, updir
2143 =item SelfLoaded methods
2145 c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
2146 const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
2147 dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
2148 dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
2149 extliblist, file_name_is_absolute, find_perl
2151 =item Methods to actually produce chunks of text for the Makefile
2153 force (o), guess_name, has_link_code, init_dirscan, init_main, init_others,
2154 install (o), installbin (o), libscan (o), linkext (o), lsdir, macro (o),
2155 makeaperl (o), makefile (o), manifypods (o), maybe_command,
2156 maybe_command_in_dirs, needs_linking (o), nicetext, parse_version, pasthru
2157 (o), path, perl_script, perldepend (o), pm_to_blib, post_constants (o),
2158 post_initialize (o), postamble (o), prefixify, processPL (o), realclean
2159 (o), replace_manpage_separator, static (o), static_lib (o), staticmake (o),
2160 subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
2161 (o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
2162 writedoc, xs_c (o), xs_o (o)
2168 =head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
2177 =item Methods always loaded
2179 eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
2180 rootdir (override), updir (override)
2182 =item SelfLoaded methods
2184 guess_name (override), find_perl (override), path (override), maybe_command
2185 (override), maybe_command_in_dirs (override), perl_script (override),
2186 file_name_is_absolute (override), replace_manpage_separator, init_others
2187 (override), constants (override), cflags (override), const_cccmd
2188 (override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
2189 (override), xsubpp_version (override), tools_other (override), dist
2190 (override), c_o (override), xs_c (override), xs_o (override), top_targets
2191 (override), dlsyms (override), dynamic_lib (override), dynamic_bs
2192 (override), static_lib (override), manifypods (override), processPL
2193 (override), installbin (override), subdir_x (override), clean (override),
2194 realclean (override), dist_basics (override), dist_core (override),
2195 dist_dir (override), dist_test (override), install (override), perldepend
2196 (override), makefile (override), test (override), test_via_harness
2197 (override), test_via_script (override), makeaperl (override), nicetext
2202 =head2 ExtUtils::MakeMaker - create an extension Makefile
2210 =item How To Write A Makefile.PL
2212 =item Default Makefile Behaviour
2220 =item PREFIX and LIB attribute
2224 =item Static Linking of a new Perl Binary
2226 =item Determination of Perl Library and Installation Locations
2228 =item Which architecture dependent directory?
2230 =item Using Attributes and Parameters
2232 C, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS,
2233 EXCLUDE_EXT, EXE_FILES, NO_VC, FIRST_MAKEFILE, FULLPERL, H, INC,
2234 INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
2235 INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITELIB,
2236 INSTALLSITEARCH, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
2237 INST_MAN3DIR, INST_SCRIPT, LDFROM, LIBPERL_A, LIB, LIBS, LINKTYPE,
2238 MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
2239 NEEDS_LINKING, NOECHO, NORECURS, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
2240 PERL_ARCHLIB, PERL_LIB, PERL_SRC, PL_FILES, PM, PMLIBDIRS, PREFIX,
2241 PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG,
2244 =item Additional lowercase attributes
2246 clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean,
2249 =item Overriding MakeMaker Methods
2251 =item Hintsfile support
2253 =item Distribution Support
2255 make distcheck, make skipcheck, make distclean, make manifest,
2256 make distdir, make tardist, make dist, make uutardist, make
2257 shdist, make zipdist, make ci
2265 =head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
2275 =item GLOBAL VARIABLES
2279 C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
2280 C<Added to MANIFEST:> I<file>
2286 =head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
2294 =head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
2300 =head2 ExtUtils::Mksymlists - write linker options files for dynamic
2307 NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE
2313 =head2 ExtUtils::testlib - add blib/* directories to @INC
2319 =head2 Fatal - replace functions with equivalents which succeed or die
2327 =head2 Fcntl - load the C Fcntl.h defines
2335 =item EXPORTED SYMBOLS
2337 =head2 File::Basename, fileparse - split a pathname into pieces
2343 fileparse_set_fstype, fileparse
2347 C<basename>, C<dirname>
2349 =head2 File::CheckTree, validate - run many filetest checks on a tree
2355 =head2 File::Compare - Compare files or filehandles
2365 =head2 File::Copy - Copy files or filehandles
2373 =item Special behavior if C<syscopy> is defined (VMS and OS/2)
2375 rmscopy($from,$to[,$date_flag])
2383 =head2 File::Find, find - traverse a file tree
2389 =head2 File::Path - create or remove a series of directories
2399 =head2 File::stat - by-name interface to Perl's built-in stat() functions
2409 =head2 FileCache - keep more files open than the system permits
2417 =head2 FileHandle - supply object methods for filehandles
2423 $fh->print, $fh->printf, $fh->getline, $fh->getlines
2427 =head2 FindBin - Locate directory of original perl script
2433 =item EXPORTABLE VARIABLES
2443 =head2 GDBM_File - Perl5 access to the gdbm library.
2455 =head2 Getopt::Long, GetOptions - extended processing of command line
2462 E<lt>noneE<gt>, !, =s, :s, =i, :i, =f, :f
2466 =item Linkage specification
2468 =item Aliases and abbreviations
2470 =item Non-option call-back routine
2472 =item Option starters
2482 =item CONFIGURATION VARIABLES
2484 $Getopt::Long::autoabbrev, $Getopt::Long::getopt_compat,
2485 $Getopt::Long::order, $Getopt::Long::bundling, $Getopt::Long::ignorecase,
2486 $Getopt::Long::passthrough, $Getopt::Long::VERSION, $Getopt::Long::error,
2487 $Getopt::Long::debug
2489 =head2 Getopt::Std, getopt - Process single-character switches with switch
2496 =head2 I18N::Collate - compare 8-bit scalar data according to the current
2503 =head2 IO - load various IO modules
2509 =head2 IO::File - supply object methods for filehandles
2521 open( FILENAME [,MODE [,PERMS]] )
2527 =head2 IO::Handle - supply object methods for I/O handles
2535 new (), new_from_fd ( FD, MODE )
2539 $fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF,
2540 LEN [, OFFSET }\] ), $fh->opened, $fh->untaint
2550 =head2 IO::Pipe, IO::pipe - supply object methods for pipes
2558 new ( [READER, WRITER] )
2562 reader ([ARGS]), writer ([ARGS]), handles ()
2570 =head2 IO::Seekable - supply seek based methods for I/O objects
2580 =head2 IO::Select - OO interface to the select system call
2592 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
2593 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count
2594 (), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
2602 =head2 IO::Socket - Object interface to socket communications
2614 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
2621 =item IO::Socket::INET
2625 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
2628 =item IO::Socket::UNIX
2632 hostpath(), peerpath()
2642 =head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
2654 open( FILENAME [,MODE [,PERMS]] )
2660 =head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
2669 new (), new_from_fd ( FD, MODE )
2673 $fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF,
2674 LEN [, OFFSET }\] ), $fh->opened, $fh->untaint
2684 =head2 IO::lib::IO::Pipe, IO::pipe - supply object methods for pipes
2692 new ( [READER, WRITER] )
2696 reader ([ARGS]), writer ([ARGS]), handles ()
2704 =head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
2715 =head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
2728 add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
2729 [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count
2730 (), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
2738 =head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
2751 accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
2758 =item IO::Socket::INET
2762 sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
2765 =item IO::Socket::UNIX
2769 hostpath(), peerpath()
2779 =head2 IPC::Open2, open2 - open a process for both reading and writing
2789 =head2 IPC::Open3, open3 - open a process for reading, writing, and error
2798 =head2 Math::BigFloat - Arbitrary length float math package
2804 number format, Error returns 'NaN', Division is computed to
2810 =head2 Math::BigInt - Arbitrary size integer math package
2816 Canonical notation, Input, Output
2824 =head2 Math::Complex - complex numbers and associated mathematical
2835 =item STRINGIFICATION
2843 =head2 NDBM_File - Tied access to ndbm files
2849 =head2 Net::Ping - check a remote host for reachability
2859 Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
2860 $timeout]);, $p->close();, pingecho($host [, $timeout]);
2868 =head2 Net::hostent - by-name interface to Perl's built-in gethost*()
2881 =head2 Net::netent - by-name interface to Perl's built-in getnet*()
2894 =head2 Net::protoent - by-name interface to Perl's built-in getproto*()
2905 =head2 Net::servent - by-name interface to Perl's built-in getserv*()
2918 =head2 ODBM_File - Tied access to odbm files
2924 =head2 Opcode - Disable named opcodes when compiling perl code
2934 =item Operator Names and Operator Lists
2936 an operator name (opname), an operator tag name (optag), a negated opname
2937 or optag, an operator set (opset)
2939 =item Opcode Functions
2941 opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
2942 full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
2943 define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
2946 =item Manipulating Opsets
2950 =item Predefined Opcode Tags
2952 :base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
2953 :default, :filesys_read, :sys_db, :browse, :filesys_open, :filesys_write,
2954 :subprocess, :ownprocess, :others, :still_to_be_decided, :dangerous
2960 =head2 Opcode::Safe, Safe - Compile and execute code in restricted
2967 a new namespace, an operator mask
2973 =item RECENT CHANGES
2975 =item Methods in class Safe
2977 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
2978 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
2979 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
2980 root (NAMESPACE), mask (MASK)
2982 =item Some Safety Issues
2984 Memory, CPU, Snooping, Signals, State Changes
2990 =head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
2999 =head2 POSIX - Perl interface to IEEE Std 1003.1
3011 _exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
3012 atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
3013 clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
3014 cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
3015 execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
3016 fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
3017 fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
3018 fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
3019 getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
3020 getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
3021 iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
3022 isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
3023 longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
3024 memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
3025 opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
3026 qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
3027 rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
3028 setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
3029 sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
3030 strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
3031 strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr,
3032 strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh,
3033 tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times,
3034 tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname,
3035 ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid,
3036 wcstombs, wctomb, write
3042 =item POSIX::SigAction
3048 new, addset, delset, emptyset, fillset, ismember
3050 =item POSIX::Termios
3052 new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
3053 getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
3054 setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
3055 field values, c_cflag field values, c_iflag field values, c_lflag field
3056 values, c_oflag field values
3060 =item PATHNAME CONSTANTS
3064 =item POSIX CONSTANTS
3068 =item SYSTEM CONFIGURATION
3126 =head2 Pod::Text - convert POD data to formatted ASCII text
3136 =head2 SDBM_File - Tied access to sdbm files
3142 =head2 Safe - Compile and execute code in restricted compartments
3148 a new namespace, an operator mask
3154 =item RECENT CHANGES
3156 =item Methods in class Safe
3158 permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
3159 ...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
3160 (PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
3161 root (NAMESPACE), mask (MASK)
3163 =item Some Safety Issues
3165 Memory, CPU, Snooping, Signals, State Changes
3171 =head2 Search::Dict, look - search for key in dictionary file
3177 =head2 SelectSaver - save and restore selected file handle
3183 =head2 SelfLoader - load functions only on demand
3191 =item The __DATA__ token
3193 =item SelfLoader autoloading
3195 =item Autoloading and package lexicals
3197 =item SelfLoader and AutoLoader
3199 =item __DATA__, __END__, and the FOOBAR::DATA filehandle.
3201 =item Classes and inherited methods.
3205 =item Multiple packages and fully qualified subroutine names
3207 =head2 Shell - run shell commands transparently within perl
3215 =head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
3216 socket.h defines and structure manipulators
3222 inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
3223 INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
3224 SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
3225 SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
3226 pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
3228 =head2 Symbol - manipulate Perl symbols and their names
3234 =head2 Sys::Hostname - Try every conceivable way to get hostname
3242 =head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
3243 interface to the UNIX syslog(3) calls
3249 openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
3250 setlogmask $mask_priority, closelog
3260 =head2 Term::Cap - Perl termcap interface
3268 =head2 Term::Complete - Perl word completion module
3274 E<lt>tabE<gt>Attempts word completion.
3275 Cannot be changed, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
3283 =head2 Term::ReadLine - Perl interface to various C<readline> packages. If
3284 no real package is found, substitutes stubs instead of basic functions.
3290 =item Minimal set of supported functions
3292 C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
3293 C<MinLine>, C<findConsole>, C<Features>
3297 =head2 Test::Harness - run perl standard test scripts with statistics
3305 =item The test script output
3313 C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
3314 %s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
3315 %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
3324 =head2 Text::Abbrev, abbrev - create an abbreviation table from a list
3332 =head2 Text::ParseWords - parse text into an array of tokens
3340 =head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
3353 =head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
3364 =head2 Text::Wrap - line wrapping to form simple paragraphs
3374 =head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
3380 TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
3381 this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
3385 =item MORE INFORMATION
3387 =head2 Tie::RefHash - use references as hash keys
3401 =head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
3408 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
3410 =item MORE INFORMATION
3412 =head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
3420 =head2 Time::Local - efficiently compute time from local and GMT time
3426 =head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
3437 =head2 Time::localtime - by-name interface to Perl's built-in localtime()
3448 =head2 Time::tm - internal object used by Time::gmtime and Time::localtime
3456 =head2 UNIVERSAL - base class for ALL classes (blessed references)
3462 isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), isa ( REF, TYPE )
3464 =head2 User::grent - by-name interface to Perl's built-in getgr*()
3475 =head2 User::pwent - by-name interface to Perl's built-in getpw*()
3486 =head1 AUXILIARY DOCUMENTATION
3488 Here should be listed all the extra programs' documentation, but they
3489 don't all have manual pages yet:
3511 Larry Wall E<lt>F<larry@wall.org>E<gt>, with the help of oodles