This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove perlbook, update perlfaq book listing,
[perl5.git] / pod / perltoc.pod
1
2 =head1 NAME
3
4 perltoc - perl documentation table of contents
5
6 =head1 DESCRIPTION
7
8 This page provides a brief table of contents for the rest of the Perl
9 documentation set.  It is meant to be scanned quickly or grepped
10 through to locate the proper section you're looking for.
11
12 =head1 BASIC DOCUMENTATION
13
14 =head2 perl - Practical Extraction and Report Language
15
16 =over
17
18 =item SYNOPSIS
19
20 =item DESCRIPTION
21
22 modularity and reusability using innumerable modules, embeddable and
23 extensible, roll-your-own magic variables (including multiple simultaneous
24 DBM implementations), subroutines can now be overridden, autoloaded, and
25 prototyped, arbitrarily nested data structures and anonymous functions,
26 object-oriented programming, compilability into C code or Perl bytecode,
27 support for light-weight processes (threads), support for
28 internationalization, localization, and Unicode, lexical scoping, regular
29 expression enhancements, enhanced debugger and interactive Perl
30 environment, with integrated editor support, POSIX 1003.1 compliant library
31
32 =item AVAILABILITY
33
34 =item ENVIRONMENT
35
36 =item AUTHOR
37
38 =item FILES
39
40 =item SEE ALSO
41
42 =item DIAGNOSTICS
43
44 =item BUGS
45
46 =item NOTES
47
48 =back
49
50 =head2 perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
51 20:38:02 $)
52
53 =over
54
55 =item DESCRIPTION
56
57 perlfaq: Structural overview of the FAQ, L<perlfaq1>: General Questions
58 About Perl, What is Perl?, Who supports Perl?  Who develops it?  Why is it
59 free?, Which version of Perl should I use?, What are perl4 and perl5?, What
60 is perl6?, How stable is Perl?, Is Perl difficult to learn?, How does Perl
61 compare with other languages like Java, Python, REXX, Scheme, or Tcl?, Can
62 I do [task] in Perl?, When shouldn't I program in Perl?, What's the
63 difference between "perl" and "Perl"?, Is it a Perl program or a Perl
64 script?, What is a JAPH?, Where can I get a list of Larry Wall witticisms?,
65 How can I convince my sysadmin/supervisor/employees to use version
66 (5/5.005/Perl instead of some other language)?, L<perlfaq2>: Obtaining and
67 Learning about Perl, What machines support Perl?  Where do I get it?, How
68 can I get a binary version of Perl?, I don't have a C compiler on my
69 system.  How can I compile perl?, I copied the Perl binary from one machine
70 to another, but scripts don't work, I grabbed the sources and tried to
71 compile but gdbm/dynamic loading/malloc/linking/... failed.  How do I make
72 it work?, What modules and extensions are available for Perl?  What is
73 CPAN?  What does CPAN/src/... mean?, Is there an ISO or ANSI certified
74 version of Perl?, Where can I get information on Perl?, What are the Perl
75 newsgroups on USENET?  Where do I post questions?, Where should I post
76 source code?, Perl Books, Perl in Magazines, Perl on the Net: FTP and WWW
77 Access, What mailing lists are there for perl?, Archives of
78 comp.lang.perl.misc, Where can I buy a commercial version of Perl?, Where
79 do I send bug reports?, What is perl.com?, L<perlfaq3>: Programming Tools,
80 How do I do (anything)?, How can I use Perl interactively?, Is there a Perl
81 shell?, How do I debug my Perl programs?, How do I profile my Perl
82 programs?, How do I cross-reference my Perl programs?, Is there a
83 pretty-printer (formatter) for Perl?, Is there a ctags for Perl?, Is there
84 an IDE or Windows Perl Editor?, Where can I get Perl macros for vi?, Where
85 can I get perl-mode for emacs?, How can I use curses with Perl?, How can I
86 use X or Tk with Perl?, How can I generate simple menus without using CGI
87 or Tk?, What is undump?, How can I make my Perl program run faster?, How
88 can I make my Perl program take less memory?, Is it unsafe to return a
89 pointer to local data?, How can I free an array or hash so my program
90 shrinks?, How can I make my CGI script more efficient?, How can I hide the
91 source for my Perl program?, How can I compile my Perl program into byte
92 code or C?, How can I compile Perl into Java?, How can I get C<#!perl> to
93 work on [MS-DOS,NT,...]?, Can I write useful perl programs on the command
94 line?, Why don't perl one-liners work on my DOS/Mac/VMS system?, Where can
95 I learn about CGI or Web programming in Perl?, Where can I learn about
96 object-oriented Perl programming?, Where can I learn about linking C with
97 Perl? [h2xs, xsubpp], I've read perlembed, perlguts, etc., but I can't
98 embed perl in my C program, what am I doing wrong?, When I tried to run my
99 script, I got this message. What does it mean?, What's MakeMaker?,
100 L<perlfaq4>: Data Manipulation, Why am I getting long decimals (eg,
101 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?,
102 Why isn't my octal data interpreted correctly?, Does Perl have a round()
103 function?  What about ceil() and floor()?  Trig functions?, How do I
104 convert bits into ints?, Why doesn't & work the way I want it to?, How do I
105 multiply matrices?, How do I perform an operation on a series of integers?,
106 How can I output Roman numerals?, Why aren't my random numbers random?, How
107 do I find the week-of-the-year/day-of-the-year?, How do I find the current
108 century or millennium?, How can I compare two dates and find the
109 difference?, How can I take a string and turn it into epoch seconds?, How
110 can I find the Julian Day?, How do I find yesterday's date?, Does Perl have
111 a year 2000 problem?  Is Perl Y2K compliant?, How do I validate input?, How
112 do I unescape a string?, How do I remove consecutive pairs of characters?,
113 How do I expand function calls in a string?, How do I find matching/nesting
114 anything?, How do I reverse a string?, How do I expand tabs in a string?,
115 How do I reformat a paragraph?, How can I access/change the first N letters
116 of a string?, How do I change the Nth occurrence of something?, How can I
117 count the number of occurrences of a substring within a string?, How do I
118 capitalize all the words on one line?, How can I split a [character]
119 delimited string except when inside [character]? (Comma-separated files),
120 How do I strip blank space from the beginning/end of a string?, How do I
121 pad a string with blanks or pad a number with zeroes?, How do I extract
122 selected columns from a string?, How do I find the soundex value of a
123 string?, How can I expand variables in text strings?, What's wrong with
124 always quoting "$vars"?, Why don't my <<HERE documents work?, What is the
125 difference between a list and an array?, What is the difference between
126 $array[1] and @array[1]?, How can I remove duplicate elements from a list
127 or array?, How can I tell whether a list or array contains a certain
128 element?, How do I compute the difference of two arrays?  How do I compute
129 the intersection of two arrays?, How do I test whether two arrays or hashes
130 are equal?, How do I find the first array element for which a condition is
131 true?, How do I handle linked lists?, How do I handle circular lists?, How
132 do I shuffle an array randomly?, How do I process/modify each element of an
133 array?, How do I select a random element from an array?, How do I permute N
134 elements of a list?, How do I sort an array by (anything)?, How do I
135 manipulate arrays of bits?, Why does defined() return true on empty arrays
136 and hashes?, How do I process an entire hash?, What happens if I add or
137 remove keys from a hash while iterating over it?, How do I look up a hash
138 element by value?, How can I know how many entries are in a hash?, How do I
139 sort a hash (optionally by value instead of key)?, How can I always keep my
140 hash sorted?, What's the difference between "delete" and "undef" with
141 hashes?, Why don't my tied hashes make the defined/exists distinction?, How
142 do I reset an each() operation part-way through?, How can I get the unique
143 keys from two hashes?, How can I store a multidimensional array in a DBM
144 file?, How can I make my hash remember the order I put elements into it?,
145 Why does passing a subroutine an undefined element in a hash create it?,
146 How can I make the Perl equivalent of a C structure/C++ class/hash or array
147 of hashes or arrays?, How can I use a reference as a hash key?, How do I
148 handle binary data correctly?, How do I determine whether a scalar is a
149 number/whole/integer/float?, How do I keep persistent data across program
150 calls?, How do I print out or copy a recursive data structure?, How do I
151 define methods for every class/object?, How do I verify a credit card
152 checksum?, How do I pack arrays of doubles or floats for XS code?,
153 L<perlfaq5>: Files and Formats, How do I flush/unbuffer an output
154 filehandle?  Why must I do this?, How do I change one line in a file/delete
155 a line in a file/insert a line in the middle of a file/append to the
156 beginning of a file?, How do I count the number of lines in a file?, How do
157 I make a temporary file name?, How can I manipulate fixed-record-length
158 files?, How can I make a filehandle local to a subroutine?  How do I pass
159 filehandles between subroutines?  How do I make an array of filehandles?,
160 How can I use a filehandle indirectly?, How can I set up a footer format to
161 be used with write()?, How can I write() into a string?, How can I output
162 my numbers with commas added?, How can I translate tildes (~) in a
163 filename?, How come when I open a file read-write it wipes it out?, Why do
164 I sometimes get an "Argument list too long" when I use <*>?, Is there a
165 leak/bug in glob()?, How can I open a file with a leading ">" or trailing
166 blanks?, How can I reliably rename a file?, How can I lock a file?, Why
167 can't I just open(FH, ">file.lock")?, I still don't get locking.  I just
168 want to increment the number in the file.  How can I do this?, How do I
169 randomly update a binary file?, How do I get a file's timestamp in perl?,
170 How do I set a file's timestamp in perl?, How do I print to more than one
171 file at once?, How can I read in an entire file all at once?, How can I
172 read in a file by paragraphs?, How can I read a single character from a
173 file?  From the keyboard?, How can I tell whether there's a character
174 waiting on a filehandle?, How do I do a C<tail -f> in perl?, How do I dup()
175 a filehandle in Perl?, How do I close a file descriptor by number?, Why
176 can't I use "C:\temp\foo" in DOS paths?  What doesn't `C:\temp\foo.exe`
177 work?, Why doesn't glob("*.*") get all the files?, Why does Perl let me
178 delete read-only files?  Why does C<-i> clobber protected files?  Isn't
179 this a bug in Perl?, How do I select a random line from a file?, Why do I
180 get weird spaces when I print an array of lines?, L<perlfaq6>: Regexps, How
181 can I hope to use regular expressions without creating illegible and
182 unmaintainable code?, I'm having trouble matching over more than one line. 
183 What's wrong?, How can I pull out lines between two patterns that are
184 themselves on different lines?, I put a regular expression into $/ but it
185 didn't work. What's wrong?, How do I substitute case insensitively on the
186 LHS, but preserving case on the RHS?, How can I make C<\w> match national
187 character sets?, How can I match a locale-smart version of C</[a-zA-Z]/>?,
188 How can I quote a variable to use in a regex?, What is C</o> really for?,
189 How do I use a regular expression to strip C style comments from a file?,
190 Can I use Perl regular expressions to match balanced text?, What does it
191 mean that regexes are greedy?  How can I get around it?, How do I process
192 each word on each line?, How can I print out a word-frequency or
193 line-frequency summary?, How can I do approximate matching?, How do I
194 efficiently match many regular expressions at once?, Why don't
195 word-boundary searches with C<\b> work for me?, Why does using $&, $`, or
196 $' slow my program down?, What good is C<\G> in a regular expression?, Are
197 Perl regexes DFAs or NFAs?  Are they POSIX compliant?, What's wrong with
198 using grep or map in a void context?, How can I match strings with
199 multibyte characters?, How do I match a pattern that is supplied by the
200 user?, L<perlfaq7>: General Perl Language Issues, Can I get a BNF/yacc/RE
201 for the Perl language?, What are all these $@%&* punctuation signs, and how
202 do I know when to use them?, Do I always/never have to quote my strings or
203 use semicolons and commas?, How do I skip some return values?, How do I
204 temporarily block warnings?, What's an extension?, Why do Perl operators
205 have different precedence than C operators?, How do I declare/create a
206 structure?, How do I create a module?, How do I create a class?, How can I
207 tell if a variable is tainted?, What's a closure?, What is variable suicide
208 and how can I prevent it?, How can I pass/return a {Function, FileHandle,
209 Array, Hash, Method, Regex}?, How do I create a static variable?, What's
210 the difference between dynamic and lexical (static) scoping?  Between
211 local() and my()?, How can I access a dynamic variable while a similarly
212 named lexical is in scope?, What's the difference between deep and shallow
213 binding?, Why doesn't "my($foo) = <FILE>;" work right?, How do I redefine a
214 builtin function, operator, or method?, What's the difference between
215 calling a function as &foo and foo()?, How do I create a switch or case
216 statement?, How can I catch accesses to undefined
217 variables/functions/methods?, Why can't a method included in this same file
218 be found?, How can I find out my current package?, How can I comment out a
219 large block of perl code?, How do I clear a package?, How can I use a
220 variable as a variable name?, L<perlfaq8>: System Interaction, How do I
221 find out which operating system I'm running under?, How come exec() doesn't
222 return?, How do I do fancy stuff with the keyboard/screen/mouse?, How do I
223 print something out in color?, How do I read just one key without waiting
224 for a return key?, How do I check whether input is ready on the keyboard?,
225 How do I clear the screen?, How do I get the screen size?, How do I ask the
226 user for a password?, How do I read and write the serial port?, How do I
227 decode encrypted password files?, How do I start a process in the
228 background?, How do I trap control characters/signals?, How do I modify the
229 shadow password file on a Unix system?, How do I set the time and date?,
230 How can I sleep() or alarm() for under a second?, How can I measure time
231 under a second?, How can I do an atexit() or setjmp()/longjmp()? (Exception
232 handling), Why doesn't my sockets program work under System V (Solaris)?
233 What does the error message "Protocol not supported" mean?, How can I call
234 my system's unique C functions from Perl?, Where do I get the include files
235 to do ioctl() or syscall()?, Why do setuid perl scripts complain about
236 kernel problems?, How can I open a pipe both to and from a command?, Why
237 can't I get the output of a command with system()?, How can I capture
238 STDERR from an external command?, Why doesn't open() return an error when a
239 pipe open fails?, What's wrong with using backticks in a void context?, How
240 can I call backticks without shell processing?, Why can't my script read
241 from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?, How can I
242 convert my shell script to perl?, Can I use perl to run a telnet or ftp
243 session?, How can I write expect in Perl?, Is there a way to hide perl's
244 command line from programs such as "ps"?, I {changed directory, modified my
245 environment} in a perl script.  How come the change disappeared when I
246 exited the script?  How do I get my changes to be visible?, How do I close
247 a process's filehandle without waiting for it to complete?, How do I fork a
248 daemon process?, How do I make my program run with sh and csh?, How do I
249 find out if I'm running interactively or not?, How do I timeout a slow
250 event?, How do I set CPU limits?, How do I avoid zombies on a Unix system?,
251 How do I use an SQL database?, How do I make a system() exit on control-C?,
252 How do I open a file without blocking?, How do I install a module from
253 CPAN?, What's the difference between require and use?, How do I keep my own
254 module/library directory?, How do I add the directory my program lives in
255 to the module/library search path?, How do I add a directory to my include
256 path at runtime?, What is socket.ph and where do I get it?, L<perlfaq9>:
257 Networking, My CGI script runs from the command line but not the browser.  
258 (500 Server Error), How can I get better error messages from a CGI
259 program?, How do I remove HTML from a string?, How do I extract URLs?, How
260 do I download a file from the user's machine?  How do I open a file on
261 another machine?, How do I make a pop-up menu in HTML?, How do I fetch an
262 HTML file?, How do I automate an HTML form submission?, How do I decode or
263 create those %-encodings on the web?, How do I redirect to another page?,
264 How do I put a password on my web pages?, How do I edit my .htpasswd and
265 .htgroup files with Perl?, How do I make sure users can't enter values into
266 a form that cause my CGI script to do bad things?, How do I parse a mail
267 header?, How do I decode a CGI form?, How do I check a valid mail address?,
268 How do I decode a MIME/BASE64 string?, How do I return the user's mail
269 address?, How do I send mail?, How do I read mail?, How do I find out my
270 hostname/domainname/IP address?, How do I fetch a news article or the
271 active newsgroups?, How do I fetch/put an FTP file?, How can I do RPC in
272 Perl?
273
274 =over
275
276 =item Where to get this document
277
278 =item How to contribute to this document
279
280 =item What will happen if you mail your Perl programming problems to the
281 authors
282
283 =back
284
285 =item Credits
286
287 =item Author and Copyright Information
288
289 =over
290
291 =item Bundled Distributions
292
293 =item Disclaimer
294
295 =back
296
297 =item Changes
298
299 23/May/99, 13/April/99, 7/January/99, 22/June/98, 24/April/97, 23/April/97,
300 25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97
301
302 =back
303
304 =head2 perltoc - perl documentation table of contents
305
306 =over
307
308 =item DESCRIPTION
309
310 =item BASIC DOCUMENTATION
311
312 =over
313
314 =item perl - Practical Extraction and Report Language
315
316 SYNOPSIS, DESCRIPTION, AVAILABILITY, ENVIRONMENT, AUTHOR, FILES, SEE ALSO,
317 DIAGNOSTICS, BUGS, NOTES
318
319 =item perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
320 20:38:02 $)
321
322 DESCRIPTION
323
324 =back
325
326 =back
327
328 =head2 perlsyn - Perl syntax
329
330 =over
331
332 =item DESCRIPTION
333
334 =over
335
336 =item Declarations
337
338 =item Simple statements
339
340 =item Compound statements
341
342 =item Loop Control
343
344 =item For Loops
345
346 =item Foreach Loops
347
348 =item Basic BLOCKs and Switch Statements
349
350 =item Goto
351
352 =item PODs: Embedded Documentation
353
354 =item Plain Old Comments (Not!)
355
356 =back
357
358 =back
359
360 =head2 perldata - Perl data types
361
362 =over
363
364 =item DESCRIPTION
365
366 =over
367
368 =item Variable names
369
370 =item Context
371
372 =item Scalar values
373
374 =item Scalar value constructors
375
376 =item List value constructors
377
378 =item Slices
379
380 =item Typeglobs and Filehandles
381
382 =back
383
384 =item SEE ALSO
385
386 =back
387
388 =head2 perlop - Perl operators and precedence
389
390 =over
391
392 =item SYNOPSIS
393
394 =item DESCRIPTION
395
396 =over
397
398 =item Terms and List Operators (Leftward)
399
400 =item The Arrow Operator
401
402 =item Auto-increment and Auto-decrement
403
404 =item Exponentiation
405
406 =item Symbolic Unary Operators
407
408 =item Binding Operators
409
410 =item Multiplicative Operators
411
412 =item Additive Operators
413
414 =item Shift Operators
415
416 =item Named Unary Operators
417
418 =item Relational Operators
419
420 =item Equality Operators
421
422 =item Bitwise And
423
424 =item Bitwise Or and Exclusive Or
425
426 =item C-style Logical And
427
428 =item C-style Logical Or
429
430 =item Range Operators
431
432 =item Conditional Operator
433
434 =item Assignment Operators
435
436 =item Comma Operator
437
438 =item List Operators (Rightward)
439
440 =item Logical Not
441
442 =item Logical And
443
444 =item Logical or and Exclusive Or
445
446 =item C Operators Missing From Perl
447
448 unary &, unary *, (TYPE)
449
450 =item Quote and Quote-like Operators
451
452 =item Regexp Quote-Like Operators
453
454 ?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
455 qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
456 s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
457 y/SEARCHLIST/REPLACEMENTLIST/cds
458
459 =item Gory details of parsing quoted constructs
460
461 Finding the end, Removal of backslashes before delimiters, Interpolation,
462 C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
463 C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
464 C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
465 regular expressions
466
467 =item I/O Operators
468
469 =item Constant Folding
470
471 =item Bitwise String Operators
472
473 =item Integer Arithmetic
474
475 =item Floating-point Arithmetic
476
477 =item Bigger Numbers
478
479 =back
480
481 =back
482
483 =head2 perlsub - Perl subroutines
484
485 =over
486
487 =item SYNOPSIS
488
489 =item DESCRIPTION
490
491 =over
492
493 =item Private Variables via my()
494
495 =item Persistent Private Variables
496
497 =item Temporary Values via local()
498
499 =item Lvalue subroutines
500
501 =item Passing Symbol Table Entries (typeglobs)
502
503 =item When to Still Use local()
504
505 1. You need to give a global variable a temporary value, especially $_, 2.
506 You need to create a local file or directory handle or a local function, 3.
507 You want to temporarily change just one element of an array or hash
508
509 =item Pass by Reference
510
511 =item Prototypes
512
513 =item Constant Functions
514
515 =item Overriding Built-in Functions
516
517 =item Autoloading
518
519 =item Subroutine Attributes
520
521 =back
522
523 =item SEE ALSO
524
525 =back
526
527 =head2 perlfunc - Perl builtin functions
528
529 =over
530
531 =item DESCRIPTION
532
533 =over
534
535 =item Perl Functions by Category
536
537 Functions for SCALARs or strings, Regular expressions and pattern matching,
538 Numeric functions, Functions for real @ARRAYs, Functions for list data,
539 Functions for real %HASHes, Input and output functions, Functions for fixed
540 length data or records, Functions for filehandles, files, or directories,
541 Keywords related to the control flow of your perl program, Keywords related
542 to scoping, Miscellaneous functions, Functions for processes and process
543 groups, Keywords related to perl modules, Keywords related to classes and
544 object-orientedness, Low-level socket functions, System V interprocess
545 communication functions, Fetching user and group info, Fetching network
546 info, Time-related functions, Functions new in perl5, Functions obsoleted
547 in perl5
548
549 =item Portability
550
551 =item Alphabetical Listing of Perl Functions
552
553 I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
554 NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
555 binmode FILEHANDLE, DISCIPLINE, binmode FILEHANDLE, bless REF,CLASSNAME,
556 bless REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE,
557 chomp LIST, chomp, chop VARIABLE, chop LIST, chop, chown LIST, chr NUMBER,
558 chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE,
559 connect SOCKET,NAME, continue BLOCK, cos EXPR, crypt PLAINTEXT,SALT,
560 dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete
561 EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump,
562 each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST,
563 exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl
564 FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION,
565 fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin,
566 getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam
567 NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname
568 NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr
569 ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
570 getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
571 getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
572 STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
573 endhostent, endnetent, endprotoent, endservent, getsockname SOCKET,
574 getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL,
575 goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex,
576 import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
577 FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST,
578 last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
579 link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
580 lock, log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK
581 LIST, map EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl
582 ID,CMD,ARG, msgget KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd
583 ID,MSG,FLAGS, my EXPR, my EXPR : ATTRIBUTES, next LABEL, next, no Module
584 LIST, oct EXPR, oct, open FILEHANDLE,MODE,LIST, open FILEHANDLE,EXPR, open
585 FILEHANDLE, opendir DIRHANDLE,EXPR, ord EXPR, ord, our EXPR, pack
586 TEMPLATE,LIST, package, package NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop
587 ARRAY, pop, pos SCALAR, pos, print FILEHANDLE LIST, print LIST, print,
588 printf FILEHANDLE FORMAT, LIST, printf FORMAT, LIST, prototype FUNCTION,
589 push ARRAY,LIST, q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/,
590 quotemeta EXPR, quotemeta, rand EXPR, rand, read
591 FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir
592 DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR, recv
593 SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, ref EXPR, ref, rename
594 OLDNAME,NEWNAME, require VERSION, require EXPR, require, reset EXPR, reset,
595 return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
596 STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
597 EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
598 FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
599 ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
600 SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
601 WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
602 shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
603 shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
604 EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
605 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
606 sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
607 splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split
608 /PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR,
609 sqrt, srand EXPR, srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR,
610 study, sub BLOCK, sub NAME, sub NAME BLOCK, substr
611 EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
612 EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST, sysopen
613 FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
614 FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
615 FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
616 FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
617 syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
618 VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
619 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
620 ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
621 TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module VERSION LIST,
622 use Module VERSION, use Module LIST, use Module, use VERSION, utime LIST,
623 values HASH, vec EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn
624 LIST, write FILEHANDLE, write EXPR, write, y///
625
626 =back
627
628 =back
629
630 =head2 perlreftut - Mark's very short tutorial about references
631
632 =over
633
634 =item DESCRIPTION
635
636 =item Who Needs Complicated Data Structures?
637
638 =item The Solution
639
640 =item Syntax
641
642 =over
643
644 =item Making References
645
646 =item Using References
647
648 =back
649
650 =item An Example
651
652 =item Arrow Rule
653
654 =item Solution
655
656 =item The Rest
657
658 =item Summary
659
660 =item Credits
661
662 =over
663
664 =item Distribution Conditions
665
666 =back
667
668 =back
669
670 =head2 perldsc - Perl Data Structures Cookbook
671
672 =over
673
674 =item DESCRIPTION
675
676 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
677 more elaborate constructs
678
679 =item REFERENCES
680
681 =item COMMON MISTAKES
682
683 =item CAVEAT ON PRECEDENCE
684
685 =item WHY YOU SHOULD ALWAYS C<use strict>
686
687 =item DEBUGGING
688
689 =item CODE EXAMPLES
690
691 =item ARRAYS OF ARRAYS
692
693 =over
694
695 =item Declaration of a ARRAY OF ARRAYS
696
697 =item Generation of a ARRAY OF ARRAYS
698
699 =item Access and Printing of a ARRAY OF ARRAYS
700
701 =back
702
703 =item HASHES OF ARRAYS
704
705 =over
706
707 =item Declaration of a HASH OF ARRAYS
708
709 =item Generation of a HASH OF ARRAYS
710
711 =item Access and Printing of a HASH OF ARRAYS
712
713 =back
714
715 =item ARRAYS OF HASHES
716
717 =over
718
719 =item Declaration of a ARRAY OF HASHES
720
721 =item Generation of a ARRAY OF HASHES
722
723 =item Access and Printing of a ARRAY OF HASHES
724
725 =back
726
727 =item HASHES OF HASHES
728
729 =over
730
731 =item Declaration of a HASH OF HASHES
732
733 =item Generation of a HASH OF HASHES
734
735 =item Access and Printing of a HASH OF HASHES
736
737 =back
738
739 =item MORE ELABORATE RECORDS
740
741 =over
742
743 =item Declaration of MORE ELABORATE RECORDS
744
745 =item Declaration of a HASH OF COMPLEX RECORDS
746
747 =item Generation of a HASH OF COMPLEX RECORDS
748
749 =back
750
751 =item Database Ties
752
753 =item SEE ALSO
754
755 =item AUTHOR
756
757 =back
758
759 =head2 perllol - Manipulating Arrays of Arrays in Perl
760
761 =over
762
763 =item DESCRIPTION
764
765 =item Declaration and Access of Arrays of Arrays
766
767 =item Growing Your Own
768
769 =item Access and Printing
770
771 =item Slices
772
773 =item SEE ALSO
774
775 =item AUTHOR
776
777 =back
778
779 =head2 perlrequick - Perl regular expressions quick start
780
781 =over
782
783 =item DESCRIPTION
784
785 =item The Guide
786
787 =over
788
789 =item Simple word matching
790
791 =item Using character classes
792
793 \d is a digit and represents [0-9], \s is a whitespace character and
794 represents [\ \t\r\n\f], \w is a word character (alphanumeric or _) and
795 represents [0-9a-zA-Z_], \D is a negated \d; it represents any character
796 but a digit [^0-9], \S is a negated \s; it represents any non-whitespace
797 character [^\s], \W is a negated \w; it represents any non-word character
798 [^\w], The period '.' matches any character but "\n"
799
800 =item Matching this or that
801
802 =item Grouping things and hierarchical matching
803
804 =item Extracting matches
805
806 =item Matching repetitions
807
808 C<a?> = match 'a' 1 or 0 times, C<a*> = match 'a' 0 or more times, i.e.,
809 any number of times, C<a+> = match 'a' 1 or more times, i.e., at least
810 once, C<a{n,m}> = match at least C<n> times, but not more than C<m> times,
811 C<a{n,}> = match at least C<n> or more times, C<a{n}> = match exactly C<n>
812 times
813
814 =item More matching
815
816 =item Search and replace
817
818 =item The split operator
819
820 =back
821
822 =item BUGS
823
824 =item SEE ALSO
825
826 =item AUTHOR AND COPYRIGHT
827
828 =over
829
830 =item Acknowledgments
831
832 =back
833
834 =back
835
836 =head2 perlretut - Perl regular expressions tutorial
837
838 =over
839
840 =item DESCRIPTION
841
842 =item Part 1: The basics
843
844 =over
845
846 =item Simple word matching
847
848 =item Using character classes
849
850 \d is a digit and represents [0-9], \s is a whitespace character and
851 represents [\ \t\r\n\f], \w is a word character (alphanumeric or _) and
852 represents [0-9a-zA-Z_], \D is a negated \d; it represents any character
853 but a digit [^0-9], \S is a negated \s; it represents any non-whitespace
854 character [^\s], \W is a negated \w; it represents any non-word character
855 [^\w], The period '.' matches any character but "\n", no modifiers (//):
856 Default behavior.  C<'.'> matches any character except C<"\n">.  C<^>
857 matches only at the beginning of the string and C<$> matches only at the
858 end or before a newline at the end, s modifier (//s): Treat string as a
859 single long line.  C<'.'> matches any character, even C<"\n">.  C<^>
860 matches only at the beginning of the string and C<$> matches only at the
861 end or before a newline at the end, m modifier (//m): Treat string as a set
862 of multiple lines.  C<'.'> matches any character except C<"\n">.  C<^> and
863 C<$> are able to match at the start or end of I<any> line within the
864 string, both s and m modifiers (//sm): Treat string as a single long line,
865 but detect multiple lines.  C<'.'> matches any character, even C<"\n">. 
866 C<^> and C<$>, however, are able to match at the start or end of I<any>
867 line within the string
868
869 =item Matching this or that
870
871 =item Grouping things and hierarchical matching
872
873 0 Start with the first letter in the string 'a', 1 Try the first
874 alternative in the first group 'abd', 2 Match 'a' followed by 'b'. So far
875 so good, 3 'd' in the regexp doesn't match 'c' in the string - a dead end. 
876 So backtrack two characters and pick the second alternative in the first
877 group 'abc', 4 Match 'a' followed by 'b' followed by 'c'.  We are on a roll
878 and have satisfied the first group. Set $1 to 'abc', 5 Move on to the
879 second group and pick the first alternative 'df', 6 Match the 'd', 7 'f' in
880 the regexp doesn't match 'e' in the string, so a dead end.  Backtrack one
881 character and pick the second alternative in the second group 'd', 8 'd'
882 matches. The second grouping is satisfied, so set $2 to 'd', 9 We are at
883 the end of the regexp, so we are done! We have matched 'abcd' out of the
884 string "abcde"
885
886 =item Extracting matches
887
888 =item Matching repetitions
889
890 C<a?> = match 'a' 1 or 0 times, C<a*> = match 'a' 0 or more times, i.e.,
891 any number of times, C<a+> = match 'a' 1 or more times, i.e., at least
892 once, C<a{n,m}> = match at least C<n> times, but not more than C<m> times,
893 C<a{n,}> = match at least C<n> or more times, C<a{n}> = match exactly C<n>
894 times, Principle 0: Taken as a whole, any regexp will be matched at the
895 earliest possible position in the string, Principle 1: In an alternation
896 C<a|b|c...>, the leftmost alternative that allows a match for the whole
897 regexp will be the one used, Principle 2: The maximal matching quantifiers
898 C<?>, C<*>, C<+> and C<{n,m}> will in general match as much of the string
899 as possible while still allowing the whole regexp to match, Principle 3: If
900 there are two or more elements in a regexp, the leftmost greedy quantifier,
901 if any, will match as much of the string as possible while still allowing
902 the whole regexp to match.  The next leftmost greedy quantifier, if any,
903 will try to match as much of the string remaining available to it as
904 possible, while still allowing the whole regexp to match.  And so on, until
905 all the regexp elements are satisfied, C<a??> = match 'a' 0 or 1 times. Try
906 0 first, then 1, C<a*?> = match 'a' 0 or more times, i.e., any number of
907 times, but as few times as possible, C<a+?> = match 'a' 1 or more times,
908 i.e., at least once, but as few times as possible, C<a{n,m}?> = match at
909 least C<n> times, not more than C<m> times, as few times as possible,
910 C<a{n,}?> = match at least C<n> times, but as few times as possible,
911 C<a{n}?> = match exactly C<n> times.  Because we match exactly C<n> times,
912 C<a{n}?> is equivalent to C<a{n}> and is just there for notational
913 consistency, Principle 3: If there are two or more elements in a regexp,
914 the leftmost greedy (non-greedy) quantifier, if any, will match as much
915 (little) of the string as possible while still allowing the whole regexp to
916 match.  The next leftmost greedy (non-greedy) quantifier, if any, will try
917 to match as much (little) of the string remaining available to it as
918 possible, while still allowing the whole regexp to match.  And so on, until
919 all the regexp elements are satisfied, 0 Start with the first letter in the
920 string 't', 1 The first quantifier '.*' starts out by matching the whole
921 string 'the cat in the hat', 2 'a' in the regexp element 'at' doesn't match
922 the end of the string.  Backtrack one character, 3 'a' in the regexp
923 element 'at' still doesn't match the last letter of the string 't', so
924 backtrack one more character, 4 Now we can match the 'a' and the 't', 5
925 Move on to the third element '.*'.  Since we are at the end of the string
926 and '.*' can match 0 times, assign it the empty string, 6 We are done!
927
928 =item Building a regexp
929
930 specifying the task in detail,, breaking down the problem into smaller
931 parts,, translating the small parts into regexps,, combining the regexps,,
932 and optimizing the final combined regexp
933
934 =item Using regular expressions in Perl
935
936 =back
937
938 =item Part 2: Power tools
939
940 =over
941
942 =item More on characters, strings, and character classes
943
944 =item Compiling and saving regular expressions
945
946 =item Embedding comments and modifiers in a regular expression
947
948 =item Non-capturing groupings
949
950 =item Looking ahead and looking behind
951
952 =item Using independent subexpressions to prevent backtracking
953
954 =item Conditional expressions
955
956 =item A bit of magic: executing Perl code in a regular expression
957
958 =item Pragmas and debugging
959
960 =back
961
962 =item BUGS
963
964 =item SEE ALSO
965
966 =item AUTHOR AND COPYRIGHT
967
968 =over
969
970 =item Acknowledgments
971
972 =back
973
974 =back
975
976 =head2 perlrun - how to execute the Perl interpreter
977
978 =over
979
980 =item SYNOPSIS
981
982 =item DESCRIPTION
983
984 =over
985
986 =item #! and quoting on non-Unix systems
987
988 OS/2, MS-DOS, Win95/NT, Macintosh, VMS
989
990 =item Location of Perl
991
992 =item Command Switches
993
994 B<-0>[I<digits>], B<-a>, B<-C>, B<-c>, B<-d>, B<-d:>I<foo>,
995 B<-D>I<letters>, B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>,
996 B<-h>, B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
997 B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
998 B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
999 B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-W>, B<-X>,
1000 B<-x> I<directory>
1001
1002 =back
1003
1004 =item ENVIRONMENT
1005
1006 HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1007 (specific to the Win32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL,
1008 PERL_ROOT (specific to the VMS port), SYS$LOGIN (specific to the VMS port)
1009
1010 =back
1011
1012 =head2 perllexwarn - Perl Lexical Warnings
1013
1014 =over
1015
1016 =item DESCRIPTION
1017
1018 =over
1019
1020 =item Default Warnings and Optional Warnings
1021
1022 =item What's wrong with B<-w> and C<$^W>
1023
1024 =item Controlling Warnings from the Command Line
1025
1026 B<-w>, B<-W>, B<-X>
1027
1028 =item Backward Compatibility
1029
1030 =item Category Hierarchy
1031
1032 =item Fatal Warnings
1033
1034 =item Reporting Warnings from a Module
1035
1036 =back
1037
1038 =item TODO
1039
1040 =item SEE ALSO
1041
1042 =item AUTHOR
1043
1044 =back
1045
1046 =head2 perldebug - Perl debugging
1047
1048 =over
1049
1050 =item DESCRIPTION
1051
1052 =item The Perl Debugger
1053
1054 =over
1055
1056 =item Debugger Commands
1057
1058 h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
1059 [expr], r, <CR>, c [line|sub], l, l min+incr, l min-max, l line, l subname,
1060 -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]regex], t, t expr,
1061 b [line] [condition], b subname [condition], b postpone subname
1062 [condition], b load filename, b compile subname, d [line], D, a [line]
1063 command, a [line], A, W expr, W, O booloption .., O anyoption? .., O
1064 option=value .., < ?, < [ command ], << command, > ?, > command, >>
1065 command, { ?, { [ command ], {{ command, ! number, ! -number, ! pattern, !!
1066 cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, man [manpage]
1067
1068 =item Configurable Options
1069
1070 C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
1071 C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
1072 C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
1073 C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
1074 C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
1075 C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>
1076
1077 =item Debugger input/output
1078
1079 Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
1080 listing
1081
1082 =item Debugging compile-time statements
1083
1084 =item Debugger Customization
1085
1086 =item Readline Support
1087
1088 =item Editor Support for Debugging
1089
1090 =item The Perl Profiler
1091
1092 =back
1093
1094 =item Debugging regular expressions
1095
1096 =item Debugging memory usage
1097
1098 =item SEE ALSO
1099
1100 =item BUGS
1101
1102 =back
1103
1104 =head2 perlopentut - tutorial on opening things in Perl
1105
1106 =over
1107
1108 =item DESCRIPTION
1109
1110 =item Open E<agrave> la shell
1111
1112 =over
1113
1114 =item Simple Opens
1115
1116 =item Pipe Opens
1117
1118 =item The Minus File
1119
1120 =item Mixing Reads and Writes
1121
1122 =item Filters 
1123
1124 =back
1125
1126 =item Open E<agrave> la C
1127
1128 =over
1129
1130 =item Permissions E<agrave> la mode
1131
1132 =back
1133
1134 =item Obscure Open Tricks
1135
1136 =over
1137
1138 =item Re-Opening Files (dups)
1139
1140 =item Dispelling the Dweomer
1141
1142 =item Paths as Opens
1143
1144 =item Single Argument Open
1145
1146 =item Playing with STDIN and STDOUT
1147
1148 =back
1149
1150 =item Other I/O Issues
1151
1152 =over
1153
1154 =item Opening Non-File Files
1155
1156 =item Binary Files
1157
1158 =item File Locking
1159
1160 =back
1161
1162 =item SEE ALSO 
1163
1164 =item AUTHOR and COPYRIGHT
1165
1166 =item HISTORY
1167
1168 =back
1169
1170 =head2 perlvar - Perl predefined variables
1171
1172 =over
1173
1174 =item DESCRIPTION
1175
1176 =over
1177
1178 =item Predefined Names
1179
1180 $ARG, $_, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
1181 $LAST_PAREN_MATCH, $+, @LAST_MATCH_END, @+, $MULTILINE_MATCHING, $*,
1182 input_line_number HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $,
1183 input_record_separator HANDLE EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/,
1184 autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE
1185 EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE
1186 EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $",
1187 $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE
1188 EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR,
1189 $FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR,
1190 $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START, @-, C<$`> is the same as
1191 C<substr($var, 0, $-[0])>, C<$&> is the same as C<substr($var, $-[0], $+[0]
1192 - $-[0])>, C<$'> is the same as C<substr($var, $+[0])>, C<$1> is the same
1193 as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2> is the same as
1194 C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as C<substr $var,
1195 $-[3], $+[3] - $-[3])>, format_name HANDLE EXPR, $FORMAT_NAME, $~,
1196 format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1197 format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1198 $:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
1199 $CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1200 $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1201 $EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1202 $EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $], $COMPILING, $^C,
1203 $DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, %^H, $INPLACE_EDIT, $^I, $^M,
1204 $OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
1205 0x100, 0x200, $LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S,
1206 $BASETIME, $^T, $PERL_VERSION, $^V, $WARNING, $^W, ${^WARNING_BITS},
1207 ${^WIDE_SYSTEM_CALLS}, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC, @_, %INC,
1208 %ENV, $ENV{expr}, %SIG, $SIG{expr}
1209
1210 =item Error Indicators
1211
1212 =item Technical Note on the Syntax of Variable Names
1213
1214 =back
1215
1216 =item BUGS
1217
1218 =back
1219
1220 =head2 perlmod - Perl modules (packages and symbol tables)
1221
1222 =over
1223
1224 =item DESCRIPTION
1225
1226 =over
1227
1228 =item Packages
1229
1230 =item Symbol Tables
1231
1232 =item Package Constructors and Destructors
1233
1234 =item Perl Classes
1235
1236 =item Perl Modules
1237
1238 =back
1239
1240 =item SEE ALSO
1241
1242 =back
1243
1244 =head2 perlpod - plain old documentation
1245
1246 =over
1247
1248 =item DESCRIPTION
1249
1250 =over
1251
1252 =item Verbatim Paragraph
1253
1254 =item Command Paragraph
1255
1256 =item Ordinary Block of Text
1257
1258 =item The Intent
1259
1260 =item Embedding Pods in Perl Modules
1261
1262 =item Common Pod Pitfalls
1263
1264 =back
1265
1266 =item SEE ALSO
1267
1268 =item AUTHOR
1269
1270 =back
1271
1272 =head2 perlstyle - Perl style guide
1273
1274 =over
1275
1276 =item DESCRIPTION
1277
1278 =back
1279
1280 =head2 perlmodlib - constructing new Perl modules and finding existing ones
1281
1282 =over
1283
1284 =item DESCRIPTION
1285
1286 =item THE PERL MODULE LIBRARY
1287
1288 =over
1289
1290 =item Pragmatic Modules
1291
1292 attributes, attrs, autouse, base, blib, bytes, charnames, constant,
1293 diagnostics, fields, filetest, integer, less, locale, open, ops, overload,
1294 re, sigtrap, strict, subs, utf8, vars, warnings
1295
1296 =item Standard Modules
1297
1298 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
1299 B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
1300 B::Showlex, B::Stackobj, B::Terse, B::Xref, Benchmark, ByteLoader, CGI,
1301 CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push,
1302 CGI::Switch, CPAN, CPAN::FirstTime, CPAN::Nox, Carp, Carp::Heavy,
1303 Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, DirHandle, Dumpvalue,
1304 English, Env, Exporter, Exporter::Heavy, ExtUtils::Command,
1305 ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist,
1306 ExtUtils::MM_Cygwin, ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS,
1307 ExtUtils::MM_Win32, ExtUtils::MakeMaker, ExtUtils::Manifest,
1308 ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::Packlist,
1309 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree,
1310 File::Compare, File::Copy, File::DosGlob, File::Find, File::Path,
1311 File::Spec, File::Spec::Functions, File::Spec::Mac, File::Spec::OS2,
1312 File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, File::Temp,
1313 File::stat, FileCache, FileHandle, FindBin, Getopt::Long, Getopt::Std,
1314 I18N::Collate, IO, IPC::Open2, IPC::Open3, Math::BigFloat, Math::BigInt,
1315 Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent,
1316 Net::protoent, Net::servent, O, ODBM_File, Opcode, Pod::Checker, Pod::Find,
1317 Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseUtils,
1318 Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color,
1319 Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver,
1320 SelfLoader, Shell, Socket, Symbol, Term::ANSIColor, Term::Cap,
1321 Term::Complete, Term::ReadLine, Test, Test::Harness, Text::Abbrev,
1322 Text::ParseWords, Text::Soundex, Text::Wrap, Tie::Array, Tie::Handle,
1323 Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local,
1324 Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, User::grent,
1325 User::pwent
1326
1327 =item Extension Modules
1328
1329 =back
1330
1331 =item CPAN
1332
1333 Language Extensions and Documentation Tools, Development Support, Operating
1334 System Interfaces, Networking, Device Control (modems) and InterProcess
1335 Communication, Data Types and Data Type Utilities, Database Interfaces,
1336 User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1337 File Names, File Systems and File Locking (see also File Handles), String
1338 Processing, Language Text Processing, Parsing, and Searching, Option,
1339 Argument, Parameter, and Configuration File Processing,
1340 Internationalization and Locale, Authentication, Security, and Encryption,
1341 World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1342 Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1343 and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1344 exceptions etc), File Handle and Input/Output Stream Utilities,
1345 Miscellaneous Modules, Africa, Asia, Australasia, Central America, Europe,
1346 North America, South America
1347
1348 =item Modules: Creation, Use, and Abuse
1349
1350 =over
1351
1352 =item Guidelines for Module Creation
1353
1354 Do similar modules already exist in some form?, Try to design the new
1355 module to be easy to extend and reuse, Some simple style guidelines, Select
1356 what to export, Select a name for the module, Have you got it right?,
1357 README and other Additional Files, A description of the
1358 module/package/extension etc, A copyright notice - see below, Prerequisites
1359 - what else you may need to have, How to build it - possible changes to
1360 Makefile.PL etc, How to install it, Recent changes in this release,
1361 especially incompatibilities, Changes / enhancements you plan to make in
1362 the future, Adding a Copyright Notice, Give the module a
1363 version/issue/release number, How to release and distribute a module, Take
1364 care when changing a released module
1365
1366 =item Guidelines for Converting Perl 4 Library Scripts into Modules
1367
1368 There is no requirement to convert anything, Consider the implications,
1369 Make the most of the opportunity, The pl2pm utility will get you started,
1370 Adds the standard Module prologue lines, Converts package specifiers from '
1371 to ::, Converts die(...) to croak(...), Several other minor changes
1372
1373 =item Guidelines for Reusing Application Code
1374
1375 Complete applications rarely belong in the Perl Module Library, Many
1376 applications contain some Perl code that could be reused, Break-out the
1377 reusable code into one or more separate module files, Take the opportunity
1378 to reconsider and redesign the interfaces, In some cases the 'application'
1379 can then be reduced to a small
1380
1381 =back
1382
1383 =item NOTE
1384
1385 =back
1386
1387 =head2 perlmodinstall - Installing CPAN Modules
1388
1389 =over
1390
1391 =item DESCRIPTION
1392
1393 =over
1394
1395 =item PREAMBLE
1396
1397 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1398 module (sometimes unnecessary), B<INSTALL> the module
1399
1400 =back
1401
1402 =item HEY
1403
1404 =item AUTHOR
1405
1406 =item COPYRIGHT
1407
1408 =back
1409
1410 =head2 perlnewmod - preparing a new module for distribution
1411
1412 =over
1413
1414 =item DESCRIPTION
1415
1416 =over
1417
1418 =item Warning
1419
1420 =item What should I make into a module?
1421
1422 =item Step-by-step: Preparing the ground
1423
1424 Look around, Check it's new, Discuss the need, Choose a name, Check again
1425
1426 =item Step-by-step: Making the module
1427
1428 Start with F<h2xs>, Use L<strict|strict> and L<warnings|warnings>, Use
1429 L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, Use L<plain old
1430 documentation|perlpod>, Write tests, Write the README
1431
1432 =item Step-by-step: Distributing your module
1433
1434 Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the
1435 tarball, Announce to the modules list, Announce to clpa, Fix bugs!
1436
1437 =back
1438
1439 =item AUTHOR
1440
1441 =item SEE ALSO
1442
1443 =back
1444
1445 =head2 perltrap - Perl traps for the unwary
1446
1447 =over
1448
1449 =item DESCRIPTION
1450
1451 =over
1452
1453 =item Awk Traps
1454
1455 =item C Traps
1456
1457 =item Sed Traps
1458
1459 =item Shell Traps
1460
1461 =item Perl Traps
1462
1463 =item Perl4 to Perl5 Traps
1464
1465 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
1466 Traps, General data type traps, Context Traps - scalar, list contexts,
1467 Precedence Traps, General Regular Expression Traps using s///, etc,
1468 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
1469
1470 =item Discontinuance, Deprecation, and BugFix traps
1471
1472 Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
1473 Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
1474 Discontinuance, Deprecation, Discontinuance, Discontinuance
1475
1476 =item Parsing Traps
1477
1478 Parsing, Parsing, Parsing, Parsing
1479
1480 =item Numerical Traps
1481
1482 Numerical, Numerical, Numerical, Bitwise string ops
1483
1484 =item General data type traps
1485
1486 (Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
1487 (Constants), (Scalars), (Variable Suicide)
1488
1489 =item Context Traps - scalar, list contexts
1490
1491 (list context), (scalar context), (scalar context), (list, builtin)
1492
1493 =item Precedence Traps
1494
1495 Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
1496 Precedence
1497
1498 =item General Regular Expression Traps using s///, etc.
1499
1500 Regular Expression, Regular Expression, Regular Expression, Regular
1501 Expression, Regular Expression, Regular Expression, Regular Expression,
1502 Regular Expression
1503
1504 =item Subroutine, Signal, Sorting Traps
1505
1506 (Signals), (Sort Subroutine), warn() won't let you specify a filehandle
1507
1508 =item OS Traps
1509
1510 (SysV), (SysV)
1511
1512 =item Interpolation Traps
1513
1514 Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
1515 Interpolation, Interpolation, Interpolation, Interpolation
1516
1517 =item DBM Traps
1518
1519 DBM, DBM
1520
1521 =item Unclassified Traps
1522
1523 C<require>/C<do> trap using returned value, C<split> on empty string with
1524 LIMIT specified
1525
1526 =back
1527
1528 =back
1529
1530 =head2 perlport - Writing portable Perl
1531
1532 =over
1533
1534 =item DESCRIPTION
1535
1536 Not all Perl programs have to be portable, Nearly all of Perl already I<is>
1537 portable
1538
1539 =item ISSUES
1540
1541 =over
1542
1543 =item Newlines
1544
1545 =item Numbers endianness and Width
1546
1547 =item Files and Filesystems
1548
1549 =item System Interaction
1550
1551 =item Interprocess Communication (IPC)
1552
1553 =item External Subroutines (XS)
1554
1555 =item Standard Modules
1556
1557 =item Time and Date
1558
1559 =item Character sets and character encoding
1560
1561 =item Internationalisation
1562
1563 =item System Resources
1564
1565 =item Security
1566
1567 =item Style
1568
1569 =back
1570
1571 =item CPAN Testers
1572
1573 Mailing list: cpan-testers@perl.org, Testing results:
1574 http://testers.cpan.org/
1575
1576 =item PLATFORMS
1577
1578 =over
1579
1580 =item Unix
1581
1582 =item DOS and Derivatives
1583
1584 Build instructions for OS/2, L<perlos2>
1585
1586 =item S<Mac OS>
1587
1588 =item VMS
1589
1590 =item VOS
1591
1592 =item EBCDIC Platforms
1593
1594 =item Acorn RISC OS
1595
1596 =item Other perls
1597
1598 =back
1599
1600 =item FUNCTION IMPLEMENTATIONS
1601
1602 =over
1603
1604 =item Alphabetical Listing of Perl Functions
1605
1606 -I<X> FILEHANDLE, -I<X> EXPR, -I<X>, alarm SECONDS, alarm, binmode
1607 FILEHANDLE, chmod LIST, chown LIST, chroot FILENAME, chroot, crypt
1608 PLAINTEXT,SALT, dbmclose HASH, dbmopen HASH,DBNAME,MODE, dump LABEL, exec
1609 LIST, fcntl FILEHANDLE,FUNCTION,SCALAR, flock FILEHANDLE,OPERATION, fork,
1610 getlogin, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam NAME,
1611 getgrnam NAME, getnetbyname NAME, getpwuid UID, getgrgid GID, getnetbyaddr
1612 ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent,
1613 getgrent, gethostent, getnetent, getprotoent, getservent, setpwent,
1614 setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN,
1615 setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent,
1616 endprotoent, endservent, getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob,
1617 ioctl FILEHANDLE,FUNCTION,SCALAR, kill SIGNAL, LIST, link OLDFILE,NEWFILE,
1618 lstat FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
1619 msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR,
1620 open FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink,
1621 select RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
1622 KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setgrent, setpgrp PID,PGRP,
1623 setpriority WHICH,WHO,PRIORITY, setpwent, setsockopt
1624 SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS,
1625 shmread ID,VAR,POS,SIZE, shmwrite ID,STRING,POS,SIZE, socketpair
1626 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat FILEHANDLE, stat EXPR, stat,
1627 symlink OLDFILE,NEWFILE, syscall LIST, sysopen
1628 FILEHANDLE,FILENAME,MODE,PERMS, system LIST, times, truncate
1629 FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR, umask, utime LIST,
1630 wait, waitpid PID,FLAGS
1631
1632 =back
1633
1634 =item CHANGES
1635
1636 v1.47, 22 March 2000, v1.46, 12 February 2000, v1.45, 20 December 1999,
1637 v1.44, 19 July 1999, v1.43, 24 May 1999, v1.42, 22 May 1999, v1.41, 19 May
1638 1999, v1.40, 11 April 1999, v1.39, 11 February 1999, v1.38, 31 December
1639 1998, v1.37, 19 December 1998, v1.36, 9 September 1998, v1.35, 13 August
1640 1998, v1.33, 06 August 1998, v1.32, 05 August 1998, v1.30, 03 August 1998,
1641 v1.23, 10 July 1998
1642
1643 =item Supported Platforms
1644
1645 =item SEE ALSO
1646
1647 =item AUTHORS / CONTRIBUTORS
1648
1649 =item VERSION
1650
1651 =back
1652
1653 =head2 perlsec - Perl security
1654
1655 =over
1656
1657 =item DESCRIPTION
1658
1659 =over
1660
1661 =item Laundering and Detecting Tainted Data
1662
1663 =item Switches On the "#!" Line
1664
1665 =item Cleaning Up Your Path
1666
1667 =item Security Bugs
1668
1669 =item Protecting Your Programs
1670
1671 =back
1672
1673 =item SEE ALSO
1674
1675 =back
1676
1677 =head2 perlref - Perl references and nested data structures
1678
1679 =over
1680
1681 =item NOTE
1682
1683 =item DESCRIPTION
1684
1685 =over
1686
1687 =item Making References
1688
1689 =item Using References
1690
1691 =item Symbolic references
1692
1693 =item Not-so-symbolic references
1694
1695 =item Pseudo-hashes: Using an array as a hash
1696
1697 =item Function Templates
1698
1699 =back
1700
1701 =item WARNING
1702
1703 =item SEE ALSO
1704
1705 =back
1706
1707 =head2 perlre - Perl regular expressions
1708
1709 =over
1710
1711 =item DESCRIPTION
1712
1713 i, m, s, x
1714
1715 =over
1716
1717 =item Regular Expressions
1718
1719 cntrl, graph, print, punct, xdigit
1720
1721 =item Extended Patterns
1722
1723 C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
1724 C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
1725 code })>, C<(??{ code })>, C<< (?>pattern) >>,
1726 C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
1727
1728 =item Backtracking
1729
1730 =item Version 8 Regular Expressions
1731
1732 =item Warning on \1 vs $1
1733
1734 =item Repeated patterns matching zero-length substring
1735
1736 =item Combining pieces together
1737
1738 C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
1739 C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
1740 C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
1741 C<(?(condition)yes-pattern|no-pattern)>
1742
1743 =item Creating custom RE engines
1744
1745 =back
1746
1747 =item BUGS
1748
1749 =item SEE ALSO
1750
1751 =back
1752
1753 =head2 perlform - Perl formats
1754
1755 =over
1756
1757 =item DESCRIPTION
1758
1759 =over
1760
1761 =item Format Variables
1762
1763 =back
1764
1765 =item NOTES
1766
1767 =over
1768
1769 =item Footers
1770
1771 =item Accessing Formatting Internals
1772
1773 =back
1774
1775 =item WARNINGS
1776
1777 =back
1778
1779 =head2 perllocale - Perl locale handling (internationalization and
1780 localization)
1781
1782 =over
1783
1784 =item DESCRIPTION
1785
1786 =item PREPARING TO USE LOCALES
1787
1788 =item USING LOCALES
1789
1790 =over
1791
1792 =item The use locale pragma
1793
1794 =item The setlocale function
1795
1796 =item Finding locales
1797
1798 =item LOCALE PROBLEMS
1799
1800 =item Temporarily fixing locale problems
1801
1802 =item Permanently fixing locale problems
1803
1804 =item Permanently fixing your system's locale configuration
1805
1806 =item Fixing system locale configuration
1807
1808 =item The localeconv function
1809
1810 =back
1811
1812 =item LOCALE CATEGORIES
1813
1814 =over
1815
1816 =item Category LC_COLLATE: Collation
1817
1818 =item Category LC_CTYPE: Character Types
1819
1820 =item Category LC_NUMERIC: Numeric Formatting
1821
1822 =item Category LC_MONETARY: Formatting of monetary amounts
1823
1824 =item LC_TIME
1825
1826 =item Other categories
1827
1828 =back
1829
1830 =item SECURITY
1831
1832 B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
1833 B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
1834 B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1835 B<Output formatting functions> (printf() and write()):, B<Case-mapping
1836 functions> (lc(), lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent
1837 functions> (localeconv(), strcoll(), strftime(), strxfrm()):, B<POSIX
1838 character class tests> (isalnum(), isalpha(), isdigit(), isgraph(),
1839 islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit()):
1840
1841 =item ENVIRONMENT
1842
1843 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY,
1844 LC_NUMERIC, LC_TIME, LANG
1845
1846 =item NOTES
1847
1848 =over
1849
1850 =item Backward compatibility
1851
1852 =item I18N:Collate obsolete
1853
1854 =item Sort speed and memory use impacts
1855
1856 =item write() and LC_NUMERIC
1857
1858 =item Freely available locale definitions
1859
1860 =item I18n and l10n
1861
1862 =item An imperfect standard
1863
1864 =back
1865
1866 =item BUGS
1867
1868 =over
1869
1870 =item Broken systems
1871
1872 =back
1873
1874 =item SEE ALSO
1875
1876 =item HISTORY
1877
1878 =back
1879
1880 =head2 perlunicode - Unicode support in Perl
1881
1882 =over
1883
1884 =item DESCRIPTION
1885
1886 =over
1887
1888 =item Important Caveat
1889
1890 Input and Output Disciplines, Regular Expressions, C<use utf8> still needed
1891 to enable a few features
1892
1893 =item Byte and Character semantics
1894
1895 =item Effects of character semantics
1896
1897 =item Character encodings for input and output
1898
1899 =back
1900
1901 =item CAVEATS
1902
1903 =item SEE ALSO
1904
1905 =back
1906
1907 =head2 perlboot - Beginner's Object-Oriented Tutorial
1908
1909 =over
1910
1911 =item DESCRIPTION
1912
1913 =over
1914
1915 =item If we could talk to the animals...
1916
1917 =item Introducing the method invocation arrow
1918
1919 =item Invoking a barnyard
1920
1921 =item The extra parameter of method invocation
1922
1923 =item Calling a second method to simplify things
1924
1925 =item Inheriting the windpipes
1926
1927 =item A few notes about @ISA
1928
1929 =item Overriding the methods
1930
1931 =item Starting the search from a different place
1932
1933 =item The SUPER way of doing things
1934
1935 =item Where we're at so far...
1936
1937 =item A horse is a horse, of course of course -- or is it?
1938
1939 =item Invoking an instance method
1940
1941 =item Accessing the instance data
1942
1943 =item How to build a horse
1944
1945 =item Inheriting the constructor
1946
1947 =item Making a method work with either classes or instances
1948
1949 =item Adding parameters to a method
1950
1951 =item More interesting instances
1952
1953 =item A horse of a different color
1954
1955 =item Summary
1956
1957 =back
1958
1959 =item SEE ALSO
1960
1961 =item COPYRIGHT
1962
1963 =back
1964
1965 =head2 perltoot - Tom's object-oriented tutorial for perl
1966
1967 =over
1968
1969 =item DESCRIPTION
1970
1971 =item Creating a Class
1972
1973 =over
1974
1975 =item Object Representation
1976
1977 =item Class Interface
1978
1979 =item Constructors and Instance Methods
1980
1981 =item Planning for the Future: Better Constructors
1982
1983 =item Destructors
1984
1985 =item Other Object Methods
1986
1987 =back
1988
1989 =item Class Data
1990
1991 =over
1992
1993 =item Accessing Class Data
1994
1995 =item Debugging Methods
1996
1997 =item Class Destructors
1998
1999 =item Documenting the Interface
2000
2001 =back
2002
2003 =item Aggregation
2004
2005 =item Inheritance
2006
2007 =over
2008
2009 =item Overridden Methods
2010
2011 =item Multiple Inheritance
2012
2013 =item UNIVERSAL: The Root of All Objects
2014
2015 =back
2016
2017 =item Alternate Object Representations
2018
2019 =over
2020
2021 =item Arrays as Objects
2022
2023 =item Closures as Objects
2024
2025 =back
2026
2027 =item AUTOLOAD: Proxy Methods
2028
2029 =over
2030
2031 =item Autoloaded Data Methods
2032
2033 =item Inherited Autoloaded Data Methods
2034
2035 =back
2036
2037 =item Metaclassical Tools
2038
2039 =over
2040
2041 =item Class::Struct
2042
2043 =item Data Members as Variables
2044
2045 =item NOTES
2046
2047 =item Object Terminology
2048
2049 =back
2050
2051 =item SEE ALSO
2052
2053 =item AUTHOR AND COPYRIGHT
2054
2055 =item COPYRIGHT
2056
2057 =over
2058
2059 =item Acknowledgments
2060
2061 =back
2062
2063 =back
2064
2065 =head2 perltootc - Tom's OO Tutorial for Class Data in Perl
2066
2067 =over
2068
2069 =item DESCRIPTION
2070
2071 =item Class Data as Package Variables
2072
2073 =over
2074
2075 =item Putting All Your Eggs in One Basket
2076
2077 =item Inheritance Concerns
2078
2079 =item The Eponymous Meta-Object
2080
2081 =item Indirect References to Class Data
2082
2083 =item Monadic Classes
2084
2085 =item Translucent Attributes
2086
2087 =back
2088
2089 =item Class Data as Lexical Variables
2090
2091 =over
2092
2093 =item Privacy and Responsibility 
2094
2095 =item File-Scoped Lexicals
2096
2097 =item More Inheritance Concerns
2098
2099 =item Locking the Door and Throwing Away the Key
2100
2101 =item Translucency Revisited
2102
2103 =back
2104
2105 =item NOTES
2106
2107 =item SEE ALSO
2108
2109 =item AUTHOR AND COPYRIGHT
2110
2111 =item ACKNOWLEDGEMENTS
2112
2113 =item HISTORY
2114
2115 =back
2116
2117 =head2 perlobj - Perl objects
2118
2119 =over
2120
2121 =item DESCRIPTION
2122
2123 =over
2124
2125 =item An Object is Simply a Reference
2126
2127 =item A Class is Simply a Package
2128
2129 =item A Method is Simply a Subroutine
2130
2131 =item Method Invocation
2132
2133 =item WARNING
2134
2135 =item Default UNIVERSAL methods
2136
2137 isa(CLASS), can(METHOD), VERSION( [NEED] )
2138
2139 =item Destructors
2140
2141 =item Summary
2142
2143 =item Two-Phased Garbage Collection
2144
2145 =back
2146
2147 =item SEE ALSO
2148
2149 =back
2150
2151 =head2 perlbot - Bag'o Object Tricks (the BOT)
2152
2153 =over
2154
2155 =item DESCRIPTION
2156
2157 =item OO SCALING TIPS
2158
2159 =item INSTANCE VARIABLES
2160
2161 =item INSTANCE VARIABLE INHERITANCE
2162
2163 =item OBJECT RELATIONSHIPS
2164
2165 =item OVERRIDING SUPERCLASS METHODS
2166
2167 =item USING RELATIONSHIP WITH SDBM
2168
2169 =item THINKING OF CODE REUSE
2170
2171 =item CLASS CONTEXT AND THE OBJECT
2172
2173 =item INHERITING A CONSTRUCTOR
2174
2175 =item DELEGATION
2176
2177 =back
2178
2179 =head2 perltie - how to hide an object class in a simple variable
2180
2181 =over
2182
2183 =item SYNOPSIS
2184
2185 =item DESCRIPTION
2186
2187 =over
2188
2189 =item Tying Scalars
2190
2191 TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
2192
2193 =item Tying Arrays
2194
2195 TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
2196 DESTROY this
2197
2198 =item Tying Hashes
2199
2200 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
2201 this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
2202 this, NEXTKEY this, lastkey, DESTROY this
2203
2204 =item Tying FileHandles
2205
2206 TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
2207 LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
2208
2209 =item The C<untie> Gotcha
2210
2211 =back
2212
2213 =item SEE ALSO
2214
2215 =item BUGS
2216
2217 =item AUTHOR
2218
2219 =back
2220
2221 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
2222 safe subprocesses, sockets, and semaphores)
2223
2224 =over
2225
2226 =item DESCRIPTION
2227
2228 =item Signals
2229
2230 =item Named Pipes
2231
2232 =over
2233
2234 =item WARNING
2235
2236 =back
2237
2238 =item Using open() for IPC
2239
2240 =over
2241
2242 =item Filehandles
2243
2244 =item Background Processes
2245
2246 =item Complete Dissociation of Child from Parent
2247
2248 =item Safe Pipe Opens
2249
2250 =item Bidirectional Communication with Another Process
2251
2252 =item Bidirectional Communication with Yourself
2253
2254 =back
2255
2256 =item Sockets: Client/Server Communication
2257
2258 =over
2259
2260 =item Internet Line Terminators
2261
2262 =item Internet TCP Clients and Servers
2263
2264 =item Unix-Domain TCP Clients and Servers
2265
2266 =back
2267
2268 =item TCP Clients with IO::Socket
2269
2270 =over
2271
2272 =item A Simple Client
2273
2274 C<Proto>, C<PeerAddr>, C<PeerPort>
2275
2276 =item A Webget Client
2277
2278 =item Interactive Client with IO::Socket
2279
2280 =back
2281
2282 =item TCP Servers with IO::Socket
2283
2284 Proto, LocalPort, Listen, Reuse
2285
2286 =item UDP: Message Passing
2287
2288 =item SysV IPC
2289
2290 =item NOTES
2291
2292 =item BUGS
2293
2294 =item AUTHOR
2295
2296 =item SEE ALSO
2297
2298 =back
2299
2300 =head2 perlnumber - semantics of numbers and numeric operations in Perl
2301
2302 =over
2303
2304 =item SYNOPSIS
2305
2306 =item DESCRIPTION
2307
2308 =item Storing numbers
2309
2310 =item Numeric operators and numeric conversions
2311
2312 =item Flavors of Perl numeric operations
2313
2314 Arithmetic operators except, C<no integer>, Arithmetic operators except,
2315 C<use integer>, Bitwise operators, C<no integer>, Bitwise operators, C<use
2316 integer>, Operators which expect an integer, Operators which expect a
2317 string
2318
2319 =item AUTHOR
2320
2321 =item SEE ALSO
2322
2323 =back
2324
2325 =head2 perlfork - Perl's fork() emulation
2326
2327 =over
2328
2329 =item SYNOPSIS
2330
2331 =item DESCRIPTION
2332
2333 =over
2334
2335 =item Behavior of other Perl features in forked pseudo-processes
2336
2337 $$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
2338 filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
2339 files, directories and network sockets
2340
2341 =item Resource limits
2342
2343 =item Killing the parent process
2344
2345 =item Lifetime of the parent process and pseudo-processes
2346
2347 =item CAVEATS AND LIMITATIONS
2348
2349 BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
2350 Global state maintained by XSUBs, Interpreter embedded in larger
2351 application, Thread-safety of extensions
2352
2353 =back
2354
2355 =item BUGS
2356
2357 =item AUTHOR
2358
2359 =item SEE ALSO
2360
2361 =back
2362
2363 =head2 perlthrtut - tutorial on threads in Perl
2364
2365 =over
2366
2367 =item DESCRIPTION
2368
2369 =item What Is A Thread Anyway?
2370
2371 =item Threaded Program Models
2372
2373 =over
2374
2375 =item Boss/Worker
2376
2377 =item Work Crew
2378
2379 =item Pipeline
2380
2381 =back
2382
2383 =item Native threads
2384
2385 =item What kind of threads are perl threads?
2386
2387 =item Threadsafe Modules
2388
2389 =item Thread Basics
2390
2391 =over
2392
2393 =item Basic Thread Support
2394
2395 =item Creating Threads
2396
2397 =item Giving up control
2398
2399 =item Waiting For A Thread To Exit
2400
2401 =item Errors In Threads
2402
2403 =item Ignoring A Thread
2404
2405 =back
2406
2407 =item Threads And Data
2408
2409 =over
2410
2411 =item Shared And Unshared Data
2412
2413 =item Thread Pitfall: Races
2414
2415 =item Controlling access: lock()
2416
2417 =item Thread Pitfall: Deadlocks
2418
2419 =item Queues: Passing Data Around
2420
2421 =back
2422
2423 =item Threads And Code
2424
2425 =over
2426
2427 =item Semaphores: Synchronizing Data Access
2428
2429 Basic semaphores, Advanced Semaphores
2430
2431 =item Attributes: Restricting Access To Subroutines
2432
2433 =item Subroutine Locks
2434
2435 =item Methods
2436
2437 =item Locking A Subroutine
2438
2439 =back
2440
2441 =item General Thread Utility Routines
2442
2443 =over
2444
2445 =item What Thread Am I In?
2446
2447 =item Thread IDs
2448
2449 =item Are These Threads The Same?
2450
2451 =item What Threads Are Running?
2452
2453 =back
2454
2455 =item A Complete Example
2456
2457 =item Conclusion
2458
2459 =item Bibliography
2460
2461 =over
2462
2463 =item Introductory Texts
2464
2465 =item OS-Related References
2466
2467 =item Other References
2468
2469 =back
2470
2471 =item Acknowledgements
2472
2473 =item AUTHOR
2474
2475 =item Copyrights
2476
2477 =back
2478
2479 =head2 perldiag - various Perl diagnostics
2480
2481 =over
2482
2483 =item DESCRIPTION
2484
2485 =back
2486
2487 =head2 perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date:
2488 1999/05/23 16:08:30 $)
2489
2490 =over
2491
2492 =item DESCRIPTION
2493
2494 =over
2495
2496 =item What is Perl?
2497
2498 =item Who supports Perl?  Who develops it?  Why is it free?
2499
2500 =item Which version of Perl should I use?
2501
2502 =item What are perl4 and perl5?
2503
2504 =item What is perl6?
2505
2506 =item How stable is Perl?
2507
2508 =item Is Perl difficult to learn?
2509
2510 =item How does Perl compare with other languages like Java, Python, REXX,
2511 Scheme, or Tcl?
2512
2513 =item Can I do [task] in Perl?
2514
2515 =item When shouldn't I program in Perl?
2516
2517 =item What's the difference between "perl" and "Perl"?
2518
2519 =item Is it a Perl program or a Perl script?
2520
2521 =item What is a JAPH?
2522
2523 =item Where can I get a list of Larry Wall witticisms?
2524
2525 =item How can I convince my sysadmin/supervisor/employees to use version
2526 (5/5.005/Perl instead of some other language)?
2527
2528 =back
2529
2530 =item AUTHOR AND COPYRIGHT
2531
2532 =back
2533
2534 =head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $,
2535 $Date: 1999/10/14 18:46:09 $)
2536
2537 =over
2538
2539 =item DESCRIPTION
2540
2541 =over
2542
2543 =item What machines support Perl?  Where do I get it?
2544
2545 =item How can I get a binary version of Perl?
2546
2547 =item I don't have a C compiler on my system.  How can I compile perl?
2548
2549 =item I copied the Perl binary from one machine to another, but scripts
2550 don't work.
2551
2552 =item I grabbed the sources and tried to compile but gdbm/dynamic
2553 loading/malloc/linking/... failed.  How do I make it work?
2554
2555 =item What modules and extensions are available for Perl?  What is CPAN? 
2556 What does CPAN/src/... mean?
2557
2558 =item Is there an ISO or ANSI certified version of Perl?
2559
2560 =item Where can I get information on Perl?
2561
2562 =item What are the Perl newsgroups on Usenet?  Where do I post questions?
2563
2564 =item Where should I post source code?
2565
2566 =item Perl Books
2567
2568 References, Tutorials, Task-Oriented, Special Topics
2569
2570 =item Perl in Magazines
2571
2572 =item Perl on the Net: FTP and WWW Access
2573
2574 =item What mailing lists are there for Perl?
2575
2576 =item Archives of comp.lang.perl.misc
2577
2578 =item Where can I buy a commercial version of Perl?
2579
2580 =item Where do I send bug reports?
2581
2582 =item What is perl.com? Perl Mongers? pm.org? perl.org?
2583
2584 =back
2585
2586 =item AUTHOR AND COPYRIGHT
2587
2588 =back
2589
2590 =head2 perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23
2591 16:08:30 $)
2592
2593 =over
2594
2595 =item DESCRIPTION
2596
2597 =over
2598
2599 =item How do I do (anything)?
2600
2601 =item How can I use Perl interactively?
2602
2603 =item Is there a Perl shell?
2604
2605 =item How do I debug my Perl programs?
2606
2607 =item How do I profile my Perl programs?
2608
2609 =item How do I cross-reference my Perl programs?
2610
2611 =item Is there a pretty-printer (formatter) for Perl?
2612
2613 =item Is there a ctags for Perl?
2614
2615 =item Is there an IDE or Windows Perl Editor?
2616
2617 =item Where can I get Perl macros for vi?
2618
2619 =item Where can I get perl-mode for emacs?
2620
2621 =item How can I use curses with Perl?
2622
2623 =item How can I use X or Tk with Perl?
2624
2625 =item How can I generate simple menus without using CGI or Tk?
2626
2627 =item What is undump?
2628
2629 =item How can I make my Perl program run faster?
2630
2631 =item How can I make my Perl program take less memory?
2632
2633 =item Is it unsafe to return a pointer to local data?
2634
2635 =item How can I free an array or hash so my program shrinks?
2636
2637 =item How can I make my CGI script more efficient?
2638
2639 =item How can I hide the source for my Perl program?
2640
2641 =item How can I compile my Perl program into byte code or C?
2642
2643 =item How can I compile Perl into Java?
2644
2645 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2646
2647 =item Can I write useful Perl programs on the command line?
2648
2649 =item Why don't Perl one-liners work on my DOS/Mac/VMS system?
2650
2651 =item Where can I learn about CGI or Web programming in Perl?
2652
2653 =item Where can I learn about object-oriented Perl programming?
2654
2655 =item Where can I learn about linking C with Perl? [h2xs, xsubpp]
2656
2657 =item I've read perlembed, perlguts, etc., but I can't embed perl in
2658 my C program, what am I doing wrong?
2659
2660 =item When I tried to run my script, I got this message. What does it
2661 mean?
2662
2663 =item What's MakeMaker?
2664
2665 =back
2666
2667 =item AUTHOR AND COPYRIGHT
2668
2669 =back
2670
2671 =head2 perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23
2672 20:37:49 $)
2673
2674 =over
2675
2676 =item DESCRIPTION
2677
2678 =item Data: Numbers
2679
2680 =over
2681
2682 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the
2683 numbers I should be getting (eg, 19.95)?
2684
2685 =item Why isn't my octal data interpreted correctly?
2686
2687 =item Does Perl have a round() function?  What about ceil() and floor()? 
2688 Trig functions?
2689
2690 =item How do I convert bits into ints?
2691
2692 =item Why doesn't & work the way I want it to?
2693
2694 =item How do I multiply matrices?
2695
2696 =item How do I perform an operation on a series of integers?
2697
2698 =item How can I output Roman numerals?
2699
2700 =item Why aren't my random numbers random?
2701
2702 =back
2703
2704 =item Data: Dates
2705
2706 =over
2707
2708 =item How do I find the week-of-the-year/day-of-the-year?
2709
2710 =item How do I find the current century or millennium?
2711
2712 =item How can I compare two dates and find the difference?
2713
2714 =item How can I take a string and turn it into epoch seconds?
2715
2716 =item How can I find the Julian Day?
2717
2718 =item How do I find yesterday's date?
2719
2720 =item Does Perl have a Year 2000 problem?  Is Perl Y2K compliant?
2721
2722 =back
2723
2724 =item Data: Strings
2725
2726 =over
2727
2728 =item How do I validate input?
2729
2730 =item How do I unescape a string?
2731
2732 =item How do I remove consecutive pairs of characters?
2733
2734 =item How do I expand function calls in a string?
2735
2736 =item How do I find matching/nesting anything?
2737
2738 =item How do I reverse a string?
2739
2740 =item How do I expand tabs in a string?
2741
2742 =item How do I reformat a paragraph?
2743
2744 =item How can I access/change the first N letters of a string?
2745
2746 =item How do I change the Nth occurrence of something?
2747
2748 =item How can I count the number of occurrences of a substring within a
2749 string?
2750
2751 =item How do I capitalize all the words on one line?
2752
2753 =item How can I split a [character] delimited string except when inside
2754 [character]? (Comma-separated files)
2755
2756 =item How do I strip blank space from the beginning/end of a string?
2757
2758 =item How do I pad a string with blanks or pad a number with zeroes?
2759
2760 =item How do I extract selected columns from a string?
2761
2762 =item How do I find the soundex value of a string?
2763
2764 =item How can I expand variables in text strings?
2765
2766 =item What's wrong with always quoting "$vars"?
2767
2768 =item Why don't my <<HERE documents work?
2769
2770 1. There must be no space after the << part, 2. There (probably) should be
2771 a semicolon at the end, 3. You can't (easily) have any space in front of
2772 the tag
2773
2774 =back
2775
2776 =item Data: Arrays
2777
2778 =over
2779
2780 =item What is the difference between a list and an array?
2781
2782 =item What is the difference between $array[1] and @array[1]?
2783
2784 =item How can I remove duplicate elements from a list or array?
2785
2786 a) If @in is sorted, and you want @out to be sorted: (this assumes all true
2787 values in the array), b) If you don't know whether @in is sorted:, c) Like
2788 (b), but @in contains only small integers:, d) A way to do (b) without any
2789 loops or greps:, e) Like (d), but @in contains only small positive
2790 integers:
2791
2792 =item How can I tell whether a list or array contains a certain element?
2793
2794 =item How do I compute the difference of two arrays?  How do I compute the
2795 intersection of two arrays?
2796
2797 =item How do I test whether two arrays or hashes are equal?
2798
2799 =item How do I find the first array element for which a condition is true?
2800
2801 =item How do I handle linked lists?
2802
2803 =item How do I handle circular lists?
2804
2805 =item How do I shuffle an array randomly?
2806
2807 =item How do I process/modify each element of an array?
2808
2809 =item How do I select a random element from an array?
2810
2811 =item How do I permute N elements of a list?
2812
2813 =item How do I sort an array by (anything)?
2814
2815 =item How do I manipulate arrays of bits?
2816
2817 =item Why does defined() return true on empty arrays and hashes?
2818
2819 =back
2820
2821 =item Data: Hashes (Associative Arrays)
2822
2823 =over
2824
2825 =item How do I process an entire hash?
2826
2827 =item What happens if I add or remove keys from a hash while iterating over
2828 it?
2829
2830 =item How do I look up a hash element by value?
2831
2832 =item How can I know how many entries are in a hash?
2833
2834 =item How do I sort a hash (optionally by value instead of key)?
2835
2836 =item How can I always keep my hash sorted?
2837
2838 =item What's the difference between "delete" and "undef" with hashes?
2839
2840 =item Why don't my tied hashes make the defined/exists distinction?
2841
2842 =item How do I reset an each() operation part-way through?
2843
2844 =item How can I get the unique keys from two hashes?
2845
2846 =item How can I store a multidimensional array in a DBM file?
2847
2848 =item How can I make my hash remember the order I put elements into it?
2849
2850 =item Why does passing a subroutine an undefined element in a hash create
2851 it?
2852
2853 =item How can I make the Perl equivalent of a C structure/C++ class/hash or
2854 array of hashes or arrays?
2855
2856 =item How can I use a reference as a hash key?
2857
2858 =back
2859
2860 =item Data: Misc
2861
2862 =over
2863
2864 =item How do I handle binary data correctly?
2865
2866 =item How do I determine whether a scalar is a number/whole/integer/float?
2867
2868 =item How do I keep persistent data across program calls?
2869
2870 =item How do I print out or copy a recursive data structure?
2871
2872 =item How do I define methods for every class/object?
2873
2874 =item How do I verify a credit card checksum?
2875
2876 =item How do I pack arrays of doubles or floats for XS code?
2877
2878 =back
2879
2880 =item AUTHOR AND COPYRIGHT
2881
2882 =back
2883
2884 =head2 perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23
2885 16:08:30 $)
2886
2887 =over
2888
2889 =item DESCRIPTION
2890
2891 =over
2892
2893 =item How do I flush/unbuffer an output filehandle?  Why must I do this?
2894
2895 =item How do I change one line in a file/delete a line in a file/insert a
2896 line in the middle of a file/append to the beginning of a file?
2897
2898 =item How do I count the number of lines in a file?
2899
2900 =item How do I make a temporary file name?
2901
2902 =item How can I manipulate fixed-record-length files?
2903
2904 =item How can I make a filehandle local to a subroutine?  How do I pass
2905 filehandles between subroutines?  How do I make an array of filehandles?
2906
2907 =item How can I use a filehandle indirectly?
2908
2909 =item How can I set up a footer format to be used with write()?
2910
2911 =item How can I write() into a string?
2912
2913 =item How can I output my numbers with commas added?
2914
2915 =item How can I translate tildes (~) in a filename?
2916
2917 =item How come when I open a file read-write it wipes it out?
2918
2919 =item Why do I sometimes get an "Argument list too long" when I use <*>?
2920
2921 =item Is there a leak/bug in glob()?
2922
2923 =item How can I open a file with a leading ">" or trailing blanks?
2924
2925 =item How can I reliably rename a file?
2926
2927 =item How can I lock a file?
2928
2929 =item Why can't I just open(FH, ">file.lock")?
2930
2931 =item I still don't get locking.  I just want to increment the number in
2932 the file.  How can I do this?
2933
2934 =item How do I randomly update a binary file?
2935
2936 =item How do I get a file's timestamp in perl?
2937
2938 =item How do I set a file's timestamp in perl?
2939
2940 =item How do I print to more than one file at once?
2941
2942 =item How can I read in an entire file all at once?
2943
2944 =item How can I read in a file by paragraphs?
2945
2946 =item How can I read a single character from a file?  From the keyboard?
2947
2948 =item How can I tell whether there's a character waiting on a filehandle?
2949
2950 =item How do I do a C<tail -f> in perl?
2951
2952 =item How do I dup() a filehandle in Perl?
2953
2954 =item How do I close a file descriptor by number?
2955
2956 =item Why can't I use "C:\temp\foo" in DOS paths?  What doesn't
2957 `C:\temp\foo.exe` work?
2958
2959 =item Why doesn't glob("*.*") get all the files?
2960
2961 =item Why does Perl let me delete read-only files?  Why does C<-i> clobber
2962 protected files?  Isn't this a bug in Perl?
2963
2964 =item How do I select a random line from a file?
2965
2966 =item Why do I get weird spaces when I print an array of lines?
2967
2968 =back
2969
2970 =item AUTHOR AND COPYRIGHT
2971
2972 =back
2973
2974 =head2 perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $)
2975
2976 =over
2977
2978 =item DESCRIPTION
2979
2980 =over
2981
2982 =item How can I hope to use regular expressions without creating illegible
2983 and unmaintainable code?
2984
2985 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
2986
2987 =item I'm having trouble matching over more than one line.  What's wrong?
2988
2989 =item How can I pull out lines between two patterns that are themselves on
2990 different lines?
2991
2992 =item I put a regular expression into $/ but it didn't work. What's wrong?
2993
2994 =item How do I substitute case insensitively on the LHS, but preserving
2995 case on the RHS?
2996
2997 =item How can I make C<\w> match national character sets?
2998
2999 =item How can I match a locale-smart version of C</[a-zA-Z]/>?
3000
3001 =item How can I quote a variable to use in a regex?
3002
3003 =item What is C</o> really for?
3004
3005 =item How do I use a regular expression to strip C style comments from a
3006 file?
3007
3008 =item Can I use Perl regular expressions to match balanced text?
3009
3010 =item What does it mean that regexes are greedy?  How can I get around it?
3011
3012 =item  How do I process each word on each line?
3013
3014 =item How can I print out a word-frequency or line-frequency summary?
3015
3016 =item How can I do approximate matching?
3017
3018 =item How do I efficiently match many regular expressions at once?
3019
3020 =item Why don't word-boundary searches with C<\b> work for me?
3021
3022 =item Why does using $&, $`, or $' slow my program down?
3023
3024 =item What good is C<\G> in a regular expression?
3025
3026 =item Are Perl regexes DFAs or NFAs?  Are they POSIX compliant?
3027
3028 =item What's wrong with using grep or map in a void context?
3029
3030 =item How can I match strings with multibyte characters?
3031
3032 =item How do I match a pattern that is supplied by the user?
3033
3034 =back
3035
3036 =item AUTHOR AND COPYRIGHT
3037
3038 =back
3039
3040 =head2 perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date:
3041 1999/05/23 20:36:18 $)
3042
3043 =over
3044
3045 =item DESCRIPTION
3046
3047 =over
3048
3049 =item Can I get a BNF/yacc/RE for the Perl language?
3050
3051 =item What are all these $@%&* punctuation signs, and how do I know when to
3052 use them?
3053
3054 =item Do I always/never have to quote my strings or use semicolons and
3055 commas?
3056
3057 =item How do I skip some return values?
3058
3059 =item How do I temporarily block warnings?
3060
3061 =item What's an extension?
3062
3063 =item Why do Perl operators have different precedence than C operators?
3064
3065 =item How do I declare/create a structure?
3066
3067 =item How do I create a module?
3068
3069 =item How do I create a class?
3070
3071 =item How can I tell if a variable is tainted?
3072
3073 =item What's a closure?
3074
3075 =item What is variable suicide and how can I prevent it?
3076
3077 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
3078 Regex}?
3079
3080 Passing Variables and Functions, Passing Filehandles, Passing Regexes,
3081 Passing Methods
3082
3083 =item How do I create a static variable?
3084
3085 =item What's the difference between dynamic and lexical (static) scoping? 
3086 Between local() and my()?
3087
3088 =item How can I access a dynamic variable while a similarly named lexical
3089 is in scope?
3090
3091 =item What's the difference between deep and shallow binding?
3092
3093 =item Why doesn't "my($foo) = <FILE>;" work right?
3094
3095 =item How do I redefine a builtin function, operator, or method?
3096
3097 =item What's the difference between calling a function as &foo and foo()?
3098
3099 =item How do I create a switch or case statement?
3100
3101 =item How can I catch accesses to undefined variables/functions/methods?
3102
3103 =item Why can't a method included in this same file be found?
3104
3105 =item How can I find out my current package?
3106
3107 =item How can I comment out a large block of perl code?
3108
3109 =item How do I clear a package?
3110
3111 =item How can I use a variable as a variable name?
3112
3113 =back
3114
3115 =item AUTHOR AND COPYRIGHT
3116
3117 =back
3118
3119 =head2 perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23
3120 18:37:57 $)
3121
3122 =over
3123
3124 =item DESCRIPTION
3125
3126 =over
3127
3128 =item How do I find out which operating system I'm running under?
3129
3130 =item How come exec() doesn't return?
3131
3132 =item How do I do fancy stuff with the keyboard/screen/mouse?
3133
3134 Keyboard, Screen, Mouse
3135
3136 =item How do I print something out in color?
3137
3138 =item How do I read just one key without waiting for a return key?
3139
3140 =item How do I check whether input is ready on the keyboard?
3141
3142 =item How do I clear the screen?
3143
3144 =item How do I get the screen size?
3145
3146 =item How do I ask the user for a password?
3147
3148 =item How do I read and write the serial port?
3149
3150 lockfiles, open mode, end of line, flushing output, non-blocking input
3151
3152 =item How do I decode encrypted password files?
3153
3154 =item How do I start a process in the background?
3155
3156 STDIN, STDOUT, and STDERR are shared, Signals, Zombies
3157
3158 =item How do I trap control characters/signals?
3159
3160 =item How do I modify the shadow password file on a Unix system?
3161
3162 =item How do I set the time and date?
3163
3164 =item How can I sleep() or alarm() for under a second?
3165
3166 =item How can I measure time under a second?
3167
3168 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
3169
3170 =item Why doesn't my sockets program work under System V (Solaris)? What
3171 does the error message "Protocol not supported" mean?
3172
3173 =item How can I call my system's unique C functions from Perl?
3174
3175 =item Where do I get the include files to do ioctl() or syscall()?
3176
3177 =item Why do setuid perl scripts complain about kernel problems?
3178
3179 =item How can I open a pipe both to and from a command?
3180
3181 =item Why can't I get the output of a command with system()?
3182
3183 =item How can I capture STDERR from an external command?
3184
3185 =item Why doesn't open() return an error when a pipe open fails?
3186
3187 =item What's wrong with using backticks in a void context?
3188
3189 =item How can I call backticks without shell processing?
3190
3191 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
3192 ^Z on MS-DOS)?
3193
3194 =item How can I convert my shell script to perl?
3195
3196 =item Can I use perl to run a telnet or ftp session?
3197
3198 =item How can I write expect in Perl?
3199
3200 =item Is there a way to hide perl's command line from programs such as
3201 "ps"?
3202
3203 =item I {changed directory, modified my environment} in a perl script.  How
3204 come the change disappeared when I exited the script?  How do I get my
3205 changes to be visible?
3206
3207 Unix
3208
3209 =item How do I close a process's filehandle without waiting for it to
3210 complete?
3211
3212 =item How do I fork a daemon process?
3213
3214 =item How do I make my program run with sh and csh?
3215
3216 =item How do I find out if I'm running interactively or not?
3217
3218 =item How do I timeout a slow event?
3219
3220 =item How do I set CPU limits?
3221
3222 =item How do I avoid zombies on a Unix system?
3223
3224 =item How do I use an SQL database?
3225
3226 =item How do I make a system() exit on control-C?
3227
3228 =item How do I open a file without blocking?
3229
3230 =item How do I install a module from CPAN?
3231
3232 =item What's the difference between require and use?
3233
3234 =item How do I keep my own module/library directory?
3235
3236 =item How do I add the directory my program lives in to the module/library
3237 search path?
3238
3239 =item How do I add a directory to my include path at runtime?
3240
3241 =item What is socket.ph and where do I get it?
3242
3243 =back
3244
3245 =item AUTHOR AND COPYRIGHT
3246
3247 =back
3248
3249 =head2 perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30
3250 $)
3251
3252 =over
3253
3254 =item DESCRIPTION
3255
3256 =over
3257
3258 =item My CGI script runs from the command line but not the browser.   (500
3259 Server Error)
3260
3261 =item How can I get better error messages from a CGI program?
3262
3263 =item How do I remove HTML from a string?
3264
3265 =item How do I extract URLs?
3266
3267 =item How do I download a file from the user's machine?  How do I open a
3268 file on another machine?
3269
3270 =item How do I make a pop-up menu in HTML?
3271
3272 =item How do I fetch an HTML file?
3273
3274 =item How do I automate an HTML form submission?
3275
3276 =item How do I decode or create those %-encodings on the web?
3277
3278 =item How do I redirect to another page?
3279
3280 =item How do I put a password on my web pages?
3281
3282 =item How do I edit my .htpasswd and .htgroup files with Perl?
3283
3284 =item How do I make sure users can't enter values into a form that cause my
3285 CGI script to do bad things?
3286
3287 =item How do I parse a mail header?
3288
3289 =item How do I decode a CGI form?
3290
3291 =item How do I check a valid mail address?
3292
3293 =item How do I decode a MIME/BASE64 string?
3294
3295 =item How do I return the user's mail address?
3296
3297 =item How do I send mail?
3298
3299 =item How do I read mail?
3300
3301 =item How do I find out my hostname/domainname/IP address?
3302
3303 =item How do I fetch a news article or the active newsgroups?
3304
3305 =item How do I fetch/put an FTP file?
3306
3307 =item How can I do RPC in Perl?
3308
3309 =back
3310
3311 =item AUTHOR AND COPYRIGHT
3312
3313 =back
3314
3315 =head2 perlcompile - Introduction to the Perl Compiler-Translator 
3316
3317 =over
3318
3319 =item DESCRIPTION
3320
3321 =over
3322
3323 =item Layout
3324
3325 B::Bytecode, B::C, B::CC, B::Lint, B::Deparse, B::Xref
3326
3327 =back
3328
3329 =item Using The Back Ends
3330
3331 =over
3332
3333 =item The Cross Referencing Back End
3334
3335 i, &, s, r
3336
3337 =item The Decompiling Back End
3338
3339 =item The Lint Back End
3340
3341 =item The Simple C Back End
3342
3343 =item The Bytecode Back End
3344
3345 =item The Optimized C Back End
3346
3347 B, O, B::Asmdata, B::Assembler, B::Bblock, B::Bytecode, B::C, B::CC,
3348 B::Debug, B::Deparse, B::Disassembler, B::Lint, B::Showlex, B::Stackobj,
3349 B::Stash, B::Terse, B::Xref
3350
3351 =back
3352
3353 =item KNOWN PROBLEMS
3354
3355 =item AUTHOR
3356
3357 =back
3358
3359 =head2 perlembed - how to embed perl in your C program
3360
3361 =over
3362
3363 =item DESCRIPTION
3364
3365 =over
3366
3367 =item PREAMBLE
3368
3369 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
3370 Perl?>, B<Use C from C?>, B<Use Perl from C?>
3371
3372 =item ROADMAP
3373
3374 =item Compiling your C program
3375
3376 =item Adding a Perl interpreter to your C program
3377
3378 =item Calling a Perl subroutine from your C program
3379
3380 =item Evaluating a Perl statement from your C program
3381
3382 =item Performing Perl pattern matches and substitutions from your C program
3383
3384 =item Fiddling with the Perl stack from your C program
3385
3386 =item Maintaining a persistent interpreter
3387
3388 =item Maintaining multiple interpreter instances
3389
3390 =item Using Perl modules, which themselves use C libraries, from your C
3391 program
3392
3393 =back
3394
3395 =item Embedding Perl under Windows
3396
3397 =item MORAL
3398
3399 =item AUTHOR
3400
3401 =item COPYRIGHT
3402
3403 =back
3404
3405 =head2 perldebguts - Guts of Perl debugging 
3406
3407 =over
3408
3409 =item DESCRIPTION
3410
3411 =item Debugger Internals
3412
3413 =over
3414
3415 =item Writing Your Own Debugger
3416
3417 =back
3418
3419 =item Frame Listing Output Examples
3420
3421 =item Debugging regular expressions
3422
3423 =over
3424
3425 =item Compile-time output
3426
3427 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
3428 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
3429 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
3430 C<anchored(TYPE)>
3431
3432 =item Types of nodes
3433
3434 =item Run-time output
3435
3436 =back
3437
3438 =item Debugging Perl memory usage
3439
3440 =over
3441
3442 =item Using C<$ENV{PERL_DEBUG_MSTATS}>
3443
3444 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
3445 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
3446 6144>
3447
3448 =item Example of using B<-DL> switch
3449
3450 C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
3451
3452 =item B<-DL> details
3453
3454 C<!!!>, C<!!>, C<!>
3455
3456 =item Limitations of B<-DL> statistics
3457
3458 =back
3459
3460 =item SEE ALSO
3461
3462 =back
3463
3464 =head2 perlxstut, perlXStut - Tutorial for writing XSUBs
3465
3466 =over
3467
3468 =item DESCRIPTION
3469
3470 =item SPECIAL NOTES
3471
3472 =over
3473
3474 =item make
3475
3476 =item Version caveat
3477
3478 =item Dynamic Loading versus Static Loading
3479
3480 =back
3481
3482 =item TUTORIAL
3483
3484 =over
3485
3486 =item EXAMPLE 1
3487
3488 =item EXAMPLE 2
3489
3490 =item What has gone on?
3491
3492 =item Writing good test scripts
3493
3494 =item EXAMPLE 3
3495
3496 =item What's new here?
3497
3498 =item Input and Output Parameters
3499
3500 =item The XSUBPP Program
3501
3502 =item The TYPEMAP file
3503
3504 =item Warning about Output Arguments
3505
3506 =item EXAMPLE 4
3507
3508 =item What has happened here?
3509
3510 =item Anatomy of .xs file
3511
3512 =item Getting the fat out of XSUBs
3513
3514 =item More about XSUB arguments
3515
3516 =item The Argument Stack
3517
3518 =item Extending your Extension
3519
3520 =item Documenting your Extension
3521
3522 =item Installing your Extension
3523
3524 =item EXAMPLE 5
3525
3526 =item New Things in this Example
3527
3528 =item EXAMPLE 6
3529
3530 =item New Things in this Example
3531
3532 =item EXAMPLE 7 (Coming Soon)
3533
3534 =item EXAMPLE 8 (Coming Soon)
3535
3536 =item EXAMPLE 9 (Coming Soon)
3537
3538 =item Troubleshooting these Examples
3539
3540 =back
3541
3542 =item See also
3543
3544 =item Author
3545
3546 =over
3547
3548 =item Last Changed
3549
3550 =back
3551
3552 =back
3553
3554 =head2 perlxs - XS language reference manual
3555
3556 =over
3557
3558 =item DESCRIPTION
3559
3560 =over
3561
3562 =item Introduction
3563
3564 =item On The Road
3565
3566 =item The Anatomy of an XSUB
3567
3568 =item The Argument Stack
3569
3570 =item The RETVAL Variable
3571
3572 =item The MODULE Keyword
3573
3574 =item The PACKAGE Keyword
3575
3576 =item The PREFIX Keyword
3577
3578 =item The OUTPUT: Keyword
3579
3580 =item The CODE: Keyword
3581
3582 =item The INIT: Keyword
3583
3584 =item The NO_INIT Keyword
3585
3586 =item Initializing Function Parameters
3587
3588 =item Default Parameter Values
3589
3590 =item The PREINIT: Keyword
3591
3592 =item The SCOPE: Keyword
3593
3594 =item The INPUT: Keyword
3595
3596 =item Variable-length Parameter Lists
3597
3598 =item The C_ARGS: Keyword
3599
3600 =item The PPCODE: Keyword
3601
3602 =item Returning Undef And Empty Lists
3603
3604 =item The REQUIRE: Keyword
3605
3606 =item The CLEANUP: Keyword
3607
3608 =item The BOOT: Keyword
3609
3610 =item The VERSIONCHECK: Keyword
3611
3612 =item The PROTOTYPES: Keyword
3613
3614 =item The PROTOTYPE: Keyword
3615
3616 =item The ALIAS: Keyword
3617
3618 =item The INTERFACE: Keyword
3619
3620 =item The INTERFACE_MACRO: Keyword
3621
3622 =item The INCLUDE: Keyword
3623
3624 =item The CASE: Keyword
3625
3626 =item The & Unary Operator
3627
3628 =item Inserting Comments and C Preprocessor Directives
3629
3630 =item Using XS With C++
3631
3632 =item Interface Strategy
3633
3634 =item Perl Objects And C Structures
3635
3636 =item The Typemap
3637
3638 =back
3639
3640 =item EXAMPLES
3641
3642 =item XS VERSION
3643
3644 =item AUTHOR
3645
3646 =back
3647
3648 =head2 perlguts - Introduction to the Perl API
3649
3650 =over
3651
3652 =item DESCRIPTION
3653
3654 =item Variables
3655
3656 =over
3657
3658 =item Datatypes
3659
3660 =item What is an "IV"?
3661
3662 =item Working with SVs
3663
3664 =item What's Really Stored in an SV?
3665
3666 =item Working with AVs
3667
3668 =item Working with HVs
3669
3670 =item Hash API Extensions
3671
3672 =item References
3673
3674 =item Blessed References and Class Objects
3675
3676 =item Creating New Variables
3677
3678 =item Reference Counts and Mortality
3679
3680 =item Stashes and Globs
3681
3682 =item Double-Typed SVs
3683
3684 =item Magic Variables
3685
3686 =item Assigning Magic
3687
3688 =item Magic Virtual Tables
3689
3690 =item Finding Magic
3691
3692 =item Understanding the Magic of Tied Hashes and Arrays
3693
3694 =item Localizing changes
3695
3696 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
3697 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEFREEOP(OP
3698 *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>, C<SAVEDELETE(HV *hv, char
3699 *key, I32 length)>, C<SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void
3700 *p)>, C<SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)>, C<SAVESTACK_POS()>,
3701 C<SV* save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV
3702 *gv)>, C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32
3703 maxsarg)>, C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>,
3704 C<void save_hptr(HV **hptr)>
3705
3706 =back
3707
3708 =item Subroutines
3709
3710 =over
3711
3712 =item XSUBs and the Argument Stack
3713
3714 =item Calling Perl Routines from within C Programs
3715
3716 =item Memory Allocation
3717
3718 =item PerlIO
3719
3720 =item Putting a C value on Perl stack
3721
3722 =item Scratchpads
3723
3724 =item Scratchpads and recursion
3725
3726 =back
3727
3728 =item Compiled code
3729
3730 =over
3731
3732 =item Code tree
3733
3734 =item Examining the tree
3735
3736 =item Compile pass 1: check routines
3737
3738 =item Compile pass 1a: constant folding
3739
3740 =item Compile pass 2: context propagation
3741
3742 =item Compile pass 3: peephole optimization
3743
3744 =back
3745
3746 =item How multiple interpreters and concurrency are supported
3747
3748 =over
3749
3750 =item Background and PERL_IMPLICIT_CONTEXT
3751
3752 =item How do I use all this in extensions?
3753
3754 =item Future Plans and PERL_IMPLICIT_SYS
3755
3756 =back
3757
3758 =item AUTHORS
3759
3760 =item SEE ALSO
3761
3762 =back
3763
3764 =head2 perlcall - Perl calling conventions from C
3765
3766 =over
3767
3768 =item DESCRIPTION
3769
3770 An Error Handler, An Event Driven Program
3771
3772 =item THE CALL_ FUNCTIONS
3773
3774 call_sv, call_pv, call_method, call_argv
3775
3776 =item FLAG VALUES
3777
3778 =over
3779
3780 =item  G_VOID
3781
3782 =item  G_SCALAR
3783
3784 =item G_ARRAY
3785
3786 =item G_DISCARD
3787
3788 =item G_NOARGS
3789
3790 =item G_EVAL
3791
3792 =item G_KEEPERR
3793
3794 =item Determining the Context
3795
3796 =back
3797
3798 =item KNOWN PROBLEMS
3799
3800 =item EXAMPLES
3801
3802 =over
3803
3804 =item No Parameters, Nothing returned
3805
3806 =item Passing Parameters
3807
3808 =item Returning a Scalar
3809
3810 =item Returning a list of values
3811
3812 =item Returning a list in a scalar context
3813
3814 =item Returning Data from Perl via the parameter list
3815
3816 =item Using G_EVAL
3817
3818 =item Using G_KEEPERR
3819
3820 =item Using call_sv
3821
3822 =item Using call_argv
3823
3824 =item Using call_method
3825
3826 =item Using GIMME_V
3827
3828 =item Using Perl to dispose of temporaries
3829
3830 =item Strategies for storing Callback Context Information
3831
3832 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
3833 callbacks - hard wired limit, 3. Use a parameter to map to the Perl
3834 callback
3835
3836 =item Alternate Stack Manipulation
3837
3838 =item Creating and calling an anonymous subroutine in C
3839
3840 =back
3841
3842 =item SEE ALSO
3843
3844 =item AUTHOR
3845
3846 =item DATE
3847
3848 =back
3849
3850 =head2 perlutil - utilities packaged with the Perl distribution
3851
3852 =over
3853
3854 =item DESCRIPTION
3855
3856 =over
3857
3858 =item DOCUMENTATION
3859
3860 L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>,
3861 L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>,
3862 L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>,
3863 L<roffitall|roffitall>
3864
3865 =item CONVERTORS
3866
3867 L<a2p|a2p>, L<s2p|s2p>, L<find2perl|find2perl>
3868
3869 =item Development
3870
3871 L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>,
3872 L<h2xs|h2xs>, L<dprofpp|dprofpp>, L<perlcc|perlcc>
3873
3874 =item SEE ALSO
3875
3876 =back
3877
3878 =back
3879
3880 =head2 perlfilter - Source Filters
3881
3882 =over
3883
3884 =item DESCRIPTION
3885
3886 =item CONCEPTS
3887
3888 =item USING FILTERS
3889
3890 =item WRITING A SOURCE FILTER
3891
3892 =item WRITING A SOURCE FILTER IN C
3893
3894 B<Decryption Filters>
3895
3896 =item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
3897
3898 =item WRITING A SOURCE FILTER IN PERL
3899
3900 =item USING CONTEXT: THE DEBUG FILTER
3901
3902 =item CONCLUSION
3903
3904 =item REQUIREMENTS
3905
3906 =item AUTHOR
3907
3908 =item Copyrights
3909
3910 =back
3911
3912 =head2 perldbmfilter - Perl DBM Filters
3913
3914 =over
3915
3916 =item SYNOPSIS
3917
3918 =item DESCRIPTION
3919
3920 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
3921 B<filter_fetch_value>
3922
3923 =over
3924
3925 =item The Filter
3926
3927 =item An Example -- the NULL termination problem.
3928
3929 =item Another Example -- Key is a C int.
3930
3931 =back
3932
3933 =item SEE ALSO
3934
3935 =item AUTHOR
3936
3937 =back
3938
3939 =head2 perlapi - autogenerated documentation for the perl public API
3940
3941 =over
3942
3943 =item DESCRIPTION
3944
3945 AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop, av_push,
3946 av_shift, av_store, av_undef, av_unshift, bytes_to_utf8, call_argv,
3947 call_method, call_pv, call_sv, CLASS, Copy, croak, CvSTASH, dMARK,
3948 dORIGMARK, dSP, dXSARGS, dXSI32, ENTER, eval_pv, eval_sv, EXTEND,
3949 fbm_compile, fbm_instr, FREETMPS, get_av, get_cv, get_hv, get_sv, GIMME,
3950 GIMME_V, GvSV, gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload,
3951 gv_stashpv, gv_stashsv, G_ARRAY, G_DISCARD, G_EVAL, G_NOARGS, G_SCALAR,
3952 G_VOID, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY, HeSVKEY_force,
3953 HeSVKEY_set, HeVAL, HvNAME, hv_clear, hv_delete, hv_delete_ent, hv_exists,
3954 hv_exists_ent, hv_fetch, hv_fetch_ent, hv_iterinit, hv_iterkey,
3955 hv_iterkeysv, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, hv_store,
3956 hv_store_ent, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE,
3957 isUPPER, items, ix, LEAVE, looks_like_number, MARK, mg_clear, mg_copy,
3958 mg_find, mg_free, mg_get, mg_length, mg_magical, mg_set, Move, New, newAV,
3959 Newc, newCONSTSUB, newHV, newRV_inc, newRV_noinc, NEWSV, newSViv, newSVnv,
3960 newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, newSVuv, newXS, newXSproto,
3961 Newz, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc,
3962 perl_construct, perl_destruct, perl_free, perl_parse, perl_run,
3963 PL_DBsingle, PL_DBsub, PL_DBtrace, PL_dowarn, PL_modglobal, PL_na,
3964 PL_sv_no, PL_sv_undef, PL_sv_yes, POPi, POPl, POPn, POPp, POPs, PUSHi,
3965 PUSHMARK, PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, require_pv,
3966 RETVAL, Safefree, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE,
3967 strGT, strLE, strLT, strNE, strnEQ, strnNE, StructCopy, SvCUR, SvCUR_set,
3968 SvEND, SvGETMAGIC, SvGROW, SvIOK, SvIOKp, SvIOK_off, SvIOK_on, SvIOK_only,
3969 SvIV, SvIVX, SvLEN, SvLOCK, SvNIOK, SvNIOKp, SvNIOK_off, SvNOK, SvNOKp,
3970 SvNOK_off, SvNOK_on, SvNOK_only, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOKp,
3971 SvPOK_off, SvPOK_on, SvPOK_only, SvPV, SvPVX, SvPV_force, SvPV_nolen,
3972 SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV,
3973 SvSETMAGIC, SvSetSV, SvSetSV_nosteal, SvSTASH, SvTAINT, SvTAINTED,
3974 SvTAINTED_off, SvTAINTED_on, SvTRUE, SvTYPE, svtype, SVt_IV, SVt_NV,
3975 SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SvUNLOCK, SvUPGRADE, SvUV,
3976 SvUVX, sv_2mortal, sv_bless, sv_catpv, sv_catpvf, sv_catpvf_mg, sv_catpvn,
3977 sv_catpvn_mg, sv_catpv_mg, sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, sv_dec,
3978 sv_derived_from, sv_eq, sv_grow, sv_inc, sv_insert, sv_isa, sv_isobject,
3979 sv_len, sv_magic, sv_mortalcopy, sv_newmortal, sv_setiv, sv_setiv_mg,
3980 sv_setnv, sv_setnv_mg, sv_setpv, sv_setpvf, sv_setpvf_mg, sv_setpviv,
3981 sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpv_mg, sv_setref_iv,
3982 sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setsv, sv_setsv_mg, sv_setuv,
3983 sv_setuv_mg, sv_unref, sv_upgrade, sv_usepvn, sv_usepvn_mg, sv_vcatpvfn,
3984 sv_vsetpvfn, THIS, toLOWER, toUPPER, U8 *s, utf8_to_bytes, warn, XPUSHi,
3985 XPUSHn, XPUSHp, XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV,
3986 XSRETURN_NO, XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES,
3987 XST_mIV, XST_mNO, XST_mNV, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION,
3988 XS_VERSION_BOOTCHECK, Zero
3989
3990 =item AUTHORS
3991
3992 =item SEE ALSO
3993
3994 =back
3995
3996 =head2 perlintern - autogenerated documentation of purely B<internal> 
3997                  Perl functions
3998
3999 =over
4000
4001 =item DESCRIPTION
4002
4003 is_gv_magical
4004
4005 =item AUTHORS
4006
4007 =item SEE ALSO
4008
4009 =back
4010
4011 =head2 perlapio - perl's IO abstraction interface.
4012
4013 =over
4014
4015 =item SYNOPSIS
4016
4017 =item DESCRIPTION
4018
4019 B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
4020 B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
4021 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
4022 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
4023 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
4024 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
4025 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
4026 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
4027 B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
4028 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
4029
4030 =over
4031
4032 =item Co-existence with stdio
4033
4034 B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
4035 B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
4036 B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
4037 B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
4038 B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
4039 B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
4040
4041 =back
4042
4043 =back
4044
4045 =head2 perltodo - Perl TO-DO List
4046
4047 =over
4048
4049 =item DESCRIPTION
4050
4051 =item Infrastructure
4052
4053 =over
4054
4055 =item Mailing list archives
4056
4057 =item Bug tracking system
4058
4059 =item Regression Tests
4060
4061 Coverage, Regression, __DIE__, suidperl, The 25% slowdown from perl4 to
4062 perl5
4063
4064 =back
4065
4066 =item Configure
4067
4068 =over
4069
4070 =item Install HTML
4071
4072 =back
4073
4074 =item Perl Language
4075
4076 =over
4077
4078 =item our ($var)
4079
4080 =item 64-bit Perl
4081
4082 =item Prototypes
4083
4084 Named prototypes, Indirect objects, Method calls, Context, Scoped subs
4085
4086 =back
4087
4088 =item Perl Internals
4089
4090 =over
4091
4092 =item magic_setisa
4093
4094 =item Garbage Collection
4095
4096 =item Reliable signals
4097
4098 Alternate runops() for signal despatch, Figure out how to die() in delayed
4099 sighandler, Add tests for Thread::Signal, Automatic tests against CPAN
4100
4101 =item Interpolated regex performance bugs
4102
4103 =item Memory leaks from failed eval/regcomp
4104
4105 =item Make XS easier to use
4106
4107 =item Make embedded Perl easier to use
4108
4109 =item Namespace cleanup
4110
4111 =item MULTIPLICITY
4112
4113 =item MacPerl
4114
4115 =back
4116
4117 =item Documentation
4118
4119 =over
4120
4121 =item A clear division into tutorial and reference
4122
4123 =item Remove the artificial distinction between operators and functions
4124
4125 =item More tutorials
4126
4127 Regular expressions, I/O, pack/unpack, Debugging
4128
4129 =item Include a search tool
4130
4131 =item Include a locate tool
4132
4133 =item Separate function manpages by default
4134
4135 =item Users can't find the manpages
4136
4137 =item Install ALL Documentation
4138
4139 =item Outstanding issues to be documented
4140
4141 =item Adapt www.linuxhq.com for Perl
4142
4143 =item Replace man with a perl program
4144
4145 =item Unicode tutorial
4146
4147 =back
4148
4149 =item Modules
4150
4151 =over
4152
4153 =item Update the POSIX extension to conform with the POSIX 1003.1 Edition 2
4154
4155 =item Module versions
4156
4157 =item New modules
4158
4159 =item Profiler
4160
4161 =item Tie Modules
4162
4163 VecArray, SubstrArray, VirtualArray, ShiftSplice
4164
4165 =item Procedural options
4166
4167 =item RPC
4168
4169 =item y2k localtime/gmtime
4170
4171 =item Export File::Find variables
4172
4173 =item Ioctl
4174
4175 =item Debugger attach/detach
4176
4177 =item Regular Expression debugger
4178
4179 =item Alternative RE Syntax
4180
4181 =item Bundled modules
4182
4183 =item Expect
4184
4185 =item GUI::Native
4186
4187 =item Update semibroken auxiliary tools; h2ph, a2p, etc.
4188
4189 =item POD Converters
4190
4191 =item pod2html
4192
4193 =item Podchecker
4194
4195 =back
4196
4197 =item Tom's Wishes
4198
4199 =over
4200
4201 =item Webperl
4202
4203 =item Mobile agents
4204
4205 =item POSIX on non-POSIX
4206
4207 =item Portable installations
4208
4209 =back
4210
4211 =item Win32 Stuff
4212
4213 =over
4214
4215 =item Rename new headers to be consistent with the rest
4216
4217 =item Sort out the spawnvp() mess
4218
4219 =item Work out DLL versioning
4220
4221 =item Style-check
4222
4223 =back
4224
4225 =item Would be nice to have
4226
4227 C<pack "(stuff)*">, Contiguous bitfields in pack/unpack, lexperl, Bundled
4228 perl preprocessor, Use posix calls internally where possible, format
4229 BOTTOM, -i rename file only when successfully changed, All ARGV input
4230 should act like <>, report HANDLE [formats], support in perlmain to rerun
4231 debugger, lvalue functions
4232
4233 =item Possible pragmas
4234
4235 =over
4236
4237 =item 'less'
4238
4239 =back
4240
4241 =item Optimizations
4242
4243 =over
4244
4245 =item constant function cache
4246
4247 =item foreach(reverse...)
4248
4249 =item Cache eval tree
4250
4251 =item rcatmaybe
4252
4253 =item Shrink opcode tables
4254
4255 =item Cache hash value
4256
4257 =item Optimize away @_ where possible
4258
4259 =item Optimize sort by { $a <=> $b }
4260
4261 =item Rewrite regexp parser for better integrated optimization
4262
4263 =back
4264
4265 =item Vague possibilities
4266
4267 ref function in list context, make tr/// return histogram in list context?,
4268 Loop control on do{} et al, Explicit switch statements, compile to real
4269 threaded code, structured types, Modifiable $1 et al
4270
4271 =item To Do Or Not To Do
4272
4273 =over
4274
4275 =item Making my() work on "package" variables
4276
4277 =item "or" testing defined not truth
4278
4279 =item "dynamic" lexicals
4280
4281 =item "class"-based, rather than package-based "lexicals"
4282
4283 =back
4284
4285 =item Threading
4286
4287 =over
4288
4289 =item Modules
4290
4291 =item Testing
4292
4293 =item $AUTOLOAD
4294
4295 =item exit/die
4296
4297 =item External threads
4298
4299 =item Thread::Pool
4300
4301 =item thread-safety
4302
4303 =item Per-thread GVs
4304
4305 =back
4306
4307 =item Compiler
4308
4309 =over
4310
4311 =item Optimization
4312
4313 =item Byteperl
4314
4315 =item Precompiled modules
4316
4317 =item Executables
4318
4319 =item Typed lexicals
4320
4321 =item Win32
4322
4323 =item END blocks
4324
4325 =item _AUTOLOAD
4326
4327 =item comppadlist
4328
4329 =item Cached compilation
4330
4331 =back
4332
4333 =item Recently Finished Tasks
4334
4335 =over
4336
4337 =item Figure a way out of $^(capital letter)
4338
4339 =item Filenames
4340
4341 =item Foreign lines
4342
4343 =item Namespace cleanup
4344
4345 =item ISA.pm
4346
4347 =item gettimeofday
4348
4349 =item autocroak?
4350
4351 =back
4352
4353 =back
4354
4355 =head2 perlhack - How to hack at the Perl internals
4356
4357 =over
4358
4359 =item DESCRIPTION
4360
4361 Does concept match the general goals of Perl?, Where is the
4362 implementation?, Backwards compatibility, Could it be a module instead?, Is
4363 the feature generic enough?, Does it potentially introduce new bugs?, Does
4364 it preclude other desirable features?, Is the implementation robust?, Is
4365 the implementation generic enough to be portable?, Is there enough
4366 documentation?, Is there another way to do it?, Does it create too much
4367 work?, Patches speak louder than words
4368
4369 =item AUTHOR
4370
4371 =back
4372
4373 =head2 perlhist - the Perl history records
4374
4375 =over
4376
4377 =item DESCRIPTION
4378
4379 =item INTRODUCTION
4380
4381 =item THE KEEPERS OF THE PUMPKIN
4382
4383 =over
4384
4385 =item PUMPKIN?
4386
4387 =back
4388
4389 =item THE RECORDS
4390
4391 =over
4392
4393 =item SELECTED RELEASE SIZES
4394
4395 =item SELECTED PATCH SIZES
4396
4397 =back
4398
4399 =item THE KEEPERS OF THE RECORDS
4400
4401 =back
4402
4403 =head2 perldelta - what's new for perl v5.6.0
4404
4405 =over
4406
4407 =item DESCRIPTION
4408
4409 =item Core Enhancements
4410
4411 =over
4412
4413 =item Interpreter cloning, threads, and concurrency
4414
4415 =item Lexically scoped warning categories
4416
4417 =item Unicode and UTF-8 support
4418
4419 =item Support for interpolating named characters
4420
4421 =item "our" declarations
4422
4423 =item Support for strings represented as a vector of ordinals
4424
4425 =item Improved Perl version numbering system
4426
4427 =item New syntax for declaring subroutine attributes
4428
4429 =item File and directory handles can be autovivified
4430
4431 =item open() with more than two arguments
4432
4433 =item 64-bit support
4434
4435 =item Large file support
4436
4437 =item Long doubles
4438
4439 =item "more bits"
4440
4441 =item Enhanced support for sort() subroutines
4442
4443 =item C<sort $coderef @foo> allowed
4444
4445 =item File globbing implemented internally
4446
4447 Support for CHECK blocks
4448
4449 =item POSIX character class syntax [: :] supported
4450
4451 Better pseudo-random number generator
4452
4453 =item Improved C<qw//> operator
4454
4455 Better worst-case behavior of hashes
4456
4457 =item pack() format 'Z' supported
4458
4459 =item pack() format modifier '!' supported
4460
4461 =item pack() and unpack() support counted strings
4462
4463 =item Comments in pack() templates
4464
4465 =item Weak references
4466
4467 =item Binary numbers supported
4468
4469 =item Lvalue subroutines
4470
4471 =item Some arrows may be omitted in calls through references
4472
4473 =item Boolean assignment operators are legal lvalues
4474
4475 =item exists() is supported on subroutine names
4476
4477 =item exists() and delete() are supported on array elements
4478
4479 =item Pseudo-hashes work better
4480
4481 =item Automatic flushing of output buffers
4482
4483 =item Better diagnostics on meaningless filehandle operations
4484
4485 =item Where possible, buffered data discarded from duped input filehandle
4486
4487 =item eof() has the same old magic as <>
4488
4489 =item binmode() can be used to set :crlf and :raw modes
4490
4491 =item C<-T> filetest recognizes UTF-8 encoded files as "text"
4492
4493 =item system(), backticks and pipe open now reflect exec() failure
4494
4495 =item Improved diagnostics
4496
4497 =item Diagnostics follow STDERR
4498
4499 More consistent close-on-exec behavior
4500
4501 =item syswrite() ease-of-use
4502
4503 =item Better syntax checks on parenthesized unary operators
4504
4505 =item Bit operators support full native integer width
4506
4507 =item Improved security features
4508
4509 More functional bareword prototype (*)
4510
4511 =item C<require> and C<do> may be overridden
4512
4513 =item $^X variables may now have names longer than one character
4514
4515 =item New variable $^C reflects C<-c> switch
4516
4517 =item New variable $^V contains Perl version as a string
4518
4519 =item Optional Y2K warnings
4520
4521 =back
4522
4523 =item Modules and Pragmata
4524
4525 =over
4526
4527 =item Modules
4528
4529 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper,
4530 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English,
4531 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec,
4532 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt,
4533 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker,
4534 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage,
4535 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname,
4536 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
4537
4538 =item Pragmata
4539
4540 =back
4541
4542 =item Utility Changes
4543
4544 =over
4545
4546 =item dprofpp
4547
4548 =item find2perl
4549
4550 =item h2xs
4551
4552 =item perlcc
4553
4554 =item perldoc
4555
4556 =item The Perl Debugger
4557
4558 =back
4559
4560 =item Improved Documentation
4561
4562 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod,
4563 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod,
4564 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod,
4565 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
4566
4567 =item Performance enhancements
4568
4569 =over
4570
4571 =item Simple sort() using { $a <=> $b } and the like are optimized
4572
4573 =item Optimized assignments to lexical variables
4574
4575 =item Faster subroutine calls
4576
4577 delete(), each(), values() and hash iteration are faster
4578
4579 =back
4580
4581 =item Installation and Configuration Improvements
4582
4583 =over
4584
4585 =item -Dusethreads means something different
4586
4587 =item New Configure flags
4588
4589 =item Threadedness and 64-bitness now more daring
4590
4591 =item Long Doubles
4592
4593 =item -Dusemorebits
4594
4595 =item -Duselargefiles
4596
4597 =item installusrbinperl
4598
4599 =item SOCKS support
4600
4601 =item C<-A> flag
4602
4603 =item Enhanced Installation Directories
4604
4605 =back
4606
4607 =item Platform specific changes
4608
4609 =over
4610
4611 =item Supported platforms
4612
4613 =item DOS
4614
4615 =item OS390 (OpenEdition MVS)
4616
4617 =item VMS
4618
4619 =item Win32
4620
4621 =back
4622
4623 =item Significant bug fixes
4624
4625 =over
4626
4627 =item <HANDLE> on empty files
4628
4629 =item C<eval '...'> improvements
4630
4631 =item All compilation errors are true errors
4632
4633 =item Implicitly closed filehandles are safer
4634
4635 =item Behavior of list slices is more consistent
4636
4637 =item C<(\$)> prototype and C<$foo{a}>
4638
4639 =item C<goto &sub> and AUTOLOAD
4640
4641 =item C<-bareword> allowed under C<use integer>
4642
4643 =item Failures in DESTROY()
4644
4645 =item Locale bugs fixed
4646
4647 =item Memory leaks
4648
4649 =item Spurious subroutine stubs after failed subroutine calls
4650
4651 =item Taint failures under C<-U>
4652
4653 =item END blocks and the C<-c> switch
4654
4655 =item Potential to leak DATA filehandles
4656
4657 =back
4658
4659 =item New or Changed Diagnostics
4660
4661 (perhaps you forgot to load "%s"?), "%s" variable %s masks earlier
4662 declaration in same %s, "my sub" not yet implemented, "our" variable %s
4663 redeclared, '!' allowed only after types %s, / cannot take a count, / must
4664 be followed by a, A or Z, / must be followed by a*, A* or Z*, / must follow
4665 a numeric type, /%s/: Unrecognized escape \\%c passed through, /%s/:
4666 Unrecognized escape \\%c in character class passed through, /%s/ should
4667 probably be written as "%s", %s() called too early to check prototype, %s
4668 argument is not a HASH or ARRAY element, %s argument is not a HASH or ARRAY
4669 element or slice, %s argument is not a subroutine name, %s package
4670 attribute may clash with future reserved word: %s, (in cleanup) %s, <>
4671 should be quotes, Attempt to join self, Bad evalled substitution pattern,
4672 Bad realloc() ignored, Bareword found in conditional, Binary number >
4673 0b11111111111111111111111111111111 non-portable, Bit vector size > 32
4674 non-portable, Buffer overflow in prime_env_iter: %s, Can't check filesystem
4675 of script "%s", Can't declare class for non-scalar %s in "%s", Can't
4676 declare %s in "%s", Can't ignore signal CHLD, forcing to default, Can't
4677 modify non-lvalue subroutine call, Can't read CRTL environ, Can't remove
4678 %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't weaken
4679 a nonreference, Character class [:%s:] unknown, Character class syntax [%s]
4680 belongs inside character classes, Constant is not %s reference,
4681 constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated,
4682 defined(%hash) is deprecated, Did not produce a valid header, (Did you mean
4683 "local" instead of "our"?), Document contains no data, entering effective
4684 %s failed, false [] range "%s" in regexp, Filehandle %s opened only for
4685 output, flock() on closed filehandle %s, Global symbol "%s" requires
4686 explicit package name, Hexadecimal number > 0xffffffff non-portable,
4687 Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter:
4688 |%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal
4689 number of bits in vec, Integer overflow in %s number, Invalid %s attribute:
4690 %s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid
4691 separator character %s in attribute list, Invalid separator character %s in
4692 subroutine attribute list, leaving effective %s failed, Lvalue subs
4693 returning %s not implemented yet, Method %s not permitted, Missing
4694 %sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub",
4695 No %s specified for -%c, No package name allowed for variable %s in "our",
4696 No space allowed after -%c, no UTC offset information; assuming local time
4697 is UTC, Octal number > 037777777777 non-portable, panic: del_backref,
4698 panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing
4699 around "%s" list, Possible Y2K bug: %s, pragma "attrs" is deprecated, use
4700 "sub NAME : ATTRS" instead, Premature end of script headers, Repeat count
4701 in pack overflows, Repeat count in unpack overflows, realloc() of freed
4702 memory ignored, Reference is already weak, setpgrp can't take arguments,
4703 Strange *+?{} on zero-length expression, switching effective %s is not
4704 implemented, This Perl can't reset CRTL environ elements (%s), This Perl
4705 can't set CRTL environ elements (%s=%s), Too late to run %s block, Unknown
4706 open() mode '%s', Unknown process %x sent message to prime_env_iter: %s,
4707 Unrecognized escape \\%c passed through, Unterminated attribute parameter
4708 in attribute list, Unterminated attribute list, Unterminated attribute
4709 parameter in subroutine attribute list, Unterminated subroutine attribute
4710 list, Value of CLI symbol "%s" too long, Version number must be a constant
4711 number
4712
4713 =item New tests
4714
4715 =item Incompatible Changes
4716
4717 =over
4718
4719 =item Perl Source Incompatibilities
4720
4721 CHECK is a new keyword, Treatment of list slices of undef has changed
4722
4723 =item Format of $English::PERL_VERSION is different
4724
4725 Literals of the form C<1.2.3> parse differently, Possibly changed
4726 pseudo-random number generator, Hashing function for hash keys has changed,
4727 C<undef> fails on read only values, Close-on-exec bit may be set on pipe
4728 and socket handles, Writing C<"$$1"> to mean C<"${$}1"> is unsupported,
4729 delete(), values() and C<\(%h)> operate on aliases to values, not copies,
4730 vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, Text of some diagnostic
4731 output has changed, C<%@> has been removed, Parenthesized not() behaves
4732 like a list operator, Semantics of bareword prototype C<(*)> have changed
4733
4734 =item Semantics of bit operators may have changed on 64-bit platforms
4735
4736 =item More builtins taint their results
4737
4738 =item C Source Incompatibilities
4739
4740 C<PERL_POLLUTE>, C<PERL_IMPLICIT_CONTEXT>, C<PERL_POLLUTE_MALLOC>
4741
4742 =item Compatible C Source API Changes
4743
4744 C<PATCHLEVEL> is now C<PERL_VERSION>
4745
4746 =item Binary Incompatibilities
4747
4748 =back
4749
4750 =item Known Problems
4751
4752 =over
4753
4754 =item Thread test failures
4755
4756 =item EBCDIC platforms not supported
4757
4758 =item In 64-bit HP-UX the lib/io_multihomed test may hang
4759
4760 =item NEXTSTEP 3.3 POSIX test failure
4761
4762 =item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with
4763 gcc
4764
4765 =item UNICOS/mk CC failures during Configure run
4766
4767 =item Arrow operator and arrays
4768
4769 =item Windows 2000
4770
4771 =item Experimental features
4772
4773 Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The
4774 pseudo-hash data type, The Compiler suite, Internal implementation of file
4775 globbing, The DB module, The regular expression constructs C<(?{ code })>
4776 and C<(??{ code })>
4777
4778 =back
4779
4780 =item Obsolete Diagnostics
4781
4782 Character class syntax [: :] is reserved for future extensions, Ill-formed
4783 logical name |%s| in prime_env_iter, Probable precedence problem on %s,
4784 regexp too big, Use of "$$<digit>" to mean "${$}<digit>" is deprecated
4785
4786 =item Reporting Bugs
4787
4788 =item SEE ALSO
4789
4790 =item HISTORY
4791
4792 =back
4793
4794 =head2 perl56delta, perldelta - what's new for perl v5.6.0
4795
4796 =over
4797
4798 =item DESCRIPTION
4799
4800 =item Core Enhancements
4801
4802 =over
4803
4804 =item Interpreter cloning, threads, and concurrency
4805
4806 =item Lexically scoped warning categories
4807
4808 =item Unicode and UTF-8 support
4809
4810 =item Support for interpolating named characters
4811
4812 =item "our" declarations
4813
4814 =item Support for strings represented as a vector of ordinals
4815
4816 =item Improved Perl version numbering system
4817
4818 =item New syntax for declaring subroutine attributes
4819
4820 =item File and directory handles can be autovivified
4821
4822 =item open() with more than two arguments
4823
4824 =item 64-bit support
4825
4826 =item Large file support
4827
4828 =item Long doubles
4829
4830 =item "more bits"
4831
4832 =item Enhanced support for sort() subroutines
4833
4834 =item C<sort $coderef @foo> allowed
4835
4836 =item File globbing implemented internally
4837
4838 =item Support for CHECK blocks
4839
4840 =item POSIX character class syntax [: :] supported
4841
4842 =item Better pseudo-random number generator
4843
4844 =item Improved C<qw//> operator
4845
4846 =item Better worst-case behavior of hashes
4847
4848 =item pack() format 'Z' supported
4849
4850 =item pack() format modifier '!' supported
4851
4852 =item pack() and unpack() support counted strings
4853
4854 =item Comments in pack() templates
4855
4856 =item Weak references
4857
4858 =item Binary numbers supported
4859
4860 =item Lvalue subroutines
4861
4862 =item Some arrows may be omitted in calls through references
4863
4864 =item Boolean assignment operators are legal lvalues
4865
4866 =item exists() is supported on subroutine names
4867
4868 =item exists() and delete() are supported on array elements
4869
4870 =item Pseudo-hashes work better
4871
4872 =item Automatic flushing of output buffers
4873
4874 =item Better diagnostics on meaningless filehandle operations
4875
4876 =item Where possible, buffered data discarded from duped input filehandle
4877
4878 =item eof() has the same old magic as <>
4879
4880 =item binmode() can be used to set :crlf and :raw modes
4881
4882 =item C<-T> filetest recognizes UTF-8 encoded files as "text"
4883
4884 =item system(), backticks and pipe open now reflect exec() failure
4885
4886 =item Improved diagnostics
4887
4888 =item Diagnostics follow STDERR
4889
4890 =item More consistent close-on-exec behavior
4891
4892 =item syswrite() ease-of-use
4893
4894 =item Better syntax checks on parenthesized unary operators
4895
4896 =item Bit operators support full native integer width
4897
4898 =item Improved security features
4899
4900 =item More functional bareword prototype (*)
4901
4902 =item C<require> and C<do> may be overridden
4903
4904 =item $^X variables may now have names longer than one character
4905
4906 =item New variable $^C reflects C<-c> switch
4907
4908 =item New variable $^V contains Perl version as a string
4909
4910 =item Optional Y2K warnings
4911
4912 =item Arrays now always interpolate into double-quoted strings
4913
4914 =back
4915
4916 =item Modules and Pragmata
4917
4918 =over
4919
4920 =item Modules
4921
4922 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper,
4923 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English,
4924 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec,
4925 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt,
4926 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker,
4927 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage,
4928 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname,
4929 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
4930
4931 =item Pragmata
4932
4933 =back
4934
4935 =item Utility Changes
4936
4937 =over
4938
4939 =item dprofpp
4940
4941 =item find2perl
4942
4943 =item h2xs
4944
4945 =item perlcc
4946
4947 =item perldoc
4948
4949 =item The Perl Debugger
4950
4951 =back
4952
4953 =item Improved Documentation
4954
4955 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod,
4956 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod,
4957 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod,
4958 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
4959
4960 =item Performance enhancements
4961
4962 =over
4963
4964 =item Simple sort() using { $a <=> $b } and the like are optimized
4965
4966 =item Optimized assignments to lexical variables
4967
4968 =item Faster subroutine calls
4969
4970 =item delete(), each(), values() and hash iteration are faster
4971
4972 =back
4973
4974 =item Installation and Configuration Improvements
4975
4976 =over
4977
4978 =item -Dusethreads means something different
4979
4980 =item New Configure flags
4981
4982 =item Threadedness and 64-bitness now more daring
4983
4984 =item Long Doubles
4985
4986 =item -Dusemorebits
4987
4988 =item -Duselargefiles
4989
4990 =item installusrbinperl
4991
4992 =item SOCKS support
4993
4994 =item C<-A> flag
4995
4996 =item Enhanced Installation Directories
4997
4998 =back
4999
5000 =item Platform specific changes
5001
5002 =over
5003
5004 =item Supported platforms
5005
5006 =item DOS
5007
5008 =item OS390 (OpenEdition MVS)
5009
5010 =item VMS
5011
5012 =item Win32
5013
5014 =back
5015
5016 =item Significant bug fixes
5017
5018 =over
5019
5020 =item <HANDLE> on empty files
5021
5022 =item C<eval '...'> improvements
5023
5024 =item All compilation errors are true errors
5025
5026 =item Implicitly closed filehandles are safer
5027
5028 =item Behavior of list slices is more consistent
5029
5030 =item C<(\$)> prototype and C<$foo{a}>
5031
5032 =item C<goto &sub> and AUTOLOAD
5033
5034 =item C<-bareword> allowed under C<use integer>
5035
5036 =item Failures in DESTROY()
5037
5038 =item Locale bugs fixed
5039
5040 =item Memory leaks
5041
5042 =item Spurious subroutine stubs after failed subroutine calls
5043
5044 =item Taint failures under C<-U>
5045
5046 =item END blocks and the C<-c> switch
5047
5048 =item Potential to leak DATA filehandles
5049
5050 =back
5051
5052 =item New or Changed Diagnostics
5053
5054 "%s" variable %s masks earlier declaration in same %s, "my sub" not yet
5055 implemented, "our" variable %s redeclared, '!' allowed only after types %s,
5056 / cannot take a count, / must be followed by a, A or Z, / must be followed
5057 by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape
5058 \\%c passed through, /%s/: Unrecognized escape \\%c in character class
5059 passed through, /%s/ should probably be written as "%s", %s() called too
5060 early to check prototype, %s argument is not a HASH or ARRAY element, %s
5061 argument is not a HASH or ARRAY element or slice, %s argument is not a
5062 subroutine name, %s package attribute may clash with future reserved word:
5063 %s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled
5064 substitution pattern, Bad realloc() ignored, Bareword found in conditional,
5065 Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector
5066 size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check
5067 filesystem of script "%s", Can't declare class for non-scalar %s in "%s",
5068 Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default,
5069 Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't
5070 remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't
5071 weaken a nonreference, Character class [:%s:] unknown, Character class
5072 syntax [%s] belongs inside character classes, Constant is not %s reference,
5073 constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated,
5074 defined(%hash) is deprecated, Did not produce a valid header, (Did you mean
5075 "local" instead of "our"?), Document contains no data, entering effective
5076 %s failed, false [] range "%s" in regexp, Filehandle %s opened only for
5077 output, flock() on closed filehandle %s, Global symbol "%s" requires
5078 explicit package name, Hexadecimal number > 0xffffffff non-portable,
5079 Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter:
5080 |%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal
5081 number of bits in vec, Integer overflow in %s number, Invalid %s attribute:
5082 %s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid
5083 separator character %s in attribute list, Invalid separator character %s in
5084 subroutine attribute list, leaving effective %s failed, Lvalue subs
5085 returning %s not implemented yet, Method %s not permitted, Missing
5086 %sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub",
5087 No %s specified for -%c, No package name allowed for variable %s in "our",
5088 No space allowed after -%c, no UTC offset information; assuming local time
5089 is UTC, Octal number > 037777777777 non-portable, panic: del_backref,
5090 panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing
5091 around "%s" list, Possible unintended interpolation of %s in string,
5092 Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS"
5093 instead, Premature end of script headers, Repeat count in pack overflows,
5094 Repeat count in unpack overflows, realloc() of freed memory ignored,
5095 Reference is already weak, setpgrp can't take arguments, Strange *+?{} on
5096 zero-length expression, switching effective %s is not implemented, This
5097 Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL
5098 environ elements (%s=%s), Too late to run %s block, Unknown open() mode
5099 '%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized
5100 escape \\%c passed through, Unterminated attribute parameter in attribute
5101 list, Unterminated attribute list, Unterminated attribute parameter in
5102 subroutine attribute list, Unterminated subroutine attribute list, Value of
5103 CLI symbol "%s" too long, Version number must be a constant number
5104
5105 =item New tests
5106
5107 =item Incompatible Changes
5108
5109 =over
5110
5111 =item Perl Source Incompatibilities
5112
5113 CHECK is a new keyword, Treatment of list slices of undef has changed,
5114 Format of $English::PERL_VERSION is different, Literals of the form
5115 C<1.2.3> parse differently, Possibly changed pseudo-random number
5116 generator, Hashing function for hash keys has changed, C<undef> fails on
5117 read only values, Close-on-exec bit may be set on pipe and socket handles,
5118 Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), values() and
5119 C<\(%h)> operate on aliases to values, not copies, vec(EXPR,OFFSET,BITS)
5120 enforces powers-of-two BITS, Text of some diagnostic output has changed,
5121 C<%@> has been removed, Parenthesized not() behaves like a list operator,
5122 Semantics of bareword prototype C<(*)> have changed, Semantics of bit
5123 operators may have changed on 64-bit platforms, More builtins taint their
5124 results
5125
5126 =item C Source Incompatibilities
5127
5128 C<PERL_POLLUTE>, C<PERL_IMPLICIT_CONTEXT>, C<PERL_POLLUTE_MALLOC>
5129
5130 =item Compatible C Source API Changes
5131
5132 C<PATCHLEVEL> is now C<PERL_VERSION>
5133
5134 =item Binary Incompatibilities
5135
5136 =back
5137
5138 =item Known Problems
5139
5140 =over
5141
5142 =item Thread test failures
5143
5144 =item EBCDIC platforms not supported
5145
5146 =item In 64-bit HP-UX the lib/io_multihomed test may hang
5147
5148 =item NEXTSTEP 3.3 POSIX test failure
5149
5150 =item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with
5151 gcc
5152
5153 =item UNICOS/mk CC failures during Configure run
5154
5155 =item Arrow operator and arrays
5156
5157 =item Experimental features
5158
5159 Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The
5160 pseudo-hash data type, The Compiler suite, Internal implementation of file
5161 globbing, The DB module, The regular expression constructs C<(?{ code })>
5162 and C<(??{ code })>
5163
5164 =back
5165
5166 =item Obsolete Diagnostics
5167
5168 Character class syntax [: :] is reserved for future extensions, Ill-formed
5169 logical name |%s| in prime_env_iter, In string, @%s now must be written as
5170 \@%s, Probable precedence problem on %s, regexp too big, Use of "$$<digit>"
5171 to mean "${$}<digit>" is deprecated
5172
5173 =item Reporting Bugs
5174
5175 =item SEE ALSO
5176
5177 =item HISTORY
5178
5179 =back
5180
5181 =head2 perl5005delta, perldelta - what's new for perl5.005
5182
5183 =over
5184
5185 =item DESCRIPTION
5186
5187 =item About the new versioning system
5188
5189 =item Incompatible Changes
5190
5191 =over
5192
5193 =item WARNING:  This version is not binary compatible with Perl 5.004.
5194
5195 =item Default installation structure has changed
5196
5197 =item Perl Source Compatibility
5198
5199 =item C Source Compatibility
5200
5201 Core sources now require ANSI C compiler, All Perl global variables must
5202 now be referenced with an explicit prefix, Enabling threads has source
5203 compatibility issues
5204
5205 =item Binary Compatibility
5206
5207 =item Security fixes may affect compatibility
5208
5209 =item Relaxed new mandatory warnings introduced in 5.004
5210
5211 =item Licensing
5212
5213 =back
5214
5215 =item Core Changes
5216
5217 =over
5218
5219 =item Threads
5220
5221 =item Compiler
5222
5223 =item Regular Expressions
5224
5225 Many new and improved optimizations, Many bug fixes, New regular expression
5226 constructs, New operator for precompiled regular expressions, Other
5227 improvements, Incompatible changes
5228
5229 =item   Improved malloc()
5230
5231 =item Quicksort is internally implemented
5232
5233 =item Reliable signals
5234
5235 =item Reliable stack pointers
5236
5237 =item More generous treatment of carriage returns
5238
5239 =item Memory leaks
5240
5241 =item Better support for multiple interpreters
5242
5243 =item Behavior of local() on array and hash elements is now well-defined
5244
5245 =item C<%!> is transparently tied to the L<Errno> module
5246
5247 =item Pseudo-hashes are supported
5248
5249 =item C<EXPR foreach EXPR> is supported
5250
5251 =item Keywords can be globally overridden
5252
5253 =item C<$^E> is meaningful on Win32
5254
5255 =item C<foreach (1..1000000)> optimized
5256
5257 =item C<Foo::> can be used as implicitly quoted package name
5258
5259 =item C<exists $Foo::{Bar::}> tests existence of a package
5260
5261 =item Better locale support
5262
5263 =item Experimental support for 64-bit platforms
5264
5265 =item prototype() returns useful results on builtins
5266
5267 =item Extended support for exception handling
5268
5269 =item Re-blessing in DESTROY() supported for chaining DESTROY() methods
5270
5271 =item All C<printf> format conversions are handled internally
5272
5273 =item New C<INIT> keyword
5274
5275 =item New C<lock> keyword
5276
5277 =item New C<qr//> operator
5278
5279 =item C<our> is now a reserved word
5280
5281 =item Tied arrays are now fully supported
5282
5283 =item Tied handles support is better
5284
5285 =item 4th argument to substr
5286
5287 =item Negative LENGTH argument to splice
5288
5289 =item Magic lvalues are now more magical
5290
5291 =item <> now reads in records
5292
5293 =back
5294
5295 =item Supported Platforms
5296
5297 =over
5298
5299 =item New Platforms
5300
5301 =item Changes in existing support
5302
5303 =back
5304
5305 =item Modules and Pragmata
5306
5307 =over
5308
5309 =item New Modules
5310
5311 B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed,
5312 ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle,
5313 Thread, attrs, fields, re
5314
5315 =item Changes in existing modules
5316
5317 Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File,
5318 MakeMaker, CPAN, Cwd, Benchmark
5319
5320 =back
5321
5322 =item Utility Changes
5323
5324 =item Documentation Changes
5325
5326 =item New Diagnostics
5327
5328 Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index
5329 while coercing array into hash, Bareword "%s" refers to nonexistent
5330 package, Can't call method "%s" on an undefined value, Can't check
5331 filesystem of script "%s" for nosuid, Can't coerce array into hash, Can't
5332 goto subroutine from an eval-string, Can't localize pseudo-hash element,
5333 Can't use %%! because Errno.pm is not available, Cannot find an opnumber
5334 for "%s", Character class syntax [. .] is reserved for future extensions,
5335 Character class syntax [: :] is reserved for future extensions, Character
5336 class syntax [= =] is reserved for future extensions, %s: Eval-group in
5337 insecure regular expression, %s: Eval-group not allowed, use re 'eval', %s:
5338 Eval-group not allowed at run time, Explicit blessing to '' (assuming
5339 package main), Illegal hex digit ignored, No such array field, No such
5340 field "%s" in variable %s of type %s, Out of memory during ridiculously
5341 large request, Range iterator outside integer range, Recursive inheritance
5342 detected while looking for method '%s' in package '%s', Reference found
5343 where even-sized list expected, Undefined value assigned to typeglob, Use
5344 of reserved word "%s" is deprecated, perl: warning: Setting locale failed
5345
5346 =item Obsolete Diagnostics
5347
5348 Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open
5349 temporary file, regexp too big
5350
5351 =item Configuration Changes
5352
5353 =item BUGS
5354
5355 =item SEE ALSO
5356
5357 =item HISTORY
5358
5359 =back
5360
5361 =head2 perl5004delta, perldelta - what's new for perl5.004
5362
5363 =over
5364
5365 =item DESCRIPTION
5366
5367 =item Supported Environments
5368
5369 =item Core Changes
5370
5371 =over
5372
5373 =item List assignment to %ENV works
5374
5375 =item "Can't locate Foo.pm in @INC" error now lists @INC
5376
5377 =item Compilation option: Binary compatibility with 5.003
5378
5379 =item $PERL5OPT environment variable
5380
5381 =item Limitations on B<-M>, B<-m>, and B<-T> options
5382
5383 =item More precise warnings
5384
5385 =item Deprecated: Inherited C<AUTOLOAD> for non-methods
5386
5387 =item Previously deprecated %OVERLOAD is no longer usable
5388
5389 =item Subroutine arguments created only when they're modified
5390
5391 =item Group vector changeable with C<$)>
5392
5393 =item Fixed parsing of $$<digit>, &$<digit>, etc.
5394
5395 =item Fixed localization of $<digit>, $&, etc.
5396
5397 =item No resetting of $. on implicit close
5398
5399 =item C<wantarray> may return undef
5400
5401 =item C<eval EXPR> determines value of EXPR in scalar context
5402
5403 =item Changes to tainting checks
5404
5405 No glob() or <*>, No spawning if tainted $CDPATH, $ENV, $BASH_ENV, No
5406 spawning if tainted $TERM doesn't look like a terminal name
5407
5408 =item New Opcode module and revised Safe module
5409
5410 =item Embedding improvements
5411
5412 =item Internal change: FileHandle class based on IO::* classes
5413
5414 =item Internal change: PerlIO abstraction interface
5415
5416 =item New and changed syntax
5417
5418 $coderef->(PARAMS)
5419
5420 =item New and changed builtin constants
5421
5422 __PACKAGE__
5423
5424 =item New and changed builtin variables
5425
5426 $^E, $^H, $^M
5427
5428 =item New and changed builtin functions
5429
5430 delete on slices, flock, printf and sprintf, keys as an lvalue, my() in
5431 Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module
5432 VERSION LIST, prototype(FUNCTION), srand, $_ as Default, C<m//gc> does not
5433 reset search position on failure, C<m//x> ignores whitespace before ?*+{},
5434 nested C<sub{}> closures work now, formats work right on changing lexicals
5435
5436 =item New builtin methods
5437
5438 isa(CLASS), can(METHOD), VERSION( [NEED] )
5439
5440 =item TIEHANDLE now supported
5441
5442 TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this
5443 LIST, READLINE this, GETC this, DESTROY this
5444
5445 =item Malloc enhancements
5446
5447 -DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE
5448
5449 =item Miscellaneous efficiency enhancements
5450
5451 =back
5452
5453 =item Support for More Operating Systems
5454
5455 =over
5456
5457 =item Win32
5458
5459 =item Plan 9
5460
5461 =item QNX
5462
5463 =item AmigaOS
5464
5465 =back
5466
5467 =item Pragmata
5468
5469 use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use
5470 constant NAME => VALUE, use locale, use ops, use vmsish
5471
5472 =item Modules
5473
5474 =over
5475
5476 =item Required Updates
5477
5478 =item Installation directories
5479
5480 =item Module information summary
5481
5482 =item Fcntl
5483
5484 =item IO
5485
5486 =item Math::Complex
5487
5488 =item Math::Trig
5489
5490 =item DB_File
5491
5492 =item Net::Ping
5493
5494 =item Object-oriented overrides for builtin operators
5495
5496 =back
5497
5498 =item Utility Changes
5499
5500 =over
5501
5502 =item pod2html
5503
5504 Sends converted HTML to standard output
5505
5506 =item xsubpp
5507
5508 C<void> XSUBs now default to returning nothing
5509
5510 =back
5511
5512 =item C Language API Changes
5513
5514 C<gv_fetchmethod> and C<perl_call_sv>, C<perl_eval_pv>, Extended API for
5515 manipulating hashes
5516
5517 =item Documentation Changes
5518
5519 L<perldelta>, L<perlfaq>, L<perllocale>, L<perltoot>, L<perlapio>,
5520 L<perlmodlib>, L<perldebug>, L<perlsec>
5521
5522 =item New Diagnostics
5523
5524 "my" variable %s masks earlier declaration in same scope, %s argument is
5525 not a HASH element or slice, Allocation too large: %lx, Allocation too
5526 large, Applying %s to %s will act on scalar(%s), Attempt to free
5527 nonexistent shared string, Attempt to use reference as lvalue in substr,
5528 Bareword "%s" refers to nonexistent package, Can't redefine active sort
5529 subroutine %s, Can't use bareword ("%s") as %s ref while "strict refs" in
5530 use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant
5531 subroutine %s redefined, Constant subroutine %s undefined, Copy method did
5532 not return a reference, Died, Exiting pseudo-block via %s, Identifier too
5533 long, Illegal character %s (carriage return), Illegal switch in PERL5OPT:
5534 %s, Integer overflow in hex number, Integer overflow in octal number,
5535 internal error: glob failed, Invalid conversion in %s: "%s", Invalid type
5536 in pack: '%s', Invalid type in unpack: '%s', Name "%s::%s" used only once:
5537 possible typo, Null picture in formline, Offset outside string, Out of
5538 memory!, Out of memory during request for %s, panic: frexp, Possible
5539 attempt to put comments in qw() list, Possible attempt to separate words
5540 with commas, Scalar value @%s{%s} better written as $%s{%s}, Stub found
5541 while resolving method `%s' overloading `%s' in package `%s', Too late for
5542 "B<-T>" option, untie attempted while %d inner references still exist,
5543 Unrecognized character %s, Unsupported function fork, Use of "$$<digit>" to
5544 mean "${$}<digit>" is deprecated, Value of %s can be "0"; test with
5545 defined(), Variable "%s" may be unavailable, Variable "%s" will not stay
5546 shared, Warning: something's wrong, Ill-formed logical name |%s| in
5547 prime_env_iter, Got an error from DosAllocMem, Malformed PERLLIB_PREFIX,
5548 PERL_SH_DIR too long, Process terminated by SIG%s
5549
5550 =item BUGS
5551
5552 =item SEE ALSO
5553
5554 =item HISTORY
5555
5556 =back
5557
5558 =head2 perlamiga - Perl under Amiga OS (possibly very outdated information)
5559
5560 =over
5561
5562 =item SYNOPSIS
5563
5564 =back
5565
5566 =over
5567
5568 =item DESCRIPTION
5569
5570 =over
5571
5572 =item Prerequisites
5573
5574 B<Unix emulation for AmigaOS: ixemul.library>, B<Version of Amiga OS>
5575
5576 =item Starting Perl programs under AmigaOS
5577