This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perlmod notes from Damian Conway (via Tom Christiansen)
[perl5.git] / pod / perltoc.pod
CommitLineData
cb1a09d0
AD
1
2=head1 NAME
3
4perltoc - perl documentation table of contents
5
6=head1 DESCRIPTION
7
8This page provides a brief table of contents for the rest of the Perl
28757baa 9documentation set. It is meant to be scanned quickly or grepped
402d0d99 10through to locate the proper section you're looking for.
cb1a09d0
AD
11
12=head1 BASIC DOCUMENTATION
13
cb1a09d0
AD
14=head2 perl - Practical Extraction and Report Language
15
16=item SYNOPSIS
17
cb1a09d0
AD
18=item DESCRIPTION
19
cb1a09d0
AD
20Many usability enhancements, Simplified grammar, Lexical scoping,
21Arbitrarily nested data structures, Modularity and reusability,
8ebc5c01
PP
22Object-oriented programming, Embeddable and Extensible, POSIX compliant,
23Package constructors and destructors, Multiple simultaneous DBM
24implementations, Subroutine definitions may now be autoloaded, Regular
25expression enhancements, Innumerable Unbundled Modules, Compilability
cb1a09d0
AD
26
27=item ENVIRONMENT
28
cb1a09d0
AD
29=item AUTHOR
30
cb1a09d0
AD
31=item FILES
32
cb1a09d0
AD
33=item SEE ALSO
34
cb1a09d0
AD
35=item DIAGNOSTICS
36
cb1a09d0
AD
37=item BUGS
38
cb1a09d0
AD
39=item NOTES
40
fb9cefb4
GS
41=head2 perlfaq - frequently asked questions about Perl ($Date: 1998/07/20
4223:12:17 $)
68dc0745
PP
43
44=item DESCRIPTION
45
46perlfaq: Structural overview of the FAQ, L<perlfaq1>: General Questions
47About Perl, L<perlfaq2>: Obtaining and Learning about Perl, L<perlfaq3>:
48Programming Tools, L<perlfaq4>: Data Manipulation, L<perlfaq5>: Files and
49Formats, L<perlfaq6>: Regexps, L<perlfaq7>: General Perl Language Issues,
50L<perlfaq8>: System Interaction, L<perlfaq9>: Networking
51
52=over
53
54=item Where to get this document
55
56=item How to contribute to this document
57
58=item What will happen if you mail your Perl programming problems to the
59authors
60
61=back
62
63=item Credits
64
65=item Author and Copyright Information
66
67=over
68
fb9cefb4 69=item Bundled Distributions
68dc0745
PP
70
71=item Disclaimer
72
73=back
74
75=item Changes
76
fc36a67e
PP
7724/April/97, 23/April/97, 25/March/97, 18/March/97, 17/March/97 Version,
78Initial Release: 11/March/97
68dc0745 79
fb9cefb4
GS
80=head2 perlfaq1 - General Questions About Perl ($Revision: 1.14 $, $Date:
811998/06/14 22:15:25 $)
68dc0745
PP
82
83=item DESCRIPTION
84
85=over
86
87=item What is Perl?
88
89=item Who supports Perl? Who develops it? Why is it free?
90
91=item Which version of Perl should I use?
92
93=item What are perl4 and perl5?
94
95=item How stable is Perl?
96
97=item Is Perl difficult to learn?
98
99=item How does Perl compare with other languages like Java, Python, REXX,
100Scheme, or Tcl?
101
102=item Can I do [task] in Perl?
103
104=item When shouldn't I program in Perl?
105
106=item What's the difference between "perl" and "Perl"?
107
108=item Is it a Perl program or a Perl script?
109
110=item What is a JAPH?
111
112=item Where can I get a list of Larry Wall witticisms?
113
114=item How can I convince my sysadmin/supervisor/employees to use version
115(5/5.004/Perl instead of some other language)?
116
117=back
118
119=item AUTHOR AND COPYRIGHT
120
fb9cefb4
GS
121=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.24 $,
122$Date: 1998/07/20 23:40:28 $)
68dc0745
PP
123
124=item DESCRIPTION
125
126=over
127
128=item What machines support Perl? Where do I get it?
129
130=item How can I get a binary version of Perl?
131
3fe9a6f1
PP
132=item I don't have a C compiler on my system. How can I compile perl?
133
68dc0745
PP
134=item I copied the Perl binary from one machine to another, but scripts
135don't work.
136
137=item I grabbed the sources and tried to compile but gdbm/dynamic
138loading/malloc/linking/... failed. How do I make it work?
139
193fb0af 140=item What modules and extensions are available for Perl? What is CPAN?
68dc0745
PP
141What does CPAN/src/... mean?
142
143=item Is there an ISO or ANSI certified version of Perl?
144
145=item Where can I get information on Perl?
146
147=item What are the Perl newsgroups on USENET? Where do I post questions?
148
149=item Where should I post source code?
150
151=item Perl Books
152
193fb0af
GS
153References, Tutorials
154*Learning Perl [2nd edition]
155by Randal L. Schwartz and Tom Christiansen, Task-Oriented, Special Topics
156
68dc0745
PP
157=item Perl in Magazines
158
159=item Perl on the Net: FTP and WWW Access
160
161=item What mailing lists are there for perl?
162
163MacPerl, Perl5-Porters, NTPerl, Perl-Packrats
164
165=item Archives of comp.lang.perl.misc
166
68dc0745
PP
167=item Where can I buy a commercial version of Perl?
168
169=item Where do I send bug reports?
170
171=item What is perl.com? perl.org? The Perl Institute?
172
173=item How do I learn about object-oriented Perl programming?
174
175=back
176
177=item AUTHOR AND COPYRIGHT
178
fb9cefb4
GS
179=head2 perlfaq3 - Programming Tools ($Revision: 1.28 $, $Date: 1998/07/16
18022:08:49 $)
68dc0745
PP
181
182=item DESCRIPTION
183
184=over
185
186=item How do I do (anything)?
187
188=item How can I use Perl interactively?
189
190=item Is there a Perl shell?
191
192=item How do I debug my Perl programs?
193
194=item How do I profile my Perl programs?
195
196=item How do I cross-reference my Perl programs?
197
198=item Is there a pretty-printer (formatter) for Perl?
199
200=item Is there a ctags for Perl?
201
202=item Where can I get Perl macros for vi?
203
204=item Where can I get perl-mode for emacs?
205
206=item How can I use curses with Perl?
207
208=item How can I use X or Tk with Perl?
209
210=item How can I generate simple menus without using CGI or Tk?
211
68dc0745
PP
212=item What is undump?
213
214=item How can I make my Perl program run faster?
215
216=item How can I make my Perl program take less memory?
217
218=item Is it unsafe to return a pointer to local data?
219
220=item How can I free an array or hash so my program shrinks?
221
222=item How can I make my CGI script more efficient?
223
224=item How can I hide the source for my Perl program?
225
54310121 226=item How can I compile my Perl program into byte code or C?
68dc0745 227
fb9cefb4 228=item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
68dc0745
PP
229
230=item Can I write useful perl programs on the command line?
231
46fc3d4c 232=item Why don't perl one-liners work on my DOS/Mac/VMS system?
68dc0745
PP
233
234=item Where can I learn about CGI or Web programming in Perl?
235
236=item Where can I learn about object-oriented Perl programming?
237
238=item Where can I learn about linking C with Perl? [h2xs, xsubpp]
239
240=item I've read perlembed, perlguts, etc., but I can't embed perl in
241my C program, what am I doing wrong?
242
243=item When I tried to run my script, I got this message. What does it
244mean?
245
246=item What's MakeMaker?
247
248=back
249
250=item AUTHOR AND COPYRIGHT
251
fb9cefb4
GS
252=head2 perlfaq4 - Data Manipulation ($Revision: 1.25 $, $Date: 1998/07/16
25322:49:55 $)
68dc0745
PP
254
255=item DESCRIPTION
256
257=item Data: Numbers
258
259=over
260
46fc3d4c
PP
261=item Why am I getting long decimals (eg, 19.9499999999999) instead of the
262numbers I should be getting (eg, 19.95)?
263
68dc0745
PP
264=item Why isn't my octal data interpreted correctly?
265
266=item Does perl have a round function? What about ceil() and floor()?
267Trig functions?
268
269=item How do I convert bits into ints?
270
271=item How do I multiply matrices?
272
273=item How do I perform an operation on a series of integers?
274
275=item How can I output Roman numerals?
276
277=item Why aren't my random numbers random?
278
279=back
280
281=item Data: Dates
282
283=over
284
285=item How do I find the week-of-the-year/day-of-the-year?
286
fb9cefb4 287=item How can I compare two dates and find the difference?
68dc0745
PP
288
289=item How can I take a string and turn it into epoch seconds?
290
291=item How can I find the Julian Day?
292
193fb0af 293=item Does Perl have a year 2000 problem? Is Perl Y2K compliant?
68dc0745
PP
294
295=back
296
297=item Data: Strings
298
299=over
300
301=item How do I validate input?
302
303=item How do I unescape a string?
304
305=item How do I remove consecutive pairs of characters?
306
307=item How do I expand function calls in a string?
308
309=item How do I find matching/nesting anything?
310
311=item How do I reverse a string?
312
313=item How do I expand tabs in a string?
314
315=item How do I reformat a paragraph?
316
317=item How can I access/change the first N letters of a string?
318
319=item How do I change the Nth occurrence of something?
320
321=item How can I count the number of occurrences of a substring within a
322string?
323
324=item How do I capitalize all the words on one line?
325
326=item How can I split a [character] delimited string except when inside
327[character]? (Comma-separated files)
328
329=item How do I strip blank space from the beginning/end of a string?
330
331=item How do I extract selected columns from a string?
332
333=item How do I find the soundex value of a string?
334
335=item How can I expand variables in text strings?
336
337=item What's wrong with always quoting "$vars"?
338
339=item Why don't my <<HERE documents work?
340
3411. There must be no space after the << part, 2. There (probably) should be
342a semicolon at the end, 3. You can't (easily) have any space in front of
343the tag
344
345=back
346
347=item Data: Arrays
348
349=over
350
351=item What is the difference between $array[1] and @array[1]?
352
353=item How can I extract just the unique elements of an array?
354
193fb0af
GS
355a) If @in is sorted, and you want @out to be sorted:(this assumes all true
356values in the array), b) If you don't know whether @in is sorted:, c) Like
357(b), but @in contains only small integers:, d) A way to do (b) without any
358loops or greps:, e) Like (d), but @in contains only small positive
359integers:
68dc0745 360
193fb0af 361=item How can I tell whether a list or array contains a certain element?
68dc0745
PP
362
363=item How do I compute the difference of two arrays? How do I compute the
364intersection of two arrays?
365
366=item How do I find the first array element for which a condition is true?
367
368=item How do I handle linked lists?
369
370=item How do I handle circular lists?
371
372=item How do I shuffle an array randomly?
373
374=item How do I process/modify each element of an array?
375
376=item How do I select a random element from an array?
377
378=item How do I permute N elements of a list?
379
380=item How do I sort an array by (anything)?
381
382=item How do I manipulate arrays of bits?
383
384=item Why does defined() return true on empty arrays and hashes?
385
386=back
387
388=item Data: Hashes (Associative Arrays)
389
390=over
391
392=item How do I process an entire hash?
393
394=item What happens if I add or remove keys from a hash while iterating over
395it?
396
397=item How do I look up a hash element by value?
398
399=item How can I know how many entries are in a hash?
400
401=item How do I sort a hash (optionally by value instead of key)?
402
403=item How can I always keep my hash sorted?
404
405=item What's the difference between "delete" and "undef" with hashes?
406
407=item Why don't my tied hashes make the defined/exists distinction?
408
409=item How do I reset an each() operation part-way through?
410
411=item How can I get the unique keys from two hashes?
412
413=item How can I store a multidimensional array in a DBM file?
414
415=item How can I make my hash remember the order I put elements into it?
416
417=item Why does passing a subroutine an undefined element in a hash create
418it?
419
fc36a67e
PP
420=item How can I make the Perl equivalent of a C structure/C++ class/hash or
421array of hashes or arrays?
68dc0745
PP
422
423=item How can I use a reference as a hash key?
424
425=back
426
427=item Data: Misc
428
429=over
430
431=item How do I handle binary data correctly?
432
433=item How do I determine whether a scalar is a number/whole/integer/float?
434
435=item How do I keep persistent data across program calls?
436
437=item How do I print out or copy a recursive data structure?
438
439=item How do I define methods for every class/object?
440
441=item How do I verify a credit card checksum?
442
443=back
444
445=item AUTHOR AND COPYRIGHT
446
fb9cefb4
GS
447=head2 perlfaq5 - Files and Formats ($Revision: 1.24 $, $Date: 1998/07/05
44815:07:20 $)
68dc0745
PP
449
450=item DESCRIPTION
451
452=over
453
193fb0af 454=item How do I flush/unbuffer an output filehandle? Why must I do this?
68dc0745
PP
455
456=item How do I change one line in a file/delete a line in a file/insert a
457line in the middle of a file/append to the beginning of a file?
458
459=item How do I count the number of lines in a file?
460
461=item How do I make a temporary file name?
462
463=item How can I manipulate fixed-record-length files?
464
465=item How can I make a filehandle local to a subroutine? How do I pass
466filehandles between subroutines? How do I make an array of filehandles?
467
193fb0af
GS
468=item How can I use a filehandle indirectly?
469
68dc0745
PP
470=item How can I set up a footer format to be used with write()?
471
472=item How can I write() into a string?
473
474=item How can I output my numbers with commas added?
475
476=item How can I translate tildes (~) in a filename?
477
193fb0af 478=item How come when I open a file read-write it wipes it out?
68dc0745
PP
479
480=item Why do I sometimes get an "Argument list too long" when I use <*>?
481
482=item Is there a leak/bug in glob()?
483
484=item How can I open a file with a leading "E<gt>" or trailing blanks?
485
486=item How can I reliably rename a file?
487
488=item How can I lock a file?
489
490=item What can't I just open(FH, ">file.lock")?
491
fc36a67e
PP
492=item I still don't get locking. I just want to increment the number in
493the file. How can I do this?
68dc0745
PP
494
495=item How do I randomly update a binary file?
496
497=item How do I get a file's timestamp in perl?
498
499=item How do I set a file's timestamp in perl?
500
501=item How do I print to more than one file at once?
502
503=item How can I read in a file by paragraphs?
504
505=item How can I read a single character from a file? From the keyboard?
506
507=item How can I tell if there's a character waiting on a filehandle?
508
68dc0745
PP
509=item How do I do a C<tail -f> in perl?
510
511=item How do I dup() a filehandle in Perl?
512
513=item How do I close a file descriptor by number?
514
46fc3d4c 515=item Why can't I use "C:\temp\foo" in DOS paths? What doesn't
68dc0745
PP
516`C:\temp\foo.exe` work?
517
518=item Why doesn't glob("*.*") get all the files?
519
520=item Why does Perl let me delete read-only files? Why does C<-i> clobber
521protected files? Isn't this a bug in Perl?
522
523=item How do I select a random line from a file?
524
525=back
526
527=item AUTHOR AND COPYRIGHT
528
fb9cefb4 529=head2 perlfaq6 - Regexps ($Revision: 1.22 $, $Date: 1998/07/16 14:01:07 $)
68dc0745
PP
530
531=item DESCRIPTION
532
533=over
534
535=item How can I hope to use regular expressions without creating illegible
54310121 536and unmaintainable code?
68dc0745
PP
537
538Comments Outside the Regexp, Comments Inside the Regexp, Different
539Delimiters
540
541=item I'm having trouble matching over more than one line. What's wrong?
542
543=item How can I pull out lines between two patterns that are themselves on
544different lines?
545
546=item I put a regular expression into $/ but it didn't work. What's wrong?
547
548=item How do I substitute case insensitively on the LHS, but preserving
549case on the RHS?
550
193fb0af 551=item How can I make C<\w> match national character sets?
68dc0745
PP
552
553=item How can I match a locale-smart version of C</[a-zA-Z]/>?
554
54310121 555=item How can I quote a variable to use in a regexp?
68dc0745
PP
556
557=item What is C</o> really for?
558
559=item How do I use a regular expression to strip C style comments from a
560file?
561
562=item Can I use Perl regular expressions to match balanced text?
563
564=item What does it mean that regexps are greedy? How can I get around it?
565
566=item How do I process each word on each line?
567
568=item How can I print out a word-frequency or line-frequency summary?
569
570=item How can I do approximate matching?
571
572=item How do I efficiently match many regular expressions at once?
573
574=item Why don't word-boundary searches with C<\b> work for me?
575
576=item Why does using $&, $`, or $' slow my program down?
577
578=item What good is C<\G> in a regular expression?
579
580=item Are Perl regexps DFAs or NFAs? Are they POSIX compliant?
581
582=item What's wrong with using grep or map in a void context?
583
54310121 584=item How can I match strings with multibyte characters?
68dc0745
PP
585
586=back
587
588=item AUTHOR AND COPYRIGHT
589
fb9cefb4
GS
590=head2 perlfaq7 - Perl Language Issues ($Revision: 1.21 $, $Date:
5911998/06/22 15:20:07 $)
68dc0745
PP
592
593=item DESCRIPTION
594
595=over
596
597=item Can I get a BNF/yacc/RE for the Perl language?
598
599=item What are all these $@%* punctuation signs, and how do I know when to
600use them?
601
602=item Do I always/never have to quote my strings or use semicolons and
603commas?
604
605=item How do I skip some return values?
606
607=item How do I temporarily block warnings?
608
609=item What's an extension?
610
611=item Why do Perl operators have different precedence than C operators?
612
613=item How do I declare/create a structure?
614
615=item How do I create a module?
616
617=item How do I create a class?
618
619=item How can I tell if a variable is tainted?
620
621=item What's a closure?
622
46fc3d4c
PP
623=item What is variable suicide and how can I prevent it?
624
68dc0745
PP
625=item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
626Regexp}?
627
628Passing Variables and Functions, Passing Filehandles, Passing Regexps,
629Passing Methods
630
631=item How do I create a static variable?
632
193fb0af 633=item What's the difference between dynamic and lexical (static) scoping?
68dc0745
PP
634Between local() and my()?
635
636=item How can I access a dynamic variable while a similarly named lexical
637is in scope?
638
639=item What's the difference between deep and shallow binding?
640
fb9cefb4 641=item Why doesn't "my($foo) = <FILE>;" work right?
68dc0745 642
54310121 643=item How do I redefine a builtin function, operator, or method?
68dc0745
PP
644
645=item What's the difference between calling a function as &foo and foo()?
646
647=item How do I create a switch or case statement?
648
649=item How can I catch accesses to undefined variables/functions/methods?
650
651=item Why can't a method included in this same file be found?
652
653=item How can I find out my current package?
654
46fc3d4c
PP
655=item How can I comment out a large block of perl code?
656
68dc0745
PP
657=back
658
659=item AUTHOR AND COPYRIGHT
660
fb9cefb4
GS
661=head2 perlfaq8 - System Interaction ($Revision: 1.25 $, $Date: 1998/07/05
66215:07:20 $)
68dc0745
PP
663
664=item DESCRIPTION
665
666=over
667
668=item How do I find out which operating system I'm running under?
669
670=item How come exec() doesn't return?
671
672=item How do I do fancy stuff with the keyboard/screen/mouse?
673
674Keyboard, Screen, Mouse
675
fb9cefb4
GS
676=item How do I print something out in color?
677
678=item How do I read just one key without waiting for a return key?
679
680=item How do I check whether input is ready on the keyboard?
681
682=item How do I clear the screen?
683
684=item How do I get the screen size?
685
68dc0745
PP
686=item How do I ask the user for a password?
687
688=item How do I read and write the serial port?
689
690lockfiles, open mode, end of line, flushing output, non-blocking input
691
692=item How do I decode encrypted password files?
693
694=item How do I start a process in the background?
695
fb9cefb4 696STDIN, STDOUT, and STDERR are shared, Signals, Zombies
68dc0745
PP
697
698=item How do I trap control characters/signals?
699
700=item How do I modify the shadow password file on a Unix system?
701
702=item How do I set the time and date?
703
704=item How can I sleep() or alarm() for under a second?
705
706=item How can I measure time under a second?
707
708=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
709
710=item Why doesn't my sockets program work under System V (Solaris)? What
711does the error message "Protocol not supported" mean?
712
713=item How can I call my system's unique C functions from Perl?
714
715=item Where do I get the include files to do ioctl() or syscall()?
716
717=item Why do setuid perl scripts complain about kernel problems?
718
719=item How can I open a pipe both to and from a command?
720
3fe9a6f1
PP
721=item Why can't I get the output of a command with system()?
722
68dc0745
PP
723=item How can I capture STDERR from an external command?
724
725=item Why doesn't open() return an error when a pipe open fails?
726
727=item What's wrong with using backticks in a void context?
728
729=item How can I call backticks without shell processing?
730
731=item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
54310121 732^Z on MS-DOS)?
68dc0745
PP
733
734=item How can I convert my shell script to perl?
735
736=item Can I use perl to run a telnet or ftp session?
737
738=item How can I write expect in Perl?
739
740=item Is there a way to hide perl's command line from programs such as
741"ps"?
742
743=item I {changed directory, modified my environment} in a perl script. How
744come the change disappeared when I exited the script? How do I get my
745changes to be visible?
746
fb9cefb4 747Unix
68dc0745
PP
748
749=item How do I close a process's filehandle without waiting for it to
750complete?
751
752=item How do I fork a daemon process?
753
754=item How do I make my program run with sh and csh?
755
68dc0745
PP
756=item How do I find out if I'm running interactively or not?
757
758=item How do I timeout a slow event?
759
760=item How do I set CPU limits?
761
762=item How do I avoid zombies on a Unix system?
763
764=item How do I use an SQL database?
765
766=item How do I make a system() exit on control-C?
767
768=item How do I open a file without blocking?
769
770=item How do I install a CPAN module?
771
fb9cefb4
GS
772=item What's the difference between require and use?
773
46fc3d4c
PP
774=item How do I keep my own module/library directory?
775
776=item How do I add the directory my program lives in to the module/library
777search path?
778
779=item How do I add a directory to my include path at runtime?
780
68dc0745
PP
781=back
782
fc36a67e
PP
783=item AUTHOR AND COPYRIGHT
784
fb9cefb4 785=head2 perlfaq9 - Networking ($Revision: 1.20 $, $Date: 1998/06/22 18:31:09
3fe9a6f1 786$)
68dc0745
PP
787
788=item DESCRIPTION
789
790=over
791
fb9cefb4
GS
792=item My CGI script runs from the command line but not the browser. (500
793Server Error)
794
795=item How can I get better error messages from a CGI program?
68dc0745
PP
796
797=item How do I remove HTML from a string?
798
799=item How do I extract URLs?
800
801=item How do I download a file from the user's machine? How do I open a
802file on another machine?
803
804=item How do I make a pop-up menu in HTML?
805
806=item How do I fetch an HTML file?
807
fb9cefb4
GS
808=item How do I automate an HTML form submission?
809
810=item How do I decode or create those %-encodings on the web?
68dc0745
PP
811
812=item How do I redirect to another page?
813
814=item How do I put a password on my web pages?
815
816=item How do I edit my .htpasswd and .htgroup files with Perl?
817
46fc3d4c
PP
818=item How do I make sure users can't enter values into a form that cause my
819CGI script to do bad things?
820
193fb0af 821=item How do I parse a mail header?
68dc0745
PP
822
823=item How do I decode a CGI form?
824
193fb0af 825=item How do I check a valid mail address?
68dc0745
PP
826
827=item How do I decode a MIME/BASE64 string?
828
193fb0af 829=item How do I return the user's mail address?
68dc0745 830
fb9cefb4
GS
831=item How do I send mail?
832
833=item How do I read mail?
68dc0745
PP
834
835=item How do I find out my hostname/domainname/IP address?
836
837=item How do I fetch a news article or the active newsgroups?
838
839=item How do I fetch/put an FTP file?
840
841=item How can I do RPC in Perl?
842
843=back
844
845=item AUTHOR AND COPYRIGHT
846
193fb0af 847=head2 perldelta - what's new for perl5.005
cb1a09d0 848
8ebc5c01 849=item DESCRIPTION
cb1a09d0 850
fb9cefb4
GS
851=item About the new versioning system
852
193fb0af 853=item Incompatible Changes
cb1a09d0 854
fb9cefb4
GS
855=over
856
857=item WARNING: This version is not binary compatible with Perl 5.004.
858
859=item Default installation structure has changed
860
861=item Perl Source Compatibility
862
863=item C Source Compatibility
864
9cde0e7f
GS
865Core sources now require ANSI C compiler, All Perl global variables must
866now be referenced with an explicit prefix, Enabling threads has source
fb9cefb4
GS
867compatibility issues
868
869=item Binary Compatibility
870
871=item Security fixes may affect compatibility
872
873=item Relaxed new mandatory warnings introduced in 5.004
874
875=item Licensing
876
877=back
878
8ebc5c01 879=item Core Changes
cb1a09d0 880
fb9cefb4
GS
881=over
882
883=item Threads
884
885=item Compiler
886
887=item Regular Expressions
888
9cde0e7f
GS
889Many new and improved optimizations, Many bug fixes, New regular expression
890constructs, New operator for precompiled regular expressions, Other
891improvements, Incompatible changes
892
fb9cefb4
GS
893=item Improved malloc()
894
895=item Quicksort is internally implemented
896
897=item Reliable signals
898
899=item Reliable stack pointers
900
637e9122
GS
901=item More generous treatment of carriage returns
902
903=item Memory leaks
904
905=item Better support for multiple interpreters
906
fb9cefb4
GS
907=item Behavior of local() on array and hash elements is now well-defined
908
909=item C<%!> is transparently tied to the L<Errno> module
910
911=item Pseudo-hashes are supported
912
913=item C<EXPR foreach EXPR> is supported
914
915=item Keywords can be globally overridden
916
917=item C<$^E> is meaningful on Win32
918
919=item C<foreach (1..1000000)> optimized
920
921=item C<Foo::> can be used as implicitly quoted package name
922
923=item C<exists $Foo::{Bar::}> tests existence of a package
924
925=item Better locale support
926
927=item Experimental support for 64-bit platforms
928
929=item prototype() returns useful results on builtins
930
931=item Extended support for exception handling
932
933=item Re-blessing in DESTROY() supported for chaining DESTROY() methods
934
935=item All C<printf> format conversions are handled internally
936
937=item New C<INIT> keyword
938
939=item New C<lock> keyword
940
941=item New C<qr//> operator
942
943=item C<our> is now a reserved word
944
945=item Tied arrays are now fully supported
946
947=item Tied handles support is better
948
949=item 4th argument to substr
950
951=item Negative LENGTH argument to splice
952
953=item Magic lvalues are now more magical
954
955=item E<lt>E<gt> now reads in records
956
957=back
958
959=item Supported Platforms
960
961=over
962
963=item New Platforms
964
965=item Changes in existing support
966
967=back
968
969=item Modules and Pragmata
cb1a09d0 970
8ebc5c01
PP
971=over
972
fb9cefb4
GS
973=item New Modules
974
975B, Data::Dumper, Errno, File::Spec, ExtUtils::Installed,
976ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle,
977Thread, attrs, fields, re
978
979=item Changes in existing modules
980
981CGI, POSIX, DB_File, MakeMaker, CPAN, Cwd, Benchmark
5cd24f17 982
cb1a09d0
AD
983=back
984
774d564b
PP
985=item Utility Changes
986
8ebc5c01 987=item Documentation Changes
cb1a09d0 988
fb9cefb4
GS
989=item New Diagnostics
990
991Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index
992while coercing array into hash, Bareword "%s" refers to nonexistent
993package, Can't call method "%s" on an undefined value, Can't coerce array
994into hash, Can't goto subroutine from an eval-string, Can't localize
995pseudo-hash element, Can't use %%! because Errno.pm is not available,
996Cannot find an opnumber for "%s", Character class syntax [. .] is reserved
997for future extensions, Character class syntax [: :] is reserved for future
998extensions, Character class syntax [= =] is reserved for future extensions,
999%s: Eval-group in insecure regular expression, %s: Eval-group not allowed,
1000use re 'eval', %s: Eval-group not allowed at run time, Explicit blessing to
1001'' (assuming package main), Illegal hex digit ignored, No such array field,
1002No such field "%s" in variable %s of type %s, Out of memory during
1003ridiculously large request, Range iterator outside integer range, Recursive
1004inheritance detected while looking for method '%s' in package '%s',
1005Reference found where even-sized list expected, Undefined value assigned to
1006typeglob, Use of reserved word "%s" is deprecated, perl: warning: Setting
1007locale failed
1008
1009=item Obsolete Diagnostics
1010
1011Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open
1012temporary file
1013
8ebc5c01 1014=item BUGS
cb1a09d0 1015
8ebc5c01 1016=item SEE ALSO
cb1a09d0 1017
8ebc5c01 1018=item HISTORY
cb1a09d0 1019
8ebc5c01 1020=head2 perldata - Perl data types
cb1a09d0 1021
8ebc5c01 1022=item DESCRIPTION
cb1a09d0 1023
8ebc5c01 1024=over
cb1a09d0 1025
8ebc5c01 1026=item Variable names
cb1a09d0 1027
8ebc5c01 1028=item Context
cb1a09d0 1029
8ebc5c01 1030=item Scalar values
cb1a09d0 1031
8ebc5c01 1032=item Scalar value constructors
cb1a09d0 1033
8ebc5c01 1034=item List value constructors
cb1a09d0 1035
8ebc5c01 1036=item Typeglobs and Filehandles
cb1a09d0 1037
8ebc5c01 1038=back
cb1a09d0 1039
8ebc5c01 1040=head2 perlsyn - Perl syntax
cb1a09d0 1041
8ebc5c01 1042=item DESCRIPTION
cb1a09d0 1043
8ebc5c01 1044=over
cb1a09d0 1045
8ebc5c01 1046=item Declarations
cb1a09d0 1047
8ebc5c01 1048=item Simple statements
cb1a09d0 1049
8ebc5c01 1050=item Compound statements
cb1a09d0 1051
8ebc5c01 1052=item Loop Control
cb1a09d0 1053
8ebc5c01 1054=item For Loops
cb1a09d0 1055
8ebc5c01 1056=item Foreach Loops
cb1a09d0 1057
8ebc5c01 1058=item Basic BLOCKs and Switch Statements
cb1a09d0 1059
8ebc5c01 1060=item Goto
cb1a09d0 1061
8ebc5c01 1062=item PODs: Embedded Documentation
cb1a09d0 1063
774d564b
PP
1064=item Plain Old Comments (Not!)
1065
8ebc5c01 1066=back
cb1a09d0
AD
1067
1068=head2 perlop - Perl operators and precedence
1069
1070=item SYNOPSIS
1071
cb1a09d0
AD
1072=item DESCRIPTION
1073
cb1a09d0
AD
1074=over
1075
1076=item Terms and List Operators (Leftward)
1077
cb1a09d0
AD
1078=item The Arrow Operator
1079
5f05dabc 1080=item Auto-increment and Auto-decrement
cb1a09d0 1081
cb1a09d0
AD
1082=item Exponentiation
1083
cb1a09d0
AD
1084=item Symbolic Unary Operators
1085
cb1a09d0
AD
1086=item Binding Operators
1087
cb1a09d0
AD
1088=item Multiplicative Operators
1089
cb1a09d0
AD
1090=item Additive Operators
1091
cb1a09d0
AD
1092=item Shift Operators
1093
cb1a09d0
AD
1094=item Named Unary Operators
1095
cb1a09d0
AD
1096=item Relational Operators
1097
cb1a09d0
AD
1098=item Equality Operators
1099
cb1a09d0
AD
1100=item Bitwise And
1101
cb1a09d0
AD
1102=item Bitwise Or and Exclusive Or
1103
cb1a09d0
AD
1104=item C-style Logical And
1105
cb1a09d0
AD
1106=item C-style Logical Or
1107
193fb0af 1108=item Range Operators
cb1a09d0 1109
cb1a09d0
AD
1110=item Conditional Operator
1111
cb1a09d0
AD
1112=item Assignment Operators
1113
cb1a09d0
AD
1114=item Comma Operator
1115
cb1a09d0
AD
1116=item List Operators (Rightward)
1117
cb1a09d0
AD
1118=item Logical Not
1119
cb1a09d0
AD
1120=item Logical And
1121
cb1a09d0
AD
1122=item Logical or and Exclusive Or
1123
cb1a09d0
AD
1124=item C Operators Missing From Perl
1125
cb1a09d0
AD
1126unary &, unary *, (TYPE)
1127
5f05dabc 1128=item Quote and Quote-like Operators
cb1a09d0 1129
8ebc5c01 1130=item Regexp Quote-Like Operators
cb1a09d0 1131
d516a115 1132?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
fb9cefb4 1133qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
cb1a09d0
AD
1134s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
1135y/SEARCHLIST/REPLACEMENTLIST/cds
1136
fb9cefb4
GS
1137=item Gory details of parsing quoted constructs
1138
1139Finding the end, Removal of backslashes before delimiters, Interpolation,
1140C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1141C<``>, C<qq//>, C<qx//>, C<<file*globE<gt>>, C<?RE?>, C</RE/>, C<m/RE/>,
1142C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1143regular expressions
1144
cb1a09d0
AD
1145=item I/O Operators
1146
cb1a09d0
AD
1147=item Constant Folding
1148
193fb0af
GS
1149=item Bitwise String Operators
1150
55497cff 1151=item Integer Arithmetic
cb1a09d0 1152
68dc0745
PP
1153=item Floating-point Arithmetic
1154
193fb0af
GS
1155=item Bigger Numbers
1156
cb1a09d0
AD
1157=back
1158
cb1a09d0
AD
1159=head2 perlre - Perl regular expressions
1160
1161=item DESCRIPTION
1162
55497cff
PP
1163i, m, s, x
1164
cb1a09d0
AD
1165=over
1166
1167=item Regular Expressions
1168
fb9cefb4
GS
1169C<(?#text)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>, C<(?=pattern)>,
1170C<(?!pattern)>, C<(?E<lt>=pattern)>, C<(?<!pattern)>, C<(?{ code })>,
1171C<(?E<gt>pattern)>, C<(?(condition)yes-pattern|no-pattern)>,
1172C<(?(condition)yes-pattern)>, C<(?imsx-imsx)>
cb1a09d0 1173
7d2bfb28
PP
1174=item Backtracking
1175
cb1a09d0
AD
1176=item Version 8 Regular Expressions
1177
cb1a09d0
AD
1178=item WARNING on \1 vs $1
1179
fb9cefb4
GS
1180=item Repeated patterns matching zero-length substring
1181
1182=item Creating custom RE engines
1183
7bac28a0
PP
1184=item SEE ALSO
1185
cb1a09d0
AD
1186=back
1187
cb1a09d0
AD
1188=head2 perlrun - how to execute the Perl interpreter
1189
1190=item SYNOPSIS
1191
cb1a09d0
AD
1192=item DESCRIPTION
1193
cb1a09d0
AD
1194=over
1195
68dc0745
PP
1196=item #! and quoting on non-Unix systems
1197
54310121 1198OS/2, MS-DOS, Win95/NT, Macintosh
68dc0745 1199
193fb0af
GS
1200=item Location of Perl
1201
cb1a09d0
AD
1202=item Switches
1203
d516a115
JH
1204B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<letters>,
1205B<-D>I<number>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
8ebc5c01
PP
1206B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
1207B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
1208B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
1209B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
cb1a09d0
AD
1210
1211=back
1212
1e422769
PP
1213=item ENVIRONMENT
1214
3e3baf6d
TB
1215HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLLIB, PERL5DB, PERL5SHELL
1216(specific to WIN32 port), PERL_DEBUG_MSTATS, PERL_DESTRUCT_LEVEL
1e422769 1217
cb1a09d0
AD
1218=head2 perlfunc - Perl builtin functions
1219
1220=item DESCRIPTION
1221
cb1a09d0
AD
1222=over
1223
1224=item Perl Functions by Category
1225
8ebc5c01
PP
1226Functions for SCALARs or strings, Regular expressions and pattern matching,
1227Numeric functions, Functions for real @ARRAYs, Functions for list data,
1228Functions for real %HASHes, Input and output functions, Functions for fixed
1229length data or records, Functions for filehandles, files, or directories,
1230Keywords related to the control flow of your perl program, Keywords related
1231to scoping, Miscellaneous functions, Functions for processes and process
1232groups, Keywords related to perl modules, Keywords related to classes and
1233object-orientedness, Low-level socket functions, System V interprocess
1234communication functions, Fetching user and group info, Fetching network
1235info, Time-related functions, Functions new in perl5, Functions obsoleted
1236in perl5
cb1a09d0
AD
1237
1238=item Alphabetical Listing of Perl Functions
1239
d516a115 1240I<-X> FILEHANDLE, I<-X> EXPR, I<-X>, abs VALUE, abs, accept
8ebc5c01
PP
1241NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1242binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
1243chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
1244chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
fb9cefb4
GS
1245close FILEHANDLE, close, closedir DIRHANDLE, connect SOCKET,NAME, continue
1246BLOCK, cos EXPR, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
1247HASH,DBNAME,MODE, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
1248do SUBROUTINE(LIST), do EXPR, dump LABEL, each HASH, eof FILEHANDLE, eof
1249(), eof, eval EXPR, eval BLOCK, exec LIST, exec PROGRAM LIST, exists EXPR,
1250exit EXPR, exp EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno
1251FILEHANDLE, flock FILEHANDLE,OPERATION, fork, format, formline
1252PICTURE,LIST, getc FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp
1253PID, getppid, getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME,
1254gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID,
1255getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE,
1256getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport
1257PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent,
1258getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN,
1259setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent,
1260endnetent, endprotoent, endservent, getsockname SOCKET, getsockopt
193fb0af
GS
1261SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL, goto EXPR,
1262goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
1263STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1264FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill LIST, last
1265LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length, link
1266OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR, log
1267EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST, map
1268EXPR,LIST, mkdir FILENAME,MODE, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
1269ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL, next, no
1270Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE, opendir
1271DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package, package
1272NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos,
1273print FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST,
1274printf FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/,
fb9cefb4
GS
1275qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta,
1276rand EXPR, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read
1277FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE, readline EXPR, readlink EXPR,
1278readlink, readpipe EXPR, recv SOCKET,SCALAR,LEN,FLAGS, redo LABEL, redo,
1279ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require, reset EXPR,
1280reset, return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1281STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1282EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1283FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1284ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
1285SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1286WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1287shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1288shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1289EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
8ebc5c01
PP
1290SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1291sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1292splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
1293split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
b971f6e4 1294srand, stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK,
193fb0af
GS
1295sub NAME, sub NAME BLOCK, substr EXPR,OFFSET,LEN,REPLACEMENT, substr
1296EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall LIST,
1297sysopen FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS,
1298sysread FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH,
1299sysseek FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST,
1300syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite
1301FILEHANDLE,SCALAR,LENGTH, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
1302VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
1303FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
1304ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
1305TEMPLATE,EXPR, untie VARIABLE, unshift ARRAY,LIST, use Module LIST, use
1306Module, use Module VERSION LIST, use VERSION, utime LIST, values HASH, vec
1307EXPR,OFFSET,BITS, wait, waitpid PID,FLAGS, wantarray, warn LIST, write
1308FILEHANDLE, write EXPR, write, y///
cb1a09d0
AD
1309
1310=back
1311
cb1a09d0
AD
1312=head2 perlvar - Perl predefined variables
1313
1314=item DESCRIPTION
1315
cb1a09d0
AD
1316=over
1317
1318=item Predefined Names
1319
193fb0af 1320$ARG, $_, $E<lt>I<digits>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
8ebc5c01
PP
1321$LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE
1322EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR,
1323$INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH,
1324$|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
1325output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\,
1326$LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
1327format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%,
1328format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=,
1329format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE
1330EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
1331format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
1332$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
ff0cee69
PP
1333$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
1334$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
1335$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
1336$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
d516a115 1337$DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $^M,
fb9cefb4 1338$OSNAME, $^O, $PERLDB, $^P, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, $^R, $^S,
d516a115 1339$BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X, $ARGV, @ARGV, @INC,
193fb0af 1340@_, %INC, %ENV $ENV{expr}, %SIG $SIG{expr}
cb1a09d0 1341
fb9cefb4
GS
1342=item Error Indicators
1343
cb1a09d0
AD
1344=back
1345
cb1a09d0
AD
1346=head2 perlsub - Perl subroutines
1347
1348=item SYNOPSIS
1349
cb1a09d0
AD
1350=item DESCRIPTION
1351
cb1a09d0
AD
1352=over
1353
fb9cefb4 1354=item Private Variables via C<my()>
cb1a09d0 1355
c2611fb3 1356=item Persistent Private Variables
193fb0af 1357
cb1a09d0
AD
1358=item Temporary Values via local()
1359
cb1a09d0
AD
1360=item Passing Symbol Table Entries (typeglobs)
1361
193fb0af
GS
1362=item When to Still Use local()
1363
fb9cefb4
GS
13641. You need to give a global variable a temporary value, especially C<$_>,
13652. You need to create a local file or directory handle or a local function,
13663. You want to temporarily change just one element of an array or hash
193fb0af 1367
cb1a09d0
AD
1368=item Pass by Reference
1369
cb1a09d0
AD
1370=item Prototypes
1371
44a8e56a
PP
1372=item Constant Functions
1373
cb1a09d0
AD
1374=item Overriding Builtin Functions
1375
cb1a09d0
AD
1376=item Autoloading
1377
cb1a09d0
AD
1378=back
1379
1380=item SEE ALSO
1381
c635e13b 1382=head2 perlmod - Perl modules (packages and symbol tables)
cb1a09d0
AD
1383
1384=item DESCRIPTION
1385
cb1a09d0
AD
1386=over
1387
1388=item Packages
1389
cb1a09d0
AD
1390=item Symbol Tables
1391
cb1a09d0
AD
1392=item Package Constructors and Destructors
1393
cb1a09d0
AD
1394=item Perl Classes
1395
cb1a09d0
AD
1396=item Perl Modules
1397
cb1a09d0
AD
1398=back
1399
c635e13b
PP
1400=item SEE ALSO
1401
1402=head2 perlmodlib - constructing new Perl modules and finding existing ones
1403
1404=item DESCRIPTION
cb1a09d0 1405
cb1a09d0
AD
1406=item THE PERL MODULE LIBRARY
1407
cb1a09d0
AD
1408=over
1409
1410=item Pragmatic Modules
1411
c635e13b 1412use autouse MODULE => qw(sub1 sub2 sub3), blib, diagnostics, integer, less,
fb9cefb4 1413lib, locale, ops, overload, re, sigtrap, strict, subs, vmsish, vars
cb1a09d0
AD
1414
1415=item Standard Modules
1416
8ebc5c01 1417AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime,
8cc95fdb 1418CPAN::Nox, Carp, Class::Struct, Config, Cwd, DB_File, Devel::SelfStubber,
8ebc5c01
PP
1419DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed,
1420ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix,
1421ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest,
d516a115
JH
1422ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal,
1423Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy,
1424File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin,
1425GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File,
1426IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2,
1427IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, Math::Trig,
1428NDBM_File, Net::Ping, Net::hostent, Net::netent, Net::protoent,
1429Net::servent, Opcode, Pod::Text, POSIX, SDBM_File, Safe, Search::Dict,
1430SelectSaver, SelfLoader, Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog,
1431Term::Cap, Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev,
878e08df
PP
1432Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash,
1433Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime,
1434Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent
cb1a09d0
AD
1435
1436=item Extension Modules
1437
cb1a09d0
AD
1438=back
1439
1440=item CPAN
1441
8ebc5c01
PP
1442Language Extensions and Documentation Tools, Development Support, Operating
1443System Interfaces, Networking, Device Control (modems) and InterProcess
1444Communication, Data Types and Data Type Utilities, Database Interfaces,
1445User Interfaces, Interfaces to / Emulations of Other Programming Languages,
1446File Names, File Systems and File Locking (see also File Handles), String
1447Processing, Language Text Processing, Parsing, and Searching, Option,
1448Argument, Parameter, and Configuration File Processing,
1449Internationalization and Locale, Authentication, Security, and Encryption,
1450World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
1451Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
1452and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
1453exceptions etc), File Handle and Input/Output Stream Utilities,
9607fc9c
PP
1454Miscellaneous Modules, Africa, Asia, Australasia, Europe, North America,
1455South America
8ebc5c01
PP
1456
1457=item Modules: Creation, Use, and Abuse
cb1a09d0
AD
1458
1459=over
1460
1461=item Guidelines for Module Creation
1462
cb1a09d0 1463Do similar modules already exist in some form?, Try to design the new
8ebc5c01
PP
1464module to be easy to extend and reuse, Some simple style guidelines, Select
1465what to export, Select a name for the module, Have you got it right?,
1466README and other Additional Files, A description of the
1467module/package/extension etc, A copyright notice - see below, Prerequisites
1468- what else you may need to have, How to build it - possible changes to
1469Makefile.PL etc, How to install it, Recent changes in this release,
1470especially incompatibilities, Changes / enhancements you plan to make in
1471the future, Adding a Copyright Notice, Give the module a
1472version/issue/release number, How to release and distribute a module, Take
1473care when changing a released module
cb1a09d0
AD
1474
1475=item Guidelines for Converting Perl 4 Library Scripts into Modules
1476
cb1a09d0 1477There is no requirement to convert anything, Consider the implications,
8ebc5c01
PP
1478Make the most of the opportunity, The pl2pm utility will get you started,
1479Adds the standard Module prologue lines, Converts package specifiers from '
1480to ::, Converts die(...) to croak(...), Several other minor changes
cb1a09d0
AD
1481
1482=item Guidelines for Reusing Application Code
1483
cb1a09d0 1484Complete applications rarely belong in the Perl Module Library, Many
193fb0af 1485applications contain some Perl code that could be reused, Break-out the
8ebc5c01
PP
1486reusable code into one or more separate module files, Take the opportunity
1487to reconsider and redesign the interfaces, In some cases the 'application'
1488can then be reduced to a small
cb1a09d0
AD
1489
1490=back
1491
c635e13b
PP
1492=item NOTE
1493
fb9cefb4
GS
1494=head2 perlmodinstall - Installing CPAN Modules
1495
1496=item DESCRIPTION
1497
1498=over
1499
1500=item PREAMBLE
1501
637e9122
GS
1502B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the
1503module (sometimes unnecessary), B<INSTALL> the module
fb9cefb4
GS
1504
1505=back
1506
1507=item HEY
1508
1509=item AUTHOR
1510
1511=item COPYRIGHT
1512
8ebc5c01 1513=head2 perlform - Perl formats
cb1a09d0
AD
1514
1515=item DESCRIPTION
1516
cb1a09d0
AD
1517=over
1518
8ebc5c01 1519=item Format Variables
cb1a09d0 1520
8ebc5c01 1521=back
cb1a09d0 1522
8ebc5c01 1523=item NOTES
cb1a09d0 1524
8ebc5c01 1525=over
cb1a09d0 1526
8ebc5c01 1527=item Footers
cb1a09d0 1528
8ebc5c01 1529=item Accessing Formatting Internals
cb1a09d0
AD
1530
1531=back
1532
8ebc5c01 1533=item WARNINGS
cb1a09d0 1534
8ebc5c01
PP
1535=head2 perllocale - Perl locale handling (internationalization and
1536localization)
cb1a09d0 1537
8ebc5c01 1538=item DESCRIPTION
cb1a09d0 1539
8ebc5c01 1540=item PREPARING TO USE LOCALES
cb1a09d0 1541
8ebc5c01 1542=item USING LOCALES
cb1a09d0 1543
8ebc5c01 1544=over
cb1a09d0 1545
8ebc5c01 1546=item The use locale pragma
cb1a09d0 1547
8ebc5c01 1548=item The setlocale function
cb1a09d0 1549
193fb0af
GS
1550=item Finding locales
1551
1552=item LOCALE PROBLEMS
1553
1554=item Temporarily fixing locale problems
1555
1556=item Permanently fixing locale problems
1557
1558=item Permanently fixing your locale configuration
1559
1560=item Permanently fixing system locale configuration
1561
8ebc5c01 1562=item The localeconv function
cb1a09d0 1563
8ebc5c01 1564=back
cb1a09d0 1565
8ebc5c01 1566=item LOCALE CATEGORIES
cb1a09d0 1567
8ebc5c01 1568=over
cb1a09d0 1569
8ebc5c01 1570=item Category LC_COLLATE: Collation
cb1a09d0 1571
8ebc5c01 1572=item Category LC_CTYPE: Character Types
cb1a09d0 1573
8ebc5c01 1574=item Category LC_NUMERIC: Numeric Formatting
cb1a09d0 1575
8ebc5c01 1576=item Category LC_MONETARY: Formatting of monetary amounts
cb1a09d0 1577
8ebc5c01 1578=item LC_TIME
cb1a09d0 1579
8ebc5c01 1580=item Other categories
cb1a09d0 1581
8ebc5c01 1582=back
cb1a09d0 1583
8ebc5c01 1584=item SECURITY
cb1a09d0 1585
8ebc5c01 1586B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
193fb0af 1587B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or C<\U>),
8ebc5c01
PP
1588B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
1589B<In-memory formatting function> (sprintf()):, B<Output formatting
1590functions> (printf() and write()):, B<Case-mapping functions> (lc(),
1591lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
1592(localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
1593tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
1594ispunct(), isspace(), isupper(),
1595isxdigit()):
cb1a09d0 1596
8ebc5c01 1597=item ENVIRONMENT
cb1a09d0 1598
8ebc5c01
PP
1599PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC,
1600LC_TIME, LANG
cb1a09d0 1601
8ebc5c01 1602=item NOTES
cb1a09d0
AD
1603
1604=over
1605
8ebc5c01 1606=item Backward compatibility
cb1a09d0 1607
8ebc5c01 1608=item I18N:Collate obsolete
cb1a09d0 1609
8ebc5c01 1610=item Sort speed and memory use impacts
cb1a09d0 1611
8ebc5c01 1612=item write() and LC_NUMERIC
cb1a09d0 1613
8ebc5c01 1614=item Freely available locale definitions
cb1a09d0 1615
8ebc5c01 1616=item I18n and l10n
cb1a09d0 1617
8ebc5c01 1618=item An imperfect standard
cb1a09d0
AD
1619
1620=back
1621
8ebc5c01 1622=item BUGS
cb1a09d0
AD
1623
1624=over
1625
8ebc5c01 1626=item Broken systems
cb1a09d0 1627
8ebc5c01 1628=back
cb1a09d0 1629
8ebc5c01 1630=item SEE ALSO
cb1a09d0 1631
8ebc5c01 1632=item HISTORY
cb1a09d0 1633
8ebc5c01 1634=head2 perlref - Perl references and nested data structures
cb1a09d0 1635
8ebc5c01 1636=item DESCRIPTION
cb1a09d0 1637
8ebc5c01 1638=over
cb1a09d0 1639
193fb0af
GS
1640=item Making References
1641
1642=item Using References
1643
8ebc5c01 1644=item Symbolic references
cb1a09d0 1645
8ebc5c01 1646=item Not-so-symbolic references
cb1a09d0 1647
fb9cefb4
GS
1648=item Pseudo-hashes: Using an array as a hash
1649
193fb0af
GS
1650=item Function Templates
1651
8ebc5c01 1652=back
cb1a09d0 1653
8ebc5c01 1654=item WARNING
cb1a09d0 1655
8ebc5c01 1656=item SEE ALSO
cb1a09d0 1657
8ebc5c01 1658=head2 perldsc - Perl Data Structures Cookbook
cb1a09d0 1659
8ebc5c01 1660=item DESCRIPTION
cb1a09d0 1661
8ebc5c01 1662arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
28757baa 1663more elaborate constructs
cb1a09d0 1664
8ebc5c01 1665=item REFERENCES
cb1a09d0 1666
8ebc5c01 1667=item COMMON MISTAKES
cb1a09d0 1668
8ebc5c01 1669=item CAVEAT ON PRECEDENCE
cb1a09d0 1670
8ebc5c01 1671=item WHY YOU SHOULD ALWAYS C<use strict>
cb1a09d0 1672
8ebc5c01 1673=item DEBUGGING
cb1a09d0 1674
8ebc5c01 1675=item CODE EXAMPLES
cb1a09d0 1676
8ebc5c01 1677=item LISTS OF LISTS
cb1a09d0
AD
1678
1679=over
1680
8ebc5c01 1681=item Declaration of a LIST OF LISTS
cb1a09d0 1682
8ebc5c01 1683=item Generation of a LIST OF LISTS
cb1a09d0 1684
8ebc5c01 1685=item Access and Printing of a LIST OF LISTS
cb1a09d0 1686
8ebc5c01 1687=back
cb1a09d0 1688
8ebc5c01
PP
1689=item HASHES OF LISTS
1690
1691=over
cb1a09d0 1692
8ebc5c01 1693=item Declaration of a HASH OF LISTS
cb1a09d0 1694
8ebc5c01 1695=item Generation of a HASH OF LISTS
cb1a09d0 1696
8ebc5c01 1697=item Access and Printing of a HASH OF LISTS
cb1a09d0
AD
1698
1699=back
1700
8ebc5c01 1701=item LISTS OF HASHES
cb1a09d0
AD
1702
1703=over
1704
8ebc5c01 1705=item Declaration of a LIST OF HASHES
cb1a09d0 1706
8ebc5c01 1707=item Generation of a LIST OF HASHES
cb1a09d0 1708
8ebc5c01 1709=item Access and Printing of a LIST OF HASHES
cb1a09d0 1710
8ebc5c01 1711=back
cb1a09d0 1712
8ebc5c01
PP
1713=item HASHES OF HASHES
1714
1715=over
cb1a09d0 1716
8ebc5c01 1717=item Declaration of a HASH OF HASHES
cb1a09d0 1718
8ebc5c01 1719=item Generation of a HASH OF HASHES
cb1a09d0 1720
8ebc5c01 1721=item Access and Printing of a HASH OF HASHES
cb1a09d0
AD
1722
1723=back
1724
8ebc5c01 1725=item MORE ELABORATE RECORDS
7d2bfb28 1726
8ebc5c01 1727=over
7d2bfb28 1728
8ebc5c01 1729=item Declaration of MORE ELABORATE RECORDS
cb1a09d0 1730
8ebc5c01 1731=item Declaration of a HASH OF COMPLEX RECORDS
cb1a09d0 1732
8ebc5c01 1733=item Generation of a HASH OF COMPLEX RECORDS
cb1a09d0 1734
8ebc5c01 1735=back
cb1a09d0 1736
8ebc5c01 1737=item Database Ties
cb1a09d0 1738
8ebc5c01 1739=item SEE ALSO
cb1a09d0 1740
8ebc5c01 1741=item AUTHOR
cb1a09d0
AD
1742
1743=head2 perllol, perlLoL - Manipulating Lists of Lists in Perl
1744
1745=item DESCRIPTION
1746
cb1a09d0
AD
1747=item Declaration and Access of Lists of Lists
1748
cb1a09d0
AD
1749=item Growing Your Own
1750
cb1a09d0
AD
1751=item Access and Printing
1752
cb1a09d0
AD
1753=item Slices
1754
cb1a09d0
AD
1755=item SEE ALSO
1756
cb1a09d0
AD
1757=item AUTHOR
1758
8ebc5c01 1759=head2 perltoot - Tom's object-oriented tutorial for perl
cb1a09d0 1760
8ebc5c01 1761=item DESCRIPTION
cb1a09d0 1762
8ebc5c01 1763=item Creating a Class
cb1a09d0 1764
8ebc5c01 1765=over
cb1a09d0 1766
8ebc5c01 1767=item Object Representation
cb1a09d0 1768
8ebc5c01
PP
1769=item Class Interface
1770
1771=item Constructors and Instance Methods
1772
1773=item Planning for the Future: Better Constructors
1774
1775=item Destructors
cb1a09d0 1776
8ebc5c01
PP
1777=item Other Object Methods
1778
1779=back
1780
1781=item Class Data
cb1a09d0
AD
1782
1783=over
1784
8ebc5c01 1785=item Accessing Class Data
cb1a09d0 1786
8ebc5c01 1787=item Debugging Methods
cb1a09d0 1788
8ebc5c01 1789=item Class Destructors
cb1a09d0 1790
8ebc5c01 1791=item Documenting the Interface
cb1a09d0 1792
8ebc5c01 1793=back
cb1a09d0 1794
8ebc5c01 1795=item Aggregation
cb1a09d0 1796
8ebc5c01 1797=item Inheritance
cb1a09d0 1798
8ebc5c01 1799=over
cb1a09d0 1800
8ebc5c01 1801=item Overridden Methods
55497cff 1802
8ebc5c01 1803=item Multiple Inheritance
55497cff 1804
8ebc5c01 1805=item UNIVERSAL: The Root of All Objects
55497cff 1806
8ebc5c01 1807=back
cb1a09d0 1808
8ebc5c01 1809=item Alternate Object Representations
cb1a09d0 1810
8ebc5c01 1811=over
cb1a09d0 1812
8ebc5c01 1813=item Arrays as Objects
cb1a09d0 1814
8ebc5c01
PP
1815=item Closures as Objects
1816
1817=back
cb1a09d0 1818
8ebc5c01 1819=item AUTOLOAD: Proxy Methods
cb1a09d0 1820
8ebc5c01
PP
1821=over
1822
1823=item Autoloaded Data Methods
1824
1825=item Inherited Autoloaded Data Methods
1826
1827=back
1828
1829=item Metaclassical Tools
cb1a09d0 1830
8ebc5c01
PP
1831=over
1832
8cc95fdb 1833=item Class::Struct
cb1a09d0 1834
8ebc5c01
PP
1835=item Data Members as Variables
1836
1837=item NOTES
cb1a09d0 1838
8ebc5c01 1839=item Object Terminology
cb1a09d0
AD
1840
1841=back
1842
1843=item SEE ALSO
1844
193fb0af
GS
1845=item AUTHOR AND COPYRIGHT
1846
8ebc5c01
PP
1847=item COPYRIGHT
1848
1849=over
1850
1851=item Acknowledgments
1852
1853=back
1854
1855=head2 perlobj - Perl objects
1856
1857=item DESCRIPTION
1858
1859=over
1860
1861=item An Object is Simply a Reference
1862
1863=item A Class is Simply a Package
1864
1865=item A Method is Simply a Subroutine
1866
1867=item Method Invocation
1868
1869=item Default UNIVERSAL methods
1870
ff0cee69 1871isa(CLASS), can(METHOD), VERSION( [NEED] )
8ebc5c01 1872
54310121 1873=item Destructors
8ebc5c01
PP
1874
1875=item WARNING
1876
1877=item Summary
cb1a09d0 1878
8ebc5c01 1879=item Two-Phased Garbage Collection
cb1a09d0 1880
8ebc5c01 1881=back
cb1a09d0 1882
8ebc5c01 1883=item SEE ALSO
cb1a09d0
AD
1884
1885=head2 perltie - how to hide an object class in a simple variable
1886
1887=item SYNOPSIS
1888
cb1a09d0
AD
1889=item DESCRIPTION
1890
cb1a09d0
AD
1891=over
1892
1893=item Tying Scalars
1894
cb1a09d0
AD
1895TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
1896
1897=item Tying Arrays
1898
cb1a09d0
AD
1899TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
1900DESTROY this
1901
1902=item Tying Hashes
1903
8ebc5c01
PP
1904USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
1905this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
1906this, NEXTKEY this, lastkey, DESTROY this
cb1a09d0
AD
1907
1908=item Tying FileHandles
1909
193fb0af
GS
1910TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
1911LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, DESTROY this
cb1a09d0 1912
4fdae800
PP
1913=item The C<untie> Gotcha
1914
cb1a09d0
AD
1915=back
1916
1917=item SEE ALSO
1918
cb1a09d0
AD
1919=item BUGS
1920
cb1a09d0
AD
1921=item AUTHOR
1922
cb1a09d0
AD
1923=head2 perlbot - Bag'o Object Tricks (the BOT)
1924
1925=item DESCRIPTION
1926
cb1a09d0
AD
1927=item OO SCALING TIPS
1928
cb1a09d0
AD
1929=item INSTANCE VARIABLES
1930
cb1a09d0
AD
1931=item SCALAR INSTANCE VARIABLES
1932
cb1a09d0
AD
1933=item INSTANCE VARIABLE INHERITANCE
1934
cb1a09d0
AD
1935=item OBJECT RELATIONSHIPS
1936
cb1a09d0
AD
1937=item OVERRIDING SUPERCLASS METHODS
1938
cb1a09d0
AD
1939=item USING RELATIONSHIP WITH SDBM
1940
cb1a09d0
AD
1941=item THINKING OF CODE REUSE
1942
cb1a09d0
AD
1943=item CLASS CONTEXT AND THE OBJECT
1944
cb1a09d0
AD
1945=item INHERITING A CONSTRUCTOR
1946
cb1a09d0
AD
1947=item DELEGATION
1948
8ebc5c01
PP
1949=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
1950safe subprocesses, sockets, and semaphores)
cb1a09d0 1951
8ebc5c01 1952=item DESCRIPTION
cb1a09d0 1953
8ebc5c01 1954=item Signals
cb1a09d0 1955
8ebc5c01 1956=item Named Pipes
cb1a09d0 1957
193fb0af
GS
1958=over
1959
1960=item WARNING
1961
1962=back
1963
8ebc5c01 1964=item Using open() for IPC
cb1a09d0 1965
8ebc5c01 1966=over
cb1a09d0 1967
68dc0745
PP
1968=item Filehandles
1969
1970=item Background Processes
1971
1972=item Complete Dissociation of Child from Parent
1973
8ebc5c01 1974=item Safe Pipe Opens
cb1a09d0 1975
c90c0ff4 1976=item Bidirectional Communication with Another Process
55497cff 1977
193fb0af
GS
1978=item Bidirectional Communication with Yourself
1979
8ebc5c01
PP
1980=back
1981
1982=item Sockets: Client/Server Communication
55497cff 1983
cb1a09d0
AD
1984=over
1985
193fb0af
GS
1986=item Internet Line Terminators
1987
8ebc5c01 1988=item Internet TCP Clients and Servers
55497cff 1989
8ebc5c01 1990=item Unix-Domain TCP Clients and Servers
55497cff 1991
c90c0ff4
PP
1992=back
1993
1994=item TCP Clients with IO::Socket
1995
1996=over
1997
1998=item A Simple Client
1999
2000C<Proto>, C<PeerAddr>, C<PeerPort>
2001
2002=item A Webget Client
2003
2004=item Interactive Client with IO::Socket
cb1a09d0 2005
8ebc5c01 2006=back
cb1a09d0 2007
c90c0ff4 2008=item TCP Servers with IO::Socket
cb1a09d0 2009
c90c0ff4
PP
2010Proto, LocalPort, Listen, Reuse
2011
2012=item UDP: Message Passing
2013
2014=item SysV IPC
cb1a09d0 2015
8ebc5c01 2016=item NOTES
cb1a09d0 2017
8ebc5c01 2018=item BUGS
55497cff 2019
8ebc5c01 2020=item AUTHOR
55497cff 2021
8ebc5c01 2022=item SEE ALSO
55497cff 2023
8ebc5c01 2024=head2 perldebug - Perl debugging
55497cff 2025
8ebc5c01 2026=item DESCRIPTION
55497cff 2027
8ebc5c01 2028=item The Perl Debugger
55497cff 2029
8ebc5c01 2030=over
55497cff 2031
8ebc5c01 2032=item Debugger Commands
a6006777 2033
774d564b
PP
2034h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n
2035[expr], E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l
2036subname, -, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern],
2037t, t expr, b [line] [condition], b subname [condition], b postpone subname
2038[condition], b load filename, b compile subname, d [line], D, a [line]
193fb0af
GS
2039command, A, W [expr], W, O [opt[=val]] [opt"val"] [opt?]..,
2040C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2041C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2042C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<arrayDepth>,
2043C<hashDepth>, C<compactDump>, C<veryCompact>, C<globPrint>, C<DumpDBFiles>,
2044C<DumpPackages>, C<DumpReused>, C<quote>, C<HighBit>, C<undefPrint>,
2045C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ],
2046E<lt>E<lt> command, E<gt> command, E<gt>E<gt> command, { [ command ], {{
2047command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D, R,
2048|dbcmd, ||dbcmd, command, m expr, m package
774d564b
PP
2049
2050=item Debugger input/output
2051
54310121 2052Prompt, Multiline commands, Stack backtrace, Listing, Frame listing
774d564b
PP
2053
2054=item Debugging compile-time statements
cb1a09d0 2055
8ebc5c01 2056=item Debugger Customization
cb1a09d0 2057
8ebc5c01 2058=item Readline Support
cb1a09d0 2059
8ebc5c01 2060=item Editor Support for Debugging
cb1a09d0 2061
8ebc5c01 2062=item The Perl Profiler
cb1a09d0 2063
8ebc5c01 2064=item Debugger support in perl
cb1a09d0 2065
8ebc5c01 2066=item Debugger Internals
cb1a09d0 2067
8ebc5c01 2068=item Other resources
cb1a09d0 2069
193fb0af
GS
2070=item BUGS
2071
8ebc5c01 2072=back
cb1a09d0 2073
193fb0af
GS
2074=item Debugging Perl memory usage
2075
2076=over
2077
2078=item Using C<$ENV{PERL_DEBUG_MSTATS}>
2079
2080C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk():
2081SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail:
20826144>
2083
2084=item Example of using B<-DL> switch
2085
2086C<717>, C<002>, C<054>, C<602>, C<702>, C<704>
2087
2088=item B<-DL> details
2089
2090C<!!!>, C<!!>, C<!>
2091
2092=item Limitations of B<-DL> statistic
2093
2094=back
cb1a09d0 2095
fb9cefb4
GS
2096=item Debugging regular expressions
2097
2098=over
2099
2100=item Compile-time output
2101
2102C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at>
2103I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass>
2104I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>,
2105C<anchored(TYPE)>
2106
2107=item Types of nodes
2108
2109=item Run-time output
2110
2111=back
2112
cb1a09d0
AD
2113=head2 perldiag - various Perl diagnostics
2114
2115=item DESCRIPTION
2116
8ebc5c01 2117=head2 perlsec - Perl security
cb1a09d0
AD
2118
2119=item DESCRIPTION
2120
cb1a09d0
AD
2121=over
2122
55497cff
PP
2123=item Laundering and Detecting Tainted Data
2124
b971f6e4
PP
2125=item Switches On the "#!" Line
2126
55497cff 2127=item Cleaning Up Your Path
cb1a09d0 2128
55497cff 2129=item Security Bugs
a6006777 2130
68dc0745
PP
2131=item Protecting Your Programs
2132
cb1a09d0
AD
2133=back
2134
193fb0af
GS
2135=item SEE ALSO
2136
8ebc5c01 2137=head2 perltrap - Perl traps for the unwary
cb1a09d0 2138
8ebc5c01 2139=item DESCRIPTION
cb1a09d0
AD
2140
2141=over
2142
8ebc5c01 2143=item Awk Traps
cb1a09d0 2144
8ebc5c01 2145=item C Traps
cb1a09d0 2146
8ebc5c01 2147=item Sed Traps
cb1a09d0 2148
8ebc5c01 2149=item Shell Traps
cb1a09d0 2150
8ebc5c01 2151=item Perl Traps
cb1a09d0 2152
8ebc5c01 2153=item Perl4 to Perl5 Traps
cb1a09d0 2154
8ebc5c01
PP
2155Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
2156Traps, General data type traps, Context Traps - scalar, list contexts,
2157Precedence Traps, General Regular Expression Traps using s///, etc,
2158Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
cb1a09d0 2159
8ebc5c01 2160=item Discontinuance, Deprecation, and BugFix traps
cb1a09d0 2161
8ebc5c01
PP
2162Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
2163Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
68dc0745 2164Discontinuance, Discontinuance, Deprecation, Discontinuance
cb1a09d0 2165
8ebc5c01 2166=item Parsing Traps
cb1a09d0 2167
fb9cefb4 2168Parsing, Parsing, Parsing, Parsing
cb1a09d0 2169
8ebc5c01 2170=item Numerical Traps
cb1a09d0 2171
8ebc5c01 2172Numerical, Numerical, Numerical
cb1a09d0 2173
8ebc5c01 2174=item General data type traps
cb1a09d0 2175
193fb0af
GS
2176(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
2177(Constants), (Scalars), (Variable Suicide)
cb1a09d0 2178
8ebc5c01 2179=item Context Traps - scalar, list contexts
cb1a09d0 2180
8ebc5c01 2181(list context), (scalar context), (scalar context), (list, builtin)
cb1a09d0 2182
8ebc5c01 2183=item Precedence Traps
cb1a09d0 2184
fb9cefb4
GS
2185Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
2186Precedence
cb1a09d0 2187
8ebc5c01 2188=item General Regular Expression Traps using s///, etc.
cb1a09d0 2189
8ebc5c01 2190Regular Expression, Regular Expression, Regular Expression, Regular
44a8e56a 2191Expression, Regular Expression, Regular Expression, Regular Expression,
fb9cefb4 2192Regular Expression
cb1a09d0 2193
8ebc5c01 2194=item Subroutine, Signal, Sorting Traps
cb1a09d0 2195
2ae324a7 2196(Signals), (Sort Subroutine), warn() won't let you specify a filehandle
cb1a09d0 2197
8ebc5c01 2198=item OS Traps
cb1a09d0 2199
8ebc5c01 2200(SysV), (SysV)
cb1a09d0 2201
8ebc5c01 2202=item Interpolation Traps
cb1a09d0 2203
8ebc5c01
PP
2204Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
2205Interpolation, Interpolation, Interpolation, Interpolation
cb1a09d0 2206
8ebc5c01 2207=item DBM Traps
cb1a09d0 2208
8ebc5c01 2209DBM, DBM
cb1a09d0 2210
8ebc5c01 2211=item Unclassified Traps
cb1a09d0 2212
d516a115
JH
2213C<require>/C<do> trap using returned value, C<split> on empty string with
2214LIMIT specified
cb1a09d0 2215
8ebc5c01 2216=back
cb1a09d0 2217
fb9cefb4
GS
2218=head2 perlport - Writing portable Perl
2219
2220=item DESCRIPTION
2221
2222Not all Perl programs have to be portable, The vast majority of Perl B<is>
2223portable
2224
2225=item ISSUES
2226
2227=over
2228
2229=item Newlines
2230
2231=item File Paths
2232
2233=item System Interaction
2234
2235=item Interprocess Communication (IPC)
2236
2237=item External Subroutines (XS)
2238
2239=item Standard Modules
2240
2241=item Time and Date
2242
2243=item System Resources
2244
2245=item Security
2246
2247=item Style
2248
2249=back
2250
2251=item CPAN TESTERS
2252
2253Mailing list: cpan-testers@perl.org, Testing results:
2254C<http://www.connect.net/gbarr/cpan-test/>
2255
2256=item PLATFORMS
2257
2258=over
2259
2260=item Unix
2261
2262=item DOS and Derivatives
2263
2264The djgpp environment for DOS, C<http://www.delorie.com/djgpp/>, The EMX
2265environment for DOS, OS/2, etc.
be94a901
GS
2266C<emx@iaehv.nl>,C<http://www.leo.org/pub/comp/os/os2/leo/gnu/emx+gcc/index.html>,
2267C<ftp://hobbes.nmsu.edu/pub/os2/dev/emx>. Build instructions
fb9cefb4
GS
2268for Win32, L<perlwin32>, The ActiveState Pages,
2269C<http://www.activestate.com/>
2270
2271=item MacPerl
2272
2273The MacPerl Pages, C<http://www.ptf.com/macperl/>, The MacPerl mailing
2274list, C<mac-perl-request@iis.ee.ethz.ch>
2275
2276=item VMS
2277
2278L<perlvms.pod>, vmsperl list, C<vmsperl-request@newman.upenn.edu>, vmsperl
2279on the web, C<http://www.sidhe.org/vmsperl/index.html>
2280
2281=item EBCDIC Platforms
2282
2283perl-mvs list, AS/400 Perl information at C<http://as400.rochester.ibm.com>
2284
2285=item Other perls
2286
2287Atari, Guido Flohr's page C<http://stud.uni-sb.de/~gufl0000/>, HP 300
2288MPE/iX C<http://www.cccd.edu/~markb/perlix.html>, Novell Netware
2289
2290=back
2291
2292=item FUNCTION IMPLEMENTATIONS
2293
2294=over
2295
2296=item Alphabetical Listing of Perl Functions
2297
2298-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, binmode FILEHANDLE, chmod LIST, chown
2299LIST, chroot FILENAME, chroot, crypt PLAINTEXT,SALT, dbmclose HASH, dbmopen
2300HASH,DBNAME,MODE, dump LABEL, exec LIST, fcntl FILEHANDLE,FUNCTION,SCALAR,
2301flock FILEHANDLE,OPERATION, fork, getlogin, getpgrp PID, getppid,
2302getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, getnetbyname NAME,
2303getpwuid UID, getgrgid GID, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber
2304NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent,
2305getnetent, getprotoent, getservent, setpwent, setgrent, sethostent
2306STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN,
2307endpwent, endgrent, endhostent, endnetent, endprotoent, endservent,
2308getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, ioctl
2309FILEHANDLE,FUNCTION,SCALAR, kill LIST, link OLDFILE,NEWFILE, lstat
2310FILEHANDLE, lstat EXPR, lstat, msgctl ID,CMD,ARG, msgget KEY,FLAGS, msgsnd
2311ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, open FILEHANDLE,EXPR, open
2312FILEHANDLE, pipe READHANDLE,WRITEHANDLE, readlink EXPR, readlink, select
2313RBITS,WBITS,EBITS,TIMEOUT, semctl ID,SEMNUM,CMD,ARG, semget
2314KEY,NSEMS,FLAGS, semop KEY,OPSTRING, setpgrp PID,PGRP, setpriority
2315WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shmctl
2316ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE, shmwrite
2317ID,STRING,POS,SIZE, socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, stat
2318FILEHANDLE, stat EXPR, stat, symlink OLDFILE,NEWFILE, syscall LIST, system
2319LIST, times, truncate FILEHANDLE,LENGTH, truncate EXPR,LENGTH, umask EXPR,
2320umask, utime LIST, wait, waitpid PID,FLAGS
2321
2322=back
2323
2324=item AUTHORS / CONTRIBUTORS
2325
2326=item VERSION
2327
8ebc5c01 2328=head2 perlstyle - Perl style guide
cb1a09d0 2329
8ebc5c01 2330=item DESCRIPTION
cb1a09d0 2331
8ebc5c01 2332=head2 perlpod - plain old documentation
cb1a09d0 2333
8ebc5c01 2334=item DESCRIPTION
cb1a09d0 2335
d516a115
JH
2336=over
2337
2338=item Verbatim Paragraph
2339
2340=item Command Paragraph
2341
2342=item Ordinary Block of Text
2343
2344=item The Intent
2345
8ebc5c01 2346=item Embedding Pods in Perl Modules
cb1a09d0 2347
8ebc5c01 2348=item Common Pod Pitfalls
cb1a09d0 2349
d516a115
JH
2350=back
2351
8ebc5c01 2352=item SEE ALSO
cb1a09d0 2353
8ebc5c01 2354=item AUTHOR
cb1a09d0 2355
8ebc5c01 2356=head2 perlbook - Perl book information
cb1a09d0 2357
8ebc5c01 2358=item DESCRIPTION
cb1a09d0 2359
8ebc5c01 2360=head2 perlembed - how to embed perl in your C program
cb1a09d0 2361
8ebc5c01 2362=item DESCRIPTION
cb1a09d0 2363
8ebc5c01 2364=over
cb1a09d0 2365
8ebc5c01 2366=item PREAMBLE
cb1a09d0 2367
54310121 2368B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from
8ebc5c01 2369Perl?>, B<Use C from C?>, B<Use Perl from C?>
cb1a09d0 2370
8ebc5c01 2371=item ROADMAP
cb1a09d0 2372
8ebc5c01 2373=item Compiling your C program
cb1a09d0 2374
8ebc5c01 2375=item Adding a Perl interpreter to your C program
cb1a09d0 2376
8ebc5c01 2377=item Calling a Perl subroutine from your C program
cb1a09d0 2378
8ebc5c01 2379=item Evaluating a Perl statement from your C program
cb1a09d0 2380
8ebc5c01 2381=item Performing Perl pattern matches and substitutions from your C program
cb1a09d0 2382
8ebc5c01 2383=item Fiddling with the Perl stack from your C program
cb1a09d0 2384
8ebc5c01 2385=item Maintaining a persistent interpreter
cb1a09d0 2386
8ebc5c01 2387=item Maintaining multiple interpreter instances
cb1a09d0 2388
8ebc5c01
PP
2389=item Using Perl modules, which themselves use C libraries, from your C
2390program
cb1a09d0 2391
8ebc5c01 2392=back
cb1a09d0 2393
3e3baf6d
TB
2394=item Embedding Perl under Win32
2395
8ebc5c01 2396=item MORAL
cb1a09d0 2397
8ebc5c01 2398=item AUTHOR
cb1a09d0 2399
f86702cc
PP
2400=item COPYRIGHT
2401
28757baa 2402=head2 perlapio - perl's IO abstraction interface.
cb1a09d0 2403
8ebc5c01 2404=item SYNOPSIS
cb1a09d0
AD
2405
2406=item DESCRIPTION
2407
8ebc5c01
PP
2408B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
2409B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
2410B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
2411B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
d516a115
JH
2412B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>,
2413B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>,
8ebc5c01
PP
2414B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
2415B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
2416B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
2417B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
cb1a09d0
AD
2418
2419=over
2420
8ebc5c01 2421=item Co-existence with stdio
cb1a09d0 2422
8ebc5c01
PP
2423B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
2424B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
2425B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
2426B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
2427B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
2428B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
cb1a09d0 2429
8ebc5c01 2430=back
cb1a09d0 2431
8ebc5c01 2432=head2 perlxs - XS language reference manual
cb1a09d0 2433
8ebc5c01 2434=item DESCRIPTION
cb1a09d0 2435
8ebc5c01 2436=over
cb1a09d0
AD
2437
2438=item Introduction
2439
cb1a09d0
AD
2440=item On The Road
2441
cb1a09d0
AD
2442=item The Anatomy of an XSUB
2443
cb1a09d0
AD
2444=item The Argument Stack
2445
cb1a09d0
AD
2446=item The RETVAL Variable
2447
cb1a09d0
AD
2448=item The MODULE Keyword
2449
cb1a09d0
AD
2450=item The PACKAGE Keyword
2451
cb1a09d0
AD
2452=item The PREFIX Keyword
2453
cb1a09d0
AD
2454=item The OUTPUT: Keyword
2455
cb1a09d0
AD
2456=item The CODE: Keyword
2457
7d2bfb28
PP
2458=item The INIT: Keyword
2459
cb1a09d0
AD
2460=item The NO_INIT Keyword
2461
cb1a09d0
AD
2462=item Initializing Function Parameters
2463
cb1a09d0
AD
2464=item Default Parameter Values
2465
7d2bfb28
PP
2466=item The PREINIT: Keyword
2467
8ebc5c01 2468=item The SCOPE: Keyword
7d2bfb28
PP
2469
2470=item The INPUT: Keyword
2471
cb1a09d0
AD
2472=item Variable-length Parameter Lists
2473
193fb0af
GS
2474=item The C_ARGS: Keyword
2475
cb1a09d0
AD
2476=item The PPCODE: Keyword
2477
cb1a09d0
AD
2478=item Returning Undef And Empty Lists
2479
cb1a09d0
AD
2480=item The REQUIRE: Keyword
2481
cb1a09d0
AD
2482=item The CLEANUP: Keyword
2483
cb1a09d0
AD
2484=item The BOOT: Keyword
2485
7d2bfb28
PP
2486=item The VERSIONCHECK: Keyword
2487
7d2bfb28
PP
2488=item The PROTOTYPES: Keyword
2489
7d2bfb28
PP
2490=item The PROTOTYPE: Keyword
2491
7d2bfb28
PP
2492=item The ALIAS: Keyword
2493
193fb0af
GS
2494=item The INTERFACE: Keyword
2495
2496=item The INTERFACE_MACRO: Keyword
2497
7d2bfb28
PP
2498=item The INCLUDE: Keyword
2499
7d2bfb28
PP
2500=item The CASE: Keyword
2501
7d2bfb28
PP
2502=item The & Unary Operator
2503
cb1a09d0
AD
2504=item Inserting Comments and C Preprocessor Directives
2505
cb1a09d0
AD
2506=item Using XS With C++
2507
cb1a09d0
AD
2508=item Interface Strategy
2509
cb1a09d0
AD
2510=item Perl Objects And C Structures
2511
cb1a09d0
AD
2512=item The Typemap
2513
cb1a09d0
AD
2514=back
2515
2516=item EXAMPLES
2517
7d2bfb28
PP
2518=item XS VERSION
2519
cb1a09d0
AD
2520=item AUTHOR
2521
8ebc5c01 2522=head2 perlxstut, perlXStut - Tutorial for XSUBs
cb1a09d0
AD
2523
2524=item DESCRIPTION
2525
7d2bfb28
PP
2526=over
2527
2528=item VERSION CAVEAT
2529
7d2bfb28
PP
2530=item DYNAMIC VERSUS STATIC
2531
cb1a09d0
AD
2532=item EXAMPLE 1
2533
cb1a09d0
AD
2534=item EXAMPLE 2
2535
cb1a09d0
AD
2536=item WHAT HAS GONE ON?
2537
8ebc5c01 2538=item WRITING GOOD TEST SCRIPTS
cb1a09d0
AD
2539
2540=item EXAMPLE 3
2541
cb1a09d0
AD
2542=item WHAT'S NEW HERE?
2543
cb1a09d0
AD
2544=item INPUT AND OUTPUT PARAMETERS
2545
cb1a09d0
AD
2546=item THE XSUBPP COMPILER
2547
cb1a09d0
AD
2548=item THE TYPEMAP FILE
2549
cb1a09d0
AD
2550=item WARNING
2551
8ebc5c01 2552=item EXAMPLE 4
cb1a09d0 2553
8ebc5c01 2554=item WHAT HAS HAPPENED HERE?
7d2bfb28 2555
8ebc5c01 2556=item SPECIFYING ARGUMENTS TO XSUBPP
7d2bfb28
PP
2557
2558=item THE ARGUMENT STACK
2559
7d2bfb28
PP
2560=item EXTENDING YOUR EXTENSION
2561
7d2bfb28
PP
2562=item DOCUMENTING YOUR EXTENSION
2563
7d2bfb28
PP
2564=item INSTALLING YOUR EXTENSION
2565
7d2bfb28 2566=item SEE ALSO
cb1a09d0 2567
cb1a09d0
AD
2568=item Author
2569
cb1a09d0
AD
2570=item Last Changed
2571
7d2bfb28
PP
2572=back
2573
cb1a09d0
AD
2574=head2 perlguts - Perl's Internal Functions
2575
2576=item DESCRIPTION
2577
0a753a76
PP
2578=item Variables
2579
8ebc5c01 2580=over
cb1a09d0
AD
2581
2582=item Datatypes
2583
cb1a09d0
AD
2584=item What is an "IV"?
2585
54310121 2586=item Working with SVs
cb1a09d0 2587
cb1a09d0
AD
2588=item What's Really Stored in an SV?
2589
54310121 2590=item Working with AVs
cb1a09d0 2591
54310121 2592=item Working with HVs
cb1a09d0 2593
1e422769
PP
2594=item Hash API Extensions
2595
cb1a09d0
AD
2596=item References
2597
cb1a09d0
AD
2598=item Blessed References and Class Objects
2599
cb1a09d0
AD
2600=item Creating New Variables
2601
8ebc5c01 2602=item Reference Counts and Mortality
cb1a09d0 2603
8ebc5c01 2604=item Stashes and Globs
cb1a09d0 2605
54310121 2606=item Double-Typed SVs
0a753a76
PP
2607
2608=item Magic Variables
cb1a09d0 2609
cb1a09d0
AD
2610=item Assigning Magic
2611
cb1a09d0
AD
2612=item Magic Virtual Tables
2613
cb1a09d0
AD
2614=item Finding Magic
2615
3e3baf6d
TB
2616=item Understanding the Magic of Tied Hashes and Arrays
2617
d516a115
JH
2618=item Localizing changes
2619
2620C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>,
2621C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEFREEOP(OP
2622*op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>, C<SAVEDELETE(HV *hv, char
2623*key, I32 length)>, C<SAVEDESTRUCTOR(f,p)>, C<SAVESTACK_POS()>, C<SV*
2624save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>,
2625C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>,
2626C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void
2627save_hptr(HV **hptr)>
2628
0a753a76
PP
2629=back
2630
2631=item Subroutines
2632
2633=over
cb1a09d0 2634
68dc0745 2635=item XSUBs and the Argument Stack
cb1a09d0
AD
2636
2637=item Calling Perl Routines from within C Programs
2638
cb1a09d0
AD
2639=item Memory Allocation
2640
8ebc5c01 2641=item PerlIO
cb1a09d0 2642
8ebc5c01 2643=item Putting a C value on Perl stack
cb1a09d0 2644
8ebc5c01 2645=item Scratchpads
cb1a09d0 2646
2ae324a7 2647=item Scratchpads and recursion
cb1a09d0 2648
0a753a76
PP
2649=back
2650
2651=item Compiled code
2652
2653=over
2654
2655=item Code tree
2656
2657=item Examining the tree
2658
2659=item Compile pass 1: check routines
2660
2661=item Compile pass 1a: constant folding
2662
2663=item Compile pass 2: context propagation
2664
2665=item Compile pass 3: peephole optimization
2666
2667=back
2668
8ebc5c01 2669=item API LISTING
cb1a09d0 2670
193fb0af 2671av_clear, av_extend, av_fetch, AvFILL, av_len, av_make, av_pop, av_push,
8ebc5c01 2672av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH,
9cde0e7f
GS
2673PL_DBsingle, PL_DBsub, PL_DBtrace, dMARK, dORIGMARK, PL_dowarn, dSP,
2674dXSARGS, dXSI32, do_binmode, ENTER, EXTEND, fbm_compile, fbm_instr,
2675FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, GIMME_V, G_NOARGS, G_SCALAR,
2676gv_fetchmeth, gv_fetchmethod, gv_fetchmethod_autoload, G_VOID, gv_stashpv,
2677gv_stashsv, GvSV, HEf_SVKEY, HeHASH, HeKEY, HeKLEN, HePV, HeSVKEY,
2678HeSVKEY_force, HeSVKEY_set, HeVAL, hv_clear, hv_delayfree_ent, hv_delete,
2679hv_delete_ent, hv_exists, hv_exists_ent, hv_fetch, hv_fetch_ent,
2680hv_free_ent, hv_iterinit, hv_iterkey, hv_iterkeysv, hv_iternext,
2681hv_iternextsv, hv_iterval, hv_magic, HvNAME, hv_store, hv_store_ent,
2682hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, items, ix,
2683LEAVE, looks_like_number, MARK, mg_clear, mg_copy, mg_find, mg_free,
2684mg_get, mg_len, mg_magical, mg_set, Move, PL_na, New, newAV, Newc,
2685newCONSTSUB, newHV, newRV_inc, newRV_noinc, NEWSV, newSViv, newSVnv,
2686newSVpv, newSVpvf, newSVpvn, newSVrv, newSVsv, newXS, newXSproto, Newz,
2687Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc,
2688perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv,
193fb0af
GS
2689perl_construct, perl_destruct, perl_eval_sv, perl_eval_pv, perl_free,
2690perl_get_av, perl_get_cv, perl_get_hv, perl_get_sv, perl_parse,
2691perl_require_pv, perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi,
2692PUSHn, PUSHp, PUSHs, PUSHu, PUTBACK, Renew, Renewc, RETVAL, safefree,
2693safemalloc, saferealloc, savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ,
2694strGE, strGT, strLE, strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless,
2695sv_catpv, sv_catpv_mg, sv_catpvn, sv_catpvn_mg, sv_catpvf, sv_catpvf_mg,
2696sv_catsv, sv_catsv_mg, sv_chop, sv_cmp, SvCUR, SvCUR_set, sv_dec,
2697sv_derived_from, sv_derived_from, SvEND, sv_eq, SvGETMAGIC, SvGROW,
2698sv_grow, sv_inc, sv_insert, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only, SvIOKp,
2699sv_isa, sv_isobject, SvIV, SvIVX, SvLEN, sv_len, sv_magic, sv_mortalcopy,
9cde0e7f 2700sv_newmortal, SvNIOK, SvNIOK_off, SvNIOKp, PL_sv_no, SvNOK, SvNOK_off,
193fb0af
GS
2701SvNOK_on, SvNOK_only, SvNOKp, SvNV, SvNVX, SvOK, SvOOK, SvPOK, SvPOK_off,
2702SvPOK_on, SvPOK_only, SvPOKp, SvPV, SvPV_force, SvPVX, SvREFCNT,
2703SvREFCNT_dec, SvREFCNT_inc, SvROK, SvROK_off, SvROK_on, SvRV, SvSETMAGIC,
2704sv_setiv, sv_setiv_mg, sv_setnv, sv_setnv_mg, sv_setpv, sv_setpv_mg,
2705sv_setpviv, sv_setpviv_mg, sv_setpvn, sv_setpvn_mg, sv_setpvf,
2706sv_setpvf_mg, sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn,
2707SvSetSV, SvSetSV_nosteal, sv_setsv, sv_setsv_mg, sv_setuv, sv_setuv_mg,
2708SvSTASH, SvTAINT, SvTAINTED, SvTAINTED_off, SvTAINTED_on, SVt_IV, SVt_PV,
2709SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE, SvTYPE, svtype,
9cde0e7f 2710PL_sv_undef, sv_unref, SvUPGRADE, sv_upgrade, sv_usepvn, sv_usepvn_mg,
193fb0af
GS
2711sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale),
2712sv_vsetpvfn(sv, pat, patlen, args, svargs, svmax, used_locale), SvUV,
9cde0e7f 2713SvUVX, PL_sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp,
193fb0af 2714XPUSHs, XPUSHu, XS, XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO,
46fc3d4c
PP
2715XSRETURN_NV, XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV,
2716XST_mNO, XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK,
2717Zero
cb1a09d0 2718
193fb0af 2719=item AUTHORS
cb1a09d0
AD
2720
2721=head2 perlcall - Perl calling conventions from C
2722
2723=item DESCRIPTION
2724
cb1a09d0
AD
2725An Error Handler, An Event Driven Program
2726
2727=item THE PERL_CALL FUNCTIONS
2728
8ebc5c01 2729B<perl_call_sv>, B<perl_call_pv>, B<perl_call_method>, B<perl_call_argv>
cb1a09d0
AD
2730
2731=item FLAG VALUES
2732
cb1a09d0
AD
2733=over
2734
54310121
PP
2735=item G_VOID
2736
cb1a09d0
AD
2737=item G_SCALAR
2738
cb1a09d0
AD
2739=item G_ARRAY
2740
cb1a09d0
AD
2741=item G_DISCARD
2742
cb1a09d0
AD
2743=item G_NOARGS
2744
54310121 2745=item G_EVAL
cb1a09d0 2746
7d2bfb28
PP
2747=item G_KEEPERR
2748
54310121 2749=item Determining the Context
cb1a09d0
AD
2750
2751=back
2752
2753=item KNOWN PROBLEMS
2754
cb1a09d0
AD
2755=item EXAMPLES
2756
cb1a09d0
AD
2757=over
2758
2759=item No Parameters, Nothing returned
2760
cb1a09d0
AD
2761=item Passing Parameters
2762
cb1a09d0
AD
2763=item Returning a Scalar
2764
cb1a09d0
AD
2765=item Returning a list of values
2766
cb1a09d0
AD
2767=item Returning a list in a scalar context
2768
cb1a09d0
AD
2769=item Returning Data from Perl via the parameter list
2770
cb1a09d0
AD
2771=item Using G_EVAL
2772
7d2bfb28
PP
2773=item Using G_KEEPERR
2774
cb1a09d0
AD
2775=item Using perl_call_sv
2776
cb1a09d0
AD
2777=item Using perl_call_argv
2778
cb1a09d0
AD
2779=item Using perl_call_method
2780
54310121 2781=item Using GIMME_V
cb1a09d0 2782
cb1a09d0
AD
2783=item Using Perl to dispose of temporaries
2784
cb1a09d0
AD
2785=item Strategies for storing Callback Context Information
2786
cb1a09d0
AD
27871. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
2788callbacks - hard wired limit, 3. Use a parameter to map to the Perl
2789callback
2790
2791=item Alternate Stack Manipulation
2792
5cd24f17
PP
2793=item Creating and calling an anonymous subroutine in C
2794
cb1a09d0
AD
2795=back
2796
2797=item SEE ALSO
2798
cb1a09d0
AD
2799=item AUTHOR
2800
cb1a09d0
AD
2801=item DATE
2802
d516a115
JH
2803=head2 perlhist - the Perl history records
2804
2805=item DESCRIPTION
2806
2807=item INTRODUCTION
2808
2809=item THE KEEPERS OF THE PUMPKIN
2810
2811=over
2812
2813=item PUMPKIN?
2814
2815=back
2816
2817=item THE RECORDS
2818
2819=over
2820
2821=item SELECTED RELEASE SIZES
2822
2823=item SELECTED PATCH SIZES
2824
2825=back
2826
2827=item THE KEEPERS OF THE RECORDS
2828
8ebc5c01 2829=head1 PRAGMA DOCUMENTATION
cb1a09d0 2830
d516a115
JH
2831=head2 attrs - set/get attributes of a subroutine
2832
2833=item SYNOPSIS
2834
2835=item DESCRIPTION
2836
2837method, locked
2838
fb9cefb4
GS
2839=head2 re - Perl pragma to alter regular expression behaviour
2840
2841=item SYNOPSIS
2842
2843=item DESCRIPTION
2844
68dc0745
PP
2845=head2 autouse - postpone load of modules until a function is used
2846
2847=item SYNOPSIS
2848
2849=item DESCRIPTION
2850
2851=item WARNING
2852
68dc0745
PP
2853=item AUTHOR
2854
2855=item SEE ALSO
2856
d516a115
JH
2857=head2 base - Establish IS-A relationship with base class at compile time
2858
2859=item SYNOPSIS
2860
2861=item DESCRIPTION
2862
fb9cefb4 2863=item SEE ALSO
d516a115 2864
8ebc5c01 2865=head2 blib - Use MakeMaker's uninstalled version of a package
cb1a09d0 2866
8ebc5c01 2867=item SYNOPSIS
cb1a09d0 2868
8ebc5c01 2869=item DESCRIPTION
cb1a09d0 2870
8ebc5c01 2871=item BUGS
cb1a09d0 2872
8ebc5c01 2873=item AUTHOR
cb1a09d0 2874
54310121
PP
2875=head2 constant - Perl pragma to declare constants
2876
2877=item SYNOPSIS
2878
2879=item DESCRIPTION
2880
2881=item NOTES
2882
2883=item TECHNICAL NOTE
2884
2885=item BUGS
2886
2887=item AUTHOR
2888
2889=item COPYRIGHT
2890
8ebc5c01
PP
2891=head2 diagnostics - Perl compiler pragma to force verbose warning
2892diagnostics
cb1a09d0 2893
8ebc5c01 2894=item SYNOPSIS
cb1a09d0 2895
8ebc5c01 2896=item DESCRIPTION
cb1a09d0 2897
8ebc5c01 2898=over
cb1a09d0 2899
8ebc5c01 2900=item The C<diagnostics> Pragma
cb1a09d0 2901
8ebc5c01 2902=item The I<splain> Program
cb1a09d0 2903
8ebc5c01 2904=back
cb1a09d0 2905
8ebc5c01 2906=item EXAMPLES
cb1a09d0 2907
8ebc5c01 2908=item INTERNALS
cb1a09d0 2909
8ebc5c01 2910=item BUGS
cb1a09d0 2911
8ebc5c01 2912=item AUTHOR
cb1a09d0 2913
d516a115
JH
2914=head2 fields - compile-time class fields
2915
2916=item SYNOPSIS
2917
2918=item DESCRIPTION
2919
fb9cefb4
GS
2920=item SEE ALSO
2921
8ebc5c01
PP
2922=head2 integer - Perl pragma to compute arithmetic in integer instead of
2923double
cb1a09d0 2924
8ebc5c01 2925=item SYNOPSIS
cb1a09d0 2926
8ebc5c01 2927=item DESCRIPTION
cb1a09d0 2928
8ebc5c01 2929=head2 less - perl pragma to request less of something from the compiler
cb1a09d0 2930
8ebc5c01 2931=item SYNOPSIS
cb1a09d0 2932
8ebc5c01 2933=item DESCRIPTION
cb1a09d0 2934
8ebc5c01 2935=head2 lib - manipulate @INC at compile time
cb1a09d0 2936
8ebc5c01 2937=item SYNOPSIS
cb1a09d0 2938
8ebc5c01 2939=item DESCRIPTION
cb1a09d0 2940
8ebc5c01
PP
2941=over
2942
2943=item ADDING DIRECTORIES TO @INC
cb1a09d0 2944
8ebc5c01 2945=item DELETING DIRECTORIES FROM @INC
cb1a09d0 2946
8ebc5c01 2947=item RESTORING ORIGINAL @INC
cb1a09d0 2948
8ebc5c01 2949=back
cb1a09d0 2950
8ebc5c01 2951=item SEE ALSO
cb1a09d0 2952
8ebc5c01 2953=item AUTHOR
cb1a09d0 2954
8ebc5c01
PP
2955=head2 locale - Perl pragma to use and avoid POSIX locales for built-in
2956operations
cb1a09d0 2957
8ebc5c01 2958=item SYNOPSIS
cb1a09d0
AD
2959
2960=item DESCRIPTION
2961
8ebc5c01 2962=head2 overload - Package for overloading perl operations
cb1a09d0 2963
8ebc5c01 2964=item SYNOPSIS
cb1a09d0 2965
8ebc5c01 2966=item CAVEAT SCRIPTOR
cb1a09d0 2967
8ebc5c01 2968=item DESCRIPTION
cb1a09d0 2969
8ebc5c01 2970=over
cb1a09d0 2971
8ebc5c01 2972=item Declaration of overloaded functions
cb1a09d0 2973
8ebc5c01 2974=item Calling Conventions for Binary Operations
cb1a09d0 2975
8ebc5c01 2976FALSE, TRUE, C<undef>
cb1a09d0 2977
8ebc5c01 2978=item Calling Conventions for Unary Operations
cb1a09d0 2979
8ebc5c01 2980=item Overloadable Operations
cb1a09d0 2981
8ebc5c01
PP
2982I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
2983I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
2984and numeric conversion>, I<Special>
cb1a09d0 2985
774d564b
PP
2986=item Inheritance and overloading
2987
2988Strings as values of C<use overload> directive, Overloading of an operation
2989is inherited by derived classes
2990
8ebc5c01 2991=back
cb1a09d0 2992
8ebc5c01 2993=item SPECIAL SYMBOLS FOR C<use overload>
cb1a09d0 2994
8ebc5c01 2995=over
cb1a09d0 2996
774d564b 2997=item Last Resort
cb1a09d0 2998
8ebc5c01 2999=item Fallback
cb1a09d0 3000
8ebc5c01 3001C<undef>, TRUE, defined, but FALSE
cb1a09d0 3002
8ebc5c01 3003=item Copy Constructor
cb1a09d0 3004
8ebc5c01 3005B<Example>
cb1a09d0 3006
8ebc5c01 3007=back
cb1a09d0 3008
8ebc5c01 3009=item MAGIC AUTOGENERATION
cb1a09d0 3010
8ebc5c01
PP
3011I<Assignment forms of arithmetic operations>, I<Conversion operations>,
3012I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
3013I<Concatenation>, I<Comparison operations>, I<Copy operator>
cb1a09d0 3014
8ebc5c01 3015=item WARNING
cb1a09d0 3016
8ebc5c01 3017=item Run-time Overloading
cb1a09d0 3018
8ebc5c01 3019=item Public functions
cb1a09d0 3020
8ebc5c01 3021overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
cb1a09d0 3022
fb9cefb4
GS
3023=item Overloading constants
3024
3025integer, float, binary, q, qr
3026
8ebc5c01 3027=item IMPLEMENTATION
cb1a09d0 3028
8ebc5c01 3029=item AUTHOR
cb1a09d0 3030
8ebc5c01 3031=item DIAGNOSTICS
cb1a09d0 3032
8ebc5c01 3033=item BUGS
cb1a09d0 3034
8ebc5c01 3035=head2 sigtrap - Perl pragma to enable simple signal handling
cb1a09d0 3036
8ebc5c01 3037=item SYNOPSIS
cb1a09d0 3038
8ebc5c01 3039=item DESCRIPTION
cb1a09d0 3040
8ebc5c01 3041=item OPTIONS
cb1a09d0 3042
8ebc5c01 3043=over
cb1a09d0 3044
8ebc5c01 3045=item SIGNAL HANDLERS
cb1a09d0 3046
8ebc5c01 3047B<stack-trace>, B<die>, B<handler> I<your-handler>
cb1a09d0 3048
8ebc5c01 3049=item SIGNAL LISTS
cb1a09d0 3050
8ebc5c01 3051B<normal-signals>, B<error-signals>, B<old-interface-signals>
cb1a09d0 3052
8ebc5c01 3053=item OTHER
cb1a09d0 3054
8ebc5c01 3055B<untrapped>, B<any>, I<signal>, I<number>
cb1a09d0 3056
8ebc5c01 3057=back
cb1a09d0 3058
8ebc5c01 3059=item EXAMPLES
cb1a09d0 3060
8ebc5c01 3061=head2 strict - Perl pragma to restrict unsafe constructs
cb1a09d0 3062
8ebc5c01 3063=item SYNOPSIS
cb1a09d0 3064
8ebc5c01 3065=item DESCRIPTION
cb1a09d0 3066
8ebc5c01 3067C<strict refs>, C<strict vars>, C<strict subs>
cb1a09d0 3068
8ebc5c01 3069=head2 subs - Perl pragma to predeclare sub names
cb1a09d0
AD
3070
3071=item SYNOPSIS
3072
cb1a09d0
AD
3073=item DESCRIPTION
3074
8ebc5c01 3075=head2 vars - Perl pragma to predeclare global variable names
cb1a09d0 3076
8ebc5c01 3077=item SYNOPSIS
cb1a09d0 3078
8ebc5c01 3079=item DESCRIPTION
cb1a09d0 3080
8ebc5c01 3081=head1 MODULE DOCUMENTATION
cb1a09d0 3082
8ebc5c01 3083=head2 AnyDBM_File - provide framework for multiple DBMs
cb1a09d0
AD
3084
3085=item SYNOPSIS
3086
cb1a09d0
AD
3087=item DESCRIPTION
3088
cb1a09d0
AD
3089=over
3090
8ebc5c01 3091=item DBM Comparisons
cb1a09d0 3092
8ebc5c01 3093[0], [1], [2], [3]
cb1a09d0 3094
8ebc5c01 3095=back
cb1a09d0 3096
8ebc5c01 3097=item SEE ALSO
cb1a09d0 3098
4a6725af 3099=head2 AutoLoader - load subroutines only on demand
cb1a09d0 3100
8ebc5c01 3101=item SYNOPSIS
cb1a09d0 3102
8ebc5c01 3103=item DESCRIPTION
cb1a09d0 3104
8ebc5c01 3105=over
cb1a09d0 3106
4a6725af
NT
3107=item Subroutine Stubs
3108
3109=item Using B<AutoLoader>'s AUTOLOAD Subroutine
cb1a09d0 3110
4a6725af 3111=item Overriding B<AutoLoader>'s AUTOLOAD Subroutine
cb1a09d0 3112
8ebc5c01 3113=item Package Lexicals
cb1a09d0 3114
4a6725af 3115=item B<AutoLoader> vs. B<SelfLoader>
cb1a09d0 3116
8ebc5c01 3117=back
cb1a09d0 3118
4a6725af
NT
3119=item CAVEATS
3120
3121=item SEE ALSO
cb1a09d0 3122
8ebc5c01 3123=head2 AutoSplit - split a package for autoloading
cb1a09d0 3124
8ebc5c01 3125=item SYNOPSIS
cb1a09d0 3126
8ebc5c01 3127=item DESCRIPTION
cb1a09d0 3128
193fb0af
GS
3129$keep, $check, $modtime
3130
3131=over
3132
3133=item Multiple packages
3134
3135=back
cb1a09d0 3136
8ebc5c01 3137=item DIAGNOSTICS
cb1a09d0 3138
fb9cefb4 3139=head2 B - The Perl Compiler
193fb0af
GS
3140
3141=item SYNOPSIS
3142
3143=item DESCRIPTION
3144
fb9cefb4 3145=item OVERVIEW OF CLASSES
193fb0af 3146
fb9cefb4 3147=over
193fb0af 3148
fb9cefb4 3149=item SV-RELATED CLASSES
193fb0af 3150
fb9cefb4 3151=item B::SV METHODS
193fb0af 3152
fb9cefb4 3153REFCNT, FLAGS
193fb0af 3154
fb9cefb4 3155=item B::IV METHODS
193fb0af 3156
fb9cefb4 3157IV, IVX, needs64bits, packiv
193fb0af 3158
fb9cefb4 3159=item B::NV METHODS
193fb0af 3160
fb9cefb4 3161NV, NVX
193fb0af 3162
fb9cefb4 3163=item B::RV METHODS
193fb0af 3164
fb9cefb4 3165RV
193fb0af 3166
fb9cefb4 3167=item B::PV METHODS
193fb0af 3168
fb9cefb4 3169PV
193fb0af 3170
fb9cefb4 3171=item B::PVMG METHODS
cb1a09d0 3172
fb9cefb4 3173MAGIC, SvSTASH
cb1a09d0 3174
fb9cefb4 3175=item B::MAGIC METHODS
cb1a09d0 3176
fb9cefb4 3177MOREMAGIC, PRIVATE, TYPE, FLAGS, OBJ, PTR
cb1a09d0 3178
fb9cefb4 3179=item B::PVLV METHODS
cb1a09d0 3180
fb9cefb4 3181TARGOFF, TARGLEN, TYPE, TARG
cb1a09d0 3182
fb9cefb4 3183=item B::BM METHODS
cb1a09d0 3184
fb9cefb4 3185USEFUL, PREVIOUS, RARE, TABLE
cb1a09d0 3186
fb9cefb4 3187=item B::GV METHODS
cb1a09d0 3188
fb9cefb4
GS
3189NAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILEGV, GvREFCNT,
3190FLAGS
54310121 3191
fb9cefb4 3192=item B::IO METHODS
cb1a09d0 3193
fb9cefb4
GS
3194LINES, PAGE, PAGE_LEN, LINES_LEFT, TOP_NAME, TOP_GV, FMT_NAME, FMT_GV,
3195BOTTOM_NAME, BOTTOM_GV, SUBPROCESS, IoTYPE, IoFLAGS
cb1a09d0 3196
fb9cefb4 3197=item B::AV METHODS
cb1a09d0 3198
fb9cefb4 3199FILL, MAX, OFF, ARRAY, AvFLAGS
cb1a09d0 3200
fb9cefb4 3201=item B::CV METHODS
cb1a09d0 3202
fb9cefb4 3203STASH, START, ROOT, GV, FILEGV, DEPTH, PADLIST, OUTSIDE, XSUB, XSUBANY
cb1a09d0 3204
fb9cefb4 3205=item B::HV METHODS
f86702cc 3206
fb9cefb4 3207FILL, MAX, KEYS, RITER, NAME, PMROOT, ARRAY
f86702cc 3208
fb9cefb4 3209=item OP-RELATED CLASSES
f86702cc 3210
fb9cefb4 3211=item B::OP METHODS
f86702cc 3212
fb9cefb4 3213next, sibling, ppaddr, desc, targ, type, seq, flags, private
f86702cc 3214
fb9cefb4 3215=item B::UNOP METHOD
54310121 3216
fb9cefb4 3217first
dc848c6f 3218
fb9cefb4 3219=item B::BINOP METHOD
54310121 3220
fb9cefb4 3221last
54310121 3222
fb9cefb4 3223=item B::LOGOP METHOD
54310121 3224
fb9cefb4 3225other
54310121 3226
fb9cefb4 3227=item B::CONDOP METHODS
54310121 3228
fb9cefb4 3229true, false
54310121 3230
fb9cefb4 3231=item B::LISTOP METHOD
54310121 3232
fb9cefb4 3233children
54310121 3234
fb9cefb4 3235=item B::PMOP METHODS
54310121 3236
fb9cefb4 3237pmreplroot, pmreplstart, pmnext, pmregexp, pmflags, pmpermflags, precomp
54310121 3238
fb9cefb4 3239=item B::SVOP METHOD
54310121 3240
fb9cefb4 3241sv
54310121 3242
fb9cefb4 3243=item B::GVOP METHOD
54310121 3244
fb9cefb4 3245gv
54310121 3246
fb9cefb4 3247=item B::PVOP METHOD
54310121 3248
fb9cefb4 3249pv
54310121 3250
fb9cefb4 3251=item B::LOOP METHODS
54310121 3252
fb9cefb4 3253redoop, nextop, lastop
54310121 3254
fb9cefb4 3255=item B::COP METHODS
54310121 3256
fb9cefb4 3257label, stash, filegv, cop_seq, arybase, line
54310121 3258
fb9cefb4 3259=back
54310121 3260
fb9cefb4 3261=item FUNCTIONS EXPORTED BY C<B>
54310121 3262
fb9cefb4
GS
3263main_cv, main_root, main_start, comppadlist, sv_undef, sv_yes, sv_no,
3264walkoptree(OP, METHOD), walkoptree_debug(DEBUG), walksymtable(SYMREF,
3265METHOD, RECURSE), svref_2object(SV), ppname(OPNUM), hash(STR), cast_I32(I),
3266minus_c, cstring(STR), class(OBJ), threadsv_names, byteload_fh(FILEHANDLE)
54310121 3267
fb9cefb4 3268=item AUTHOR
54310121 3269
fb9cefb4
GS
3270=head2 B::Asmdata - Autogenerated data about Perl ops, used to generate
3271bytecode
54310121 3272
fb9cefb4 3273=item SYNOPSIS
54310121 3274
fb9cefb4 3275=item DESCRIPTION
54310121 3276
fb9cefb4 3277=item AUTHOR
54310121 3278
fb9cefb4 3279=head2 B::Assembler - Assemble Perl bytecode
54310121 3280
fb9cefb4 3281=item SYNOPSIS
54310121 3282
fb9cefb4 3283=item DESCRIPTION
54310121 3284
fb9cefb4 3285=item AUTHOR
54310121 3286
fb9cefb4 3287=head2 B::Bblock - Walk basic blocks
54310121 3288
fb9cefb4 3289=item SYNOPSIS
54310121 3290
fb9cefb4 3291=item DESCRIPTION
54310121 3292
fb9cefb4 3293=item AUTHOR
54310121 3294
fb9cefb4 3295=head2 B::Bytecode - Perl compiler's bytecode backend
54310121 3296
fb9cefb4 3297=item SYNOPSIS
54310121 3298
fb9cefb4
GS
3299=item DESCRIPTION
3300
3301=item OPTIONS
3302
3303B<-ofilename>, B<-->, B<-f>, B<-fcompress-nullops>,
3304B<-fomit-sequence-numbers>, B<-fbypass-nullops>, B<-fstrip-syntax-tree>,
3305B<-On>, B<-D>, B<-Do>, B<-Db>, B<-Da>, B<-DC>, B<-S>, B<-m>
3306
3307=item BUGS
3308
3309=item AUTHOR
3310
3311=head2 B::C - Perl compiler's C backend
3312
3313=item SYNOPSIS
3314
3315=item DESCRIPTION
3316
3317=item OPTIONS
3318
3319B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-D>, B<-Do>, B<-Dc>, B<-DA>,
3320B<-DC>, B<-DM>, B<-f>, B<-fcog>, B<-fno-cog>, B<-On>
3321
3322=item EXAMPLES
3323
3324=item BUGS
3325
3326=item AUTHOR
3327
3328=head2 B::CC - Perl compiler's optimized C translation backend
3329
3330=item SYNOPSIS
3331
3332=item DESCRIPTION
3333
3334=item OPTIONS
3335
3336B<-ofilename>, B<-v>, B<-->, B<-uPackname>, B<-mModulename>, B<-D>, B<-Dr>,
3337B<-DO>, B<-Ds>, B<-Dp>, B<-Dq>, B<-Dl>, B<-Dt>, B<-f>,
3338B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
3339
3340=item EXAMPLES
3341
3342=item BUGS
3343
3344=item DIFFERENCES
3345
3346=over
3347
3348=item Loops
3349
3350=item Context of ".."
3351
3352=item Arithmetic
3353
3354=item Deprecated features
3355
3356=back
3357
3358=item AUTHOR
3359
3360=head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
3361
3362=item SYNOPSIS
3363
3364=item DESCRIPTION
3365
3366=item AUTHOR
3367
3368=head2 B::Deparse - Perl compiler backend to produce perl code
3369
3370=item SYNOPSIS
3371
3372=item DESCRIPTION
3373
3374=item OPTIONS
3375
3376B<-p>, B<-u>I<PACKAGE>, B<-l>, B<-s>I<LETTERS>, B<C>
3377
3378=item BUGS
3379
3380=item AUTHOR
3381
3382=head2 B::Disassembler - Disassemble Perl bytecode
3383
3384=item SYNOPSIS
3385
3386=item DESCRIPTION
3387
3388=item AUTHOR
3389
3390=head2 B::Lint - Perl lint
3391
3392=item SYNOPSIS
3393
3394=item DESCRIPTION
3395
3396=item OPTIONS AND LINT CHECKS
3397
3398B<context>, B<implicit-read> and B<implicit-write>, B<dollar-underscore>,
3399B<private-names>, B<undefined-subs>, B<regexp-variables>, B<all>, B<none>
3400
3401=item NON LINT-CHECK OPTIONS
3402
3403B<-u Package>
3404
3405=item BUGS
3406
3407=item AUTHOR
3408
3409=head2 B::O, O - Generic interface to Perl Compiler backends
3410
3411=item SYNOPSIS
3412
3413=item DESCRIPTION
3414
3415=item CONVENTIONS
3416
3417=item IMPLEMENTATION
3418
3419=item AUTHOR
3420
3421=head2 B::Showlex - Show lexical variables used in functions or files
3422
3423=item SYNOPSIS
3424
3425=item DESCRIPTION
3426
3427=item AUTHOR
3428
3429=head2 B::Stackobj - Helper module for CC backend
3430
3431=item SYNOPSIS
3432
3433=item DESCRIPTION
3434
3435=item AUTHOR
3436
3437=head2 B::Terse - Walk Perl syntax tree, printing terse info about ops
3438
3439=item SYNOPSIS
3440
3441=item DESCRIPTION
3442
3443=item AUTHOR
3444
3445=head2 B::Xref - Generates cross reference reports for Perl programs
3446
3447=item SYNOPSIS
3448
3449=item DESCRIPTION
3450
3451=item OPTIONS
3452
3453C<-oFILENAME>, C<-r>, C<-D[tO]>
3454
3455=item BUGS
3456
3457=item AUTHOR
3458
3459=head2 Benchmark - benchmark running times of code
3460
3461=item SYNOPSIS
3462
3463=item DESCRIPTION
3464
3465=over
3466
3467=item Methods
3468
3469new, debug
3470
3471=item Standard Exports
3472
3473timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ),
3474timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr (
3475TIMEDIFF, [ STYLE, [ FORMAT ] ] )
3476
3477=item Optional Exports
3478
3479clearcache ( COUNT ), clearallcache ( ), disablecache ( ), enablecache ( )
3480
3481=back
3482
3483=item NOTES
3484
3485=item INHERITANCE
3486
3487=item CAVEATS
3488
3489=item AUTHORS
3490
3491=item MODIFICATION HISTORY
3492
3493=head2 CGI - Simple Common Gateway Interface Class
3494
3495=item SYNOPSIS
3496
3497=item ABSTRACT
3498
3499=item DESCRIPTION
3500
3501=over
3502
3503=item PROGRAMMING STYLE
3504
3505=item CALLING CGI.PM ROUTINES
3506
35071. Use another name for the argument, if one is available. Forexample,
3508-value is an alias for -values, 2. Change the capitalization, e.g. -Values,
35093. Put quotes around the argument name, e.g. '-values'
3510
3511=item CREATING A NEW QUERY OBJECT (OBJECT-ORIENTED STYLE):
3512
3513=item CREATING A NEW QUERY OBJECT FROM AN INPUT FILE
3514
3515=item FETCHING A LIST OF KEYWORDS FROM THE QUERY:
3516
3517=item FETCHING THE NAMES OF ALL THE PARAMETERS PASSED TO YOUR SCRIPT:
3518
3519=item FETCHING THE VALUE OR VALUES OF A SINGLE NAMED PARAMETER:
3520
3521=item SETTING THE VALUE(S) OF A NAMED PARAMETER:
3522
3523=item APPENDING ADDITIONAL VALUES TO A NAMED PARAMETER:
3524
3525=item IMPORTING ALL PARAMETERS INTO A NAMESPACE:
3526
3527=item DELETING A PARAMETER COMPLETELY:
3528
3529=item DELETING ALL PARAMETERS:
3530
3531=item DIRECT ACCESS TO THE PARAMETER LIST:
3532
3533=item SAVING THE STATE OF THE SCRIPT TO A FILE:
3534
3535=item USING THE FUNCTION-ORIENTED INTERFACE
3536
3537B<:cgi>, B<:form>, B<:html2>, B<:html3>, B<:netscape>, B<:html>,
3538B<:standard>, B<:all>
3539
3540=item PRAGMAS
3541
3542-any, -compile, -nph, -autoload, -no_debug, -private_tempfiles
3543
3544=back
3545
3546=item GENERATING DYNAMIC DOCUMENTS
3547
3548=over
3549
3550=item CREATING A STANDARD HTTP HEADER:
3551
3552=item GENERATING A REDIRECTION HEADER
3553
3554=item CREATING THE HTML DOCUMENT HEADER
3555
3556B<Parameters:>, 4, 5, 6..
3557
3558=item ENDING THE HTML DOCUMENT:
3559
3560=item CREATING A SELF-REFERENCING URL THAT PRESERVES STATE INFORMATION:
3561
3562=item OBTAINING THE SCRIPT'S URL
3563
3564B<-absolute>, B<-relative>, B<-full>, B<-path> (B<-path_info>), B<-query>
3565(B<-query_string>)
3566
3567=back
3568
3569=item CREATING STANDARD HTML ELEMENTS:
3570
3571=over
3572
3573=item PROVIDING ARGUMENTS TO HTML SHORTCUTS
3574
3575=item THE DISTRIBUTIVE PROPERTY OF HTML SHORTCUTS
3576
3577=item HTML SHORTCUTS AND LIST INTERPOLATION
3578
3579=item NON-STANDARD HTML SHORTCUTS
3580
3581=back
3582
3583=item CREATING FILL-OUT FORMS:
3584
3585=over
3586
3587=item CREATING AN ISINDEX TAG
3588
3589=item STARTING AND ENDING A FORM
3590
3591B<application/x-www-form-urlencoded>, B<multipart/form-data>
3592
3593=item CREATING A TEXT FIELD
3594
3595B<Parameters>
3596
3597=item CREATING A BIG TEXT FIELD
3598
3599=item CREATING A PASSWORD FIELD
3600
3601=item CREATING A FILE UPLOAD FIELD
3602
3603B<Parameters>
3604
3605=item CREATING A POPUP MENU
3606
3607=item CREATING A SCROLLING LIST
3608
3609B<Parameters:>