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