This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Regenerate perltoc and perlmodlib
[perl5.git] / pod / perltoc.pod
CommitLineData
cb1a09d0 1
d53e588d
JH
2# !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
3# This file is autogenerated by buildtoc from all the other pods.
4# Edit those files and run buildtoc --build-toc to effect changes.
d53e588d 5
cb1a09d0
AD
6=head1 NAME
7
8perltoc - perl documentation table of contents
9
10=head1 DESCRIPTION
11
12This page provides a brief table of contents for the rest of the Perl
28757baa 13documentation set. It is meant to be scanned quickly or grepped
402d0d99 14through to locate the proper section you're looking for.
cb1a09d0
AD
15
16=head1 BASIC DOCUMENTATION
17
cb1a09d0
AD
18=head2 perl - Practical Extraction and Report Language
19
d420ca49 20=over 4
a45bd81d 21
cb1a09d0
AD
22=item SYNOPSIS
23
69fba242
JH
24=over 4
25
26=item Overview
27
28=item Tutorials
29
cb52f95f
JH
30=item Reference Manual
31
69fba242
JH
32=item Internals and C Language Interface
33
34=item Miscellaneous
35
d8416318
JH
36=item Language-Specific
37
69fba242
JH
38=item Platform-Specific
39
40=back
41
cb1a09d0
AD
42=item DESCRIPTION
43
14218588 44=item AVAILABILITY
cb1a09d0
AD
45
46=item ENVIRONMENT
47
cb1a09d0
AD
48=item AUTHOR
49
cb1a09d0
AD
50=item FILES
51
cb1a09d0
AD
52=item SEE ALSO
53
cb1a09d0
AD
54=item DIAGNOSTICS
55
cb1a09d0
AD
56=item BUGS
57
cb1a09d0
AD
58=item NOTES
59
a45bd81d
GS
60=back
61
10151d09
JH
62=head2 perlintro -- a brief introduction and overview of Perl
63
64=over 4
65
66=item DESCRIPTION
67
68=over 4
69
70=item What is Perl?
71
72=item Running Perl programs
73
74=item Basic syntax overview
75
76=item Perl variable types
77
78Scalars, Arrays, Hashes
79
80=item Variable scoping
81
82=item Conditional and looping constructs
83
84if, while, for, foreach
85
86=item Builtin operators and functions
87
88Arithmetic, Numeric comparison, String comparison, Boolean logic,
89Miscellaneous
90
91=item Files and I/O
92
93=item Regular expressions
94
95Simple matching, Simple substitution, More complex regular expressions,
96Parentheses for capturing, Other regexp features
97
98=item Writing subroutines
99
100=item OO Perl
101
102=item Using Perl modules
103
104=back
105
106=item AUTHOR
107
108=back
109
41630250 110=head2 perlreftut - Mark's very short tutorial about references
68dc0745 111
d420ca49 112=over 4
a45bd81d 113
68dc0745
PP
114=item DESCRIPTION
115
41630250
JH
116=item Who Needs Complicated Data Structures?
117
118=item The Solution
119
120=item Syntax
121
983dbef6 122=over 4
68dc0745 123
41630250 124=item Making References
68dc0745 125
41630250 126=item Using References
68dc0745 127
41630250
JH
128=item An Example
129
130=item Arrow Rule
68dc0745 131
2a551100 132=back
68dc0745 133
41630250 134=item Solution
68dc0745 135
41630250
JH
136=item The Rest
137
138=item Summary
139
140=item Credits
68dc0745 141
2a551100 142=over 4
68dc0745 143
41630250 144=item Distribution Conditions
68dc0745 145
41630250 146=back
68dc0745 147
a45bd81d
GS
148=back
149
41630250 150=head2 perldsc - Perl Data Structures Cookbook
68dc0745 151
41630250 152=over 4
a45bd81d 153
41630250 154=item DESCRIPTION
68dc0745 155
41630250
JH
156arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
157more elaborate constructs
68dc0745 158
41630250 159=item REFERENCES
68dc0745 160
41630250 161=item COMMON MISTAKES
68dc0745 162
41630250 163=item CAVEAT ON PRECEDENCE
68dc0745 164
41630250 165=item WHY YOU SHOULD ALWAYS C<use strict>
68dc0745 166
41630250 167=item DEBUGGING
983dbef6 168
41630250 169=item CODE EXAMPLES
983dbef6 170
41630250 171=item ARRAYS OF ARRAYS
68dc0745 172
41630250 173=over 4
68dc0745 174
41630250 175=item Declaration of an ARRAY OF ARRAYS
983dbef6 176
41630250
JH
177=item Generation of an ARRAY OF ARRAYS
178
179=item Access and Printing of an ARRAY OF ARRAYS
983dbef6 180
4755096e 181=back
68dc0745 182
41630250 183=item HASHES OF ARRAYS
68dc0745 184
d420ca49 185=over 4
68dc0745 186
41630250
JH
187=item Declaration of a HASH OF ARRAYS
188
189=item Generation of a HASH OF ARRAYS
190
191=item Access and Printing of a HASH OF ARRAYS
68dc0745 192
a45bd81d
GS
193=back
194
41630250 195=item ARRAYS OF HASHES
a45bd81d 196
d420ca49 197=over 4
68dc0745 198
41630250 199=item Declaration of an ARRAY OF HASHES
68dc0745 200
41630250 201=item Generation of an ARRAY OF HASHES
68dc0745 202
41630250 203=item Access and Printing of an ARRAY OF HASHES
68dc0745 204
41630250 205=back
0d53b15f 206
41630250 207=item HASHES OF HASHES
68dc0745 208
41630250 209=over 4
3fe9a6f1 210
41630250 211=item Declaration of a HASH OF HASHES
68dc0745 212
41630250 213=item Generation of a HASH OF HASHES
68dc0745 214
41630250 215=item Access and Printing of a HASH OF HASHES
68dc0745 216
41630250 217=back
68dc0745 218
41630250 219=item MORE ELABORATE RECORDS
68dc0745 220
41630250 221=over 4
68dc0745 222
41630250
JH
223=item Declaration of MORE ELABORATE RECORDS
224
225=item Declaration of a HASH OF COMPLEX RECORDS
226
227=item Generation of a HASH OF COMPLEX RECORDS
68dc0745 228
4755096e 229=back
68dc0745 230
41630250
JH
231=item Database Ties
232
233=item SEE ALSO
234
235=item AUTHOR
236
4755096e 237=back
193fb0af 238
41630250 239=head2 perllol - Manipulating Arrays of Arrays in Perl
68dc0745 240
d420ca49 241=over 4
68dc0745 242
4755096e 243=item DESCRIPTION
68dc0745 244
d420ca49 245=over 4
68dc0745 246
41630250 247=item Declaration and Access of Arrays of Arrays
4755096e 248
41630250 249=item Growing Your Own
4755096e 250
41630250 251=item Access and Printing
8b9c797b 252
4755096e
GS
253=item Slices
254
68dc0745
PP
255=back
256
4755096e 257=item SEE ALSO
68dc0745 258
41630250
JH
259=item AUTHOR
260
a45bd81d
GS
261=back
262
41630250 263=head2 perlrequick - Perl regular expressions quick start
68dc0745 264
d420ca49 265=over 4
a45bd81d 266
68dc0745
PP
267=item DESCRIPTION
268
41630250
JH
269=item The Guide
270
d420ca49 271=over 4
68dc0745 272
41630250 273=item Simple word matching
68dc0745 274
41630250 275=item Using character classes
68dc0745 276
41630250 277=item Matching this or that
68dc0745 278
41630250 279=item Grouping things and hierarchical matching
68dc0745 280
41630250 281=item Extracting matches
68dc0745 282
41630250 283=item Matching repetitions
68dc0745 284
41630250 285=item More matching
68dc0745 286
41630250 287=item Search and replace
68dc0745 288
41630250 289=item The split operator
14218588 290
41630250 291=back
68dc0745 292
41630250 293=item BUGS
68dc0745 294
41630250 295=item SEE ALSO
68dc0745 296
41630250 297=item AUTHOR AND COPYRIGHT
68dc0745 298
41630250 299=over 4
68dc0745 300
41630250 301=item Acknowledgments
68dc0745 302
41630250 303=back
68dc0745 304
41630250 305=back
2a551100 306
41630250 307=head2 perlretut - Perl regular expressions tutorial
68dc0745 308
41630250 309=over 4
68dc0745 310
41630250 311=item DESCRIPTION
68dc0745 312
41630250 313=item Part 1: The basics
68dc0745 314
41630250 315=over 4
68dc0745 316
41630250 317=item Simple word matching
68dc0745 318
41630250 319=item Using character classes
14218588 320
41630250 321=item Matching this or that
68dc0745 322
41630250 323=item Grouping things and hierarchical matching
68dc0745 324
41630250 325=item Extracting matches
68dc0745 326
41630250 327=item Matching repetitions
68dc0745 328
41630250 329=item Building a regexp
68dc0745 330
41630250 331=item Using regular expressions in Perl
68dc0745 332
41630250 333=back
68dc0745 334
41630250 335=item Part 2: Power tools
68dc0745 336
41630250 337=over 4
68dc0745 338
41630250 339=item More on characters, strings, and character classes
68dc0745 340
41630250 341=item Compiling and saving regular expressions
4755096e 342
41630250 343=item Embedding comments and modifiers in a regular expression
4755096e 344
41630250 345=item Non-capturing groupings
4755096e 346
41630250 347=item Looking ahead and looking behind
68dc0745 348
41630250 349=item Using independent subexpressions to prevent backtracking
a45bd81d 350
41630250 351=item Conditional expressions
4755096e 352
41630250 353=item A bit of magic: executing Perl code in a regular expression
c2e66d9e 354
41630250 355=item Pragmas and debugging
c2e66d9e 356
41630250 357=back
c2e66d9e 358
41630250 359=item BUGS
c2e66d9e 360
41630250 361=item SEE ALSO
c2e66d9e 362
41630250 363=item AUTHOR AND COPYRIGHT
c2e66d9e 364
41630250 365=over 4
c2e66d9e 366
41630250 367=item Acknowledgments
c2e66d9e 368
41630250 369=back
c2e66d9e 370
41630250 371=back
23be5fc4 372
41630250 373=head2 perlboot - Beginner's Object-Oriented Tutorial
c2e66d9e 374
41630250 375=over 4
c2e66d9e 376
41630250 377=item DESCRIPTION
c2e66d9e 378
41630250 379=over 4
c2e66d9e 380
41630250 381=item If we could talk to the animals...
c2e66d9e 382
41630250 383=item Introducing the method invocation arrow
c2e66d9e 384
41630250 385=item Invoking a barnyard
c2e66d9e 386
41630250 387=item The extra parameter of method invocation
c2e66d9e 388
41630250 389=item Calling a second method to simplify things
c2e66d9e 390
41630250 391=item Inheriting the windpipes
c2e66d9e 392
41630250 393=item A few notes about @ISA
c2e66d9e 394
41630250 395=item Overriding the methods
c2e66d9e 396
41630250 397=item Starting the search from a different place
c2e66d9e 398
41630250 399=item The SUPER way of doing things
c2e66d9e 400
41630250 401=item Where we're at so far...
c2e66d9e 402
41630250 403=item A horse is a horse, of course of course -- or is it?
c2e66d9e 404
41630250 405=item Invoking an instance method
c2e66d9e 406
41630250 407=item Accessing the instance data
c2e66d9e 408
41630250 409=item How to build a horse
c2e66d9e 410
41630250 411=item Inheriting the constructor
c2e66d9e 412
41630250 413=item Making a method work with either classes or instances
c2e66d9e 414
41630250 415=item Adding parameters to a method
68dc0745 416
41630250 417=item More interesting instances
a45bd81d 418
41630250 419=item A horse of a different color
68dc0745 420
41630250 421=item Summary
4755096e 422
41630250 423=back
4755096e 424
41630250 425=item SEE ALSO
68dc0745 426
41630250 427=item COPYRIGHT
68dc0745 428
41630250 429=back
46fc3d4c 430
41630250 431=head2 perltoot - Tom's object-oriented tutorial for perl
68dc0745 432
41630250 433=over 4
68dc0745 434
41630250 435=item DESCRIPTION
14218588 436
41630250 437=item Creating a Class
2a551100 438
41630250 439=over 4
68dc0745 440
41630250 441=item Object Representation
68dc0745 442
41630250 443=item Class Interface
68dc0745 444
41630250 445=item Constructors and Instance Methods
4755096e 446
41630250 447=item Planning for the Future: Better Constructors
4755096e 448
41630250 449=item Destructors
68dc0745 450
41630250 451=item Other Object Methods
68dc0745 452
4755096e
GS
453=back
454
41630250 455=item Class Data
68dc0745 456
d420ca49 457=over 4
68dc0745 458
41630250 459=item Accessing Class Data
68dc0745 460
41630250 461=item Debugging Methods
68dc0745 462
41630250 463=item Class Destructors
68dc0745 464
41630250 465=item Documenting the Interface
14218588 466
41630250 467=back
68dc0745 468
41630250 469=item Aggregation
68dc0745 470
41630250 471=item Inheritance
68dc0745 472
d420ca49 473=over 4
68dc0745 474
41630250 475=item Overridden Methods
68dc0745 476
41630250 477=item Multiple Inheritance
68dc0745 478
41630250 479=item UNIVERSAL: The Root of All Objects
68dc0745 480
4755096e 481=back
68dc0745 482
41630250 483=item Alternate Object Representations
68dc0745 484
d420ca49 485=over 4
68dc0745 486
41630250 487=item Arrays as Objects
68dc0745 488
41630250 489=item Closures as Objects
68dc0745 490
4755096e 491=back
68dc0745 492
41630250 493=item AUTOLOAD: Proxy Methods
68dc0745 494
d420ca49 495=over 4
68dc0745 496
41630250 497=item Autoloaded Data Methods
68dc0745 498
41630250 499=item Inherited Autoloaded Data Methods
14218588 500
4755096e 501=back
68dc0745 502
41630250 503=item Metaclassical Tools
68dc0745 504
d420ca49 505=over 4
68dc0745 506
41630250 507=item Class::Struct
68dc0745 508
41630250 509=item Data Members as Variables
68dc0745
PP
510
511=back
512
41630250 513=item NOTES
68dc0745 514
d420ca49 515=over 4
68dc0745 516
41630250 517=item Object Terminology
14218588 518
41630250 519=back
68dc0745 520
41630250 521=item SEE ALSO
68dc0745 522
41630250 523=item AUTHOR AND COPYRIGHT
68dc0745 524
41630250 525=item COPYRIGHT
68dc0745 526
41630250 527=over 4
68dc0745 528
41630250 529=item Acknowledgments
14218588 530
4755096e 531=back
68dc0745 532
41630250
JH
533=back
534
535=head2 perltooc - Tom's OO Tutorial for Class Data in Perl
68dc0745 536
d420ca49 537=over 4
68dc0745 538
4755096e 539=item DESCRIPTION
68dc0745 540
41630250
JH
541=item Class Data in a Can
542
543=item Class Data as Package Variables
68dc0745 544
d420ca49 545=over 4
68dc0745 546
41630250 547=item Putting All Your Eggs in One Basket
68dc0745 548
41630250 549=item Inheritance Concerns
68dc0745 550
41630250 551=item The Eponymous Meta-Object
68dc0745 552
41630250 553=item Indirect References to Class Data
68dc0745 554
41630250 555=item Monadic Classes
68dc0745 556
41630250 557=item Translucent Attributes
68dc0745 558
41630250 559=back
68dc0745 560
41630250 561=item Class Data as Lexical Variables
68dc0745 562
41630250 563=over 4
68dc0745 564
41630250 565=item Privacy and Responsibility
68dc0745 566
41630250 567=item File-Scoped Lexicals
68dc0745 568
41630250 569=item More Inheritance Concerns
68dc0745 570
41630250 571=item Locking the Door and Throwing Away the Key
68dc0745 572
41630250 573=item Translucency Revisited
14218588 574
68dc0745
PP
575=back
576
41630250
JH
577=item NOTES
578
579=item SEE ALSO
580
581=item AUTHOR AND COPYRIGHT
582
583=item ACKNOWLEDGEMENTS
584
585=item HISTORY
586
a45bd81d
GS
587=back
588
41630250 589=head2 perlbot - Bag'o Object Tricks (the BOT)
68dc0745 590
d420ca49 591=over 4
a45bd81d 592
68dc0745
PP
593=item DESCRIPTION
594
41630250 595=item OO SCALING TIPS
68dc0745 596
41630250 597=item INSTANCE VARIABLES
8a93676d 598
41630250 599=item SCALAR INSTANCE VARIABLES
68dc0745 600
41630250 601=item INSTANCE VARIABLE INHERITANCE
68dc0745 602
41630250 603=item OBJECT RELATIONSHIPS
8a93676d 604
41630250 605=item OVERRIDING SUPERCLASS METHODS
8a93676d 606
41630250 607=item USING RELATIONSHIP WITH SDBM
68dc0745 608
41630250 609=item THINKING OF CODE REUSE
68dc0745 610
41630250 611=item CLASS CONTEXT AND THE OBJECT
68dc0745 612
41630250 613=item INHERITING A CONSTRUCTOR
8a93676d 614
41630250 615=item DELEGATION
8a93676d
SB
616
617=item SEE ALSO
618
c2e66d9e 619=back
68dc0745 620
41630250 621=head2 perlstyle - Perl style guide
8a93676d
SB
622
623=over 4
624
625=item DESCRIPTION
626
41630250 627=back
8a93676d 628
41630250 629=head2 perlcheat - Perl 5 Cheat Sheet
8a93676d 630
41630250 631=over 4
8a93676d 632
41630250 633=item DESCRIPTION
8a93676d 634
41630250 635=over 4
68dc0745 636
41630250 637=item The sheet
68dc0745 638
c2e66d9e 639=back
68dc0745 640
41630250 641=item ACKNOWLEDGEMENTS
68dc0745 642
41630250 643=item AUTHOR
c2e66d9e 644
41630250 645=item SEE ALSO
68dc0745 646
4755096e 647=back
68dc0745 648
c2e66d9e 649=head2 perltrap - Perl traps for the unwary
68dc0745 650
d420ca49 651=over 4
68dc0745 652
c2e66d9e 653=item DESCRIPTION
68dc0745 654
d420ca49 655=over 4
68dc0745 656
c2e66d9e 657=item Awk Traps
68dc0745 658
8b9c797b 659=item C/C++ Traps
4755096e 660
c2e66d9e 661=item Sed Traps
4755096e 662
c2e66d9e 663=item Shell Traps
4755096e 664
c2e66d9e 665=item Perl Traps
68dc0745 666
c2e66d9e 667=item Perl4 to Perl5 Traps
68dc0745 668
c2e66d9e
GS
669Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
670Traps, General data type traps, Context Traps - scalar, list contexts,
671Precedence Traps, General Regular Expression Traps using s///, etc,
672Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
673
674=item Discontinuance, Deprecation, and BugFix traps
675
676Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
677Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
678Discontinuance, Deprecation, Discontinuance, Discontinuance
679
680=item Parsing Traps
681
07fcf8ff 682Parsing, Parsing, Parsing, Parsing, Parsing
c2e66d9e
GS
683
684=item Numerical Traps
685
686Numerical, Numerical, Numerical, Bitwise string ops
687
688=item General data type traps
689
690(Arrays), (Arrays), (Hashes), (Globs), (Globs), (Scalar String),
691(Constants), (Scalars), (Variable Suicide)
692
693=item Context Traps - scalar, list contexts
694
695(list context), (scalar context), (scalar context), (list, builtin)
696
697=item Precedence Traps
698
699Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
700Precedence
701
702=item General Regular Expression Traps using s///, etc.
703
704Regular Expression, Regular Expression, Regular Expression, Regular
705Expression, Regular Expression, Regular Expression, Regular Expression,
0d53b15f 706Regular Expression, Regular Expression
c2e66d9e
GS
707
708=item Subroutine, Signal, Sorting Traps
709
710(Signals), (Sort Subroutine), warn() won't let you specify a filehandle
711
712=item OS Traps
713
714(SysV), (SysV)
715
716=item Interpolation Traps
717
718Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
719Interpolation, Interpolation, Interpolation, Interpolation
720
721=item DBM Traps
722
723DBM, DBM
724
725=item Unclassified Traps
726
727C<require>/C<do> trap using returned value, C<split> on empty string with
728LIMIT specified
68dc0745 729
4755096e 730=back
68dc0745 731
c2e66d9e 732=back
14218588 733
41630250 734=head2 perldebtut - Perl debugging tutorial
e969ef56
JH
735
736=over 4
737
738=item DESCRIPTION
739
41630250 740=item use strict
e969ef56 741
41630250 742=item Looking at data and -w and v
e969ef56 743
41630250 744=item help
e969ef56 745
41630250 746=item Stepping through code
e969ef56 747
41630250 748=item Placeholder for a, w, t, T
e969ef56 749
41630250 750=item REGULAR EXPRESSIONS
e969ef56 751
41630250 752=item OUTPUT TIPS
e969ef56 753
41630250 754=item CGI
68dc0745 755
41630250 756=item GUIs
c2e66d9e 757
41630250 758=item SUMMARY
c2e66d9e 759
41630250 760=item SEE ALSO
68dc0745 761
41630250 762=item AUTHOR
68dc0745 763
41630250 764=item CONTRIBUTORS
c2e66d9e 765
41630250 766=back
c2e66d9e 767
407700fe
RGS
768=head2 perlfaq - frequently asked questions about Perl ($Date: 2005/03/27
76907:21:21 $)
c2e66d9e 770
41630250 771=over 4
c2e66d9e 772
41630250 773=item DESCRIPTION
68dc0745 774
41630250 775=over 4
68dc0745 776
41630250 777=item Where to get the perlfaq
c2e66d9e 778
41630250
JH
779=item How to contribute to the perlfaq
780
781=item What will happen if you mail your Perl programming problems to the
782authors
c2e66d9e 783
e993db8c
JH
784=back
785
41630250
JH
786=item Credits
787
788=item Author and Copyright Information
e993db8c
JH
789
790=over 4
c2e66d9e 791
41630250
JH
792=item Bundled Distributions
793
794=item Disclaimer
ff426ff2 795
4755096e 796=back
68dc0745 797
41630250 798=item Table of Contents
68dc0745 799
41630250
JH
800perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2
801- Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4
802- Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular
803Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System
804Interaction, perlfaq9 - Networking
68dc0745 805
41630250 806=item The Questions
68dc0745 807
d420ca49 808=over 4
68dc0745 809
41630250 810=item L<perlfaq1>: General Questions About Perl
68dc0745 811
41630250 812=item L<perlfaq2>: Obtaining and Learning about Perl
a45bd81d 813
41630250 814=item L<perlfaq3>: Programming Tools
68dc0745 815
41630250 816=item L<perlfaq4>: Data Manipulation
a45bd81d 817
41630250 818=item L<perlfaq5>: Files and Formats
68dc0745 819
41630250 820=item L<perlfaq6>: Regular Expressions
68dc0745 821
41630250 822=item L<perlfaq7>: General Perl Language Issues
68dc0745 823
41630250 824=item L<perlfaq8>: System Interaction
68dc0745 825
41630250 826=item L<perlfaq9>: Networking
68dc0745 827
41630250 828=back
68dc0745 829
4755096e 830=back
68dc0745 831
407700fe
RGS
832=head2 perlfaq1 - General Questions About Perl ($Revision: 1.17 $, $Date:
8332005/01/31 15:52:15 $)
10862624 834
d420ca49 835=over 4
10862624
RF
836
837=item DESCRIPTION
838
41630250 839=over 4
10862624 840
41630250 841=item What is Perl?
d396a558 842
41630250 843=item Who supports Perl? Who develops it? Why is it free?
10862624 844
41630250 845=item Which version of Perl should I use?
10862624 846
407700fe 847=item What are perl4, perl5, or perl6?
10862624 848
41630250 849=item What is Ponie?
10862624 850
41630250 851=item What is perl6?
10862624 852
41630250 853=item How stable is Perl?
10862624 854
41630250 855=item Is Perl difficult to learn?
10862624 856
41630250
JH
857=item How does Perl compare with other languages like Java, Python, REXX,
858Scheme, or Tcl?
10862624 859
41630250 860=item Can I do [task] in Perl?
10862624 861
41630250 862=item When shouldn't I program in Perl?
10862624 863
41630250
JH
864=item What's the difference between "perl" and "Perl"?
865
866=item Is it a Perl program or a Perl script?
867
868=item What is a JAPH?
869
870=item Where can I get a list of Larry Wall witticisms?
871
872=item How can I convince my sysadmin/supervisor/employees to use version
8735/5.6.1/Perl instead of some other language?
10862624
RF
874
875=back
876
41630250
JH
877=item AUTHOR AND COPYRIGHT
878
879=back
880
407700fe
RGS
881=head2 perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.31 $,
882$Date: 2005/01/31 15:54:44 $)
68dc0745 883
d420ca49 884=over 4
68dc0745 885
4755096e 886=item DESCRIPTION
68dc0745 887
d420ca49 888=over 4
68dc0745 889
41630250 890=item What machines support Perl? Where do I get it?
68dc0745 891
41630250 892=item How can I get a binary version of Perl?
68dc0745 893
41630250 894=item I don't have a C compiler on my system. How can I compile perl?
68dc0745 895
41630250
JH
896=item I copied the Perl binary from one machine to another, but scripts
897don't work.
68dc0745 898
41630250
JH
899=item I grabbed the sources and tried to compile but gdbm/dynamic
900loading/malloc/linking/... failed. How do I make it work?
68dc0745 901
41630250
JH
902=item What modules and extensions are available for Perl? What is CPAN?
903What does CPAN/src/... mean?
68dc0745 904
41630250 905=item Is there an ISO or ANSI certified version of Perl?
68dc0745 906
41630250 907=item Where can I get information on Perl?
68dc0745 908
41630250 909=item What are the Perl newsgroups on Usenet? Where do I post questions?
68dc0745 910
41630250 911=item Where should I post source code?
68dc0745 912
41630250 913=item Perl Books
68dc0745 914
41630250 915References, Tutorials, Task-Oriented, Special Topics
68dc0745 916
41630250 917=item Perl in Magazines
68dc0745 918
41630250 919=item Perl on the Net: FTP and WWW Access
14218588 920
41630250 921=item What mailing lists are there for Perl?
68dc0745 922
41630250
JH
923=item Archives of comp.lang.perl.misc
924
925=item Where can I buy a commercial version of Perl?
926
927=item Where do I send bug reports?
928
929=item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
68dc0745 930
a45bd81d
GS
931=back
932
41630250
JH
933=item AUTHOR AND COPYRIGHT
934
935=back
936
407700fe
RGS
937=head2 perlfaq3 - Programming Tools ($Revision: 1.47 $, $Date: 2005/03/27
93807:21:22 $)
68dc0745 939
d420ca49 940=over 4
a45bd81d 941
68dc0745
PP
942=item DESCRIPTION
943
d420ca49 944=over 4
68dc0745 945
41630250 946=item How do I do (anything)?
68dc0745 947
41630250 948=item How can I use Perl interactively?
68dc0745 949
41630250 950=item Is there a Perl shell?
68dc0745 951
41630250 952=item How do I find which modules are installed on my system?
4755096e 953
41630250 954=item How do I debug my Perl programs?
c2e66d9e 955
41630250 956=item How do I profile my Perl programs?
4755096e 957
41630250 958=item How do I cross-reference my Perl programs?
4755096e 959
41630250 960=item Is there a pretty-printer (formatter) for Perl?
4755096e 961
41630250 962=item Is there a ctags for Perl?
c2e66d9e 963
41630250 964=item Is there an IDE or Windows Perl Editor?
c2e66d9e 965
e4bb216d
NC
966Eclipse, Komodo, Open Perl IDE, OptiPerl, PerlBuilder, visiPerl+, Visual
967Perl, GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, Vile, Vim, Codewright,
968MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, Affrus, Alpha, BBEdit and
969BBEdit Lite
4d4e713d 970
41630250 971=item Where can I get Perl macros for vi?
c2e66d9e 972
41630250 973=item Where can I get perl-mode for emacs?
c2e66d9e 974
41630250 975=item How can I use curses with Perl?
c2e66d9e 976
41630250 977=item How can I use X or Tk with Perl?
c2e66d9e 978
41630250 979=item How can I make my Perl program run faster?
c2e66d9e 980
41630250 981=item How can I make my Perl program take less memory?
4755096e 982
41630250
JH
983Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and
984stringification, Pass by reference, Tie large variables to disk
4755096e 985
41630250 986=item Is it safe to return a reference to local or lexical data?
4755096e 987
41630250 988=item How can I free an array or hash so my program shrinks?
4755096e 989
41630250 990=item How can I make my CGI script more efficient?
4755096e 991
41630250 992=item How can I hide the source for my Perl program?
c2e66d9e 993
41630250 994=item How can I compile my Perl program into byte code or C?
4755096e 995
41630250 996=item How can I compile Perl into Java?
4755096e 997
41630250 998=item How can I get C<#!perl> to work on [MS-DOS,NT,...]?
2a551100 999
41630250 1000=item Can I write useful Perl programs on the command line?
4755096e 1001
41630250 1002=item Why don't Perl one-liners work on my DOS/Mac/VMS system?
4755096e 1003
41630250 1004=item Where can I learn about CGI or Web programming in Perl?
4755096e 1005
41630250 1006=item Where can I learn about object-oriented Perl programming?
4755096e 1007
41630250 1008=item Where can I learn about linking C with Perl? [h2xs, xsubpp]
4755096e 1009
407700fe
RGS
1010=item I've read perlembed, perlguts, etc., but I can't embed perl in my C
1011program; what am I doing wrong?
4755096e 1012
41630250 1013=item When I tried to run my script, I got this message. What does it mean?
4755096e 1014
41630250 1015=item What's MakeMaker?
4755096e
GS
1016
1017=back
1018
41630250
JH
1019=item AUTHOR AND COPYRIGHT
1020
1021=back
1022
407700fe
RGS
1023=head2 perlfaq4 - Data Manipulation ($Revision: 1.61 $, $Date: 2005/03/11
102416:27:53 $)
4755096e 1025
d420ca49 1026=over 4
4755096e 1027
41630250 1028=item DESCRIPTION
4755096e 1029
41630250 1030=item Data: Numbers
4755096e 1031
41630250 1032=over 4
4755096e 1033
41630250
JH
1034=item Why am I getting long decimals (eg, 19.9499999999999) instead of the
1035numbers I should be getting (eg, 19.95)?
4755096e 1036
5538b230
JH
1037=item Why is int() broken?
1038
41630250 1039=item Why isn't my octal data interpreted correctly?
4755096e 1040
41630250
JH
1041=item Does Perl have a round() function? What about ceil() and floor()?
1042Trig functions?
4755096e 1043
5538b230 1044=item How do I convert between numeric representations/bases/radixes?
4755096e 1045
41630250
JH
1046How do I convert hexadecimal into decimal, How do I convert from decimal to
1047hexadecimal, How do I convert from octal to decimal, How do I convert from
1048decimal to octal, How do I convert from binary to decimal, How do I convert
1049from decimal to binary
4755096e 1050
41630250 1051=item Why doesn't & work the way I want it to?
4755096e 1052
41630250 1053=item How do I multiply matrices?
2a551100 1054
41630250 1055=item How do I perform an operation on a series of integers?
2a551100 1056
41630250 1057=item How can I output Roman numerals?
4755096e 1058
41630250 1059=item Why aren't my random numbers random?
4755096e 1060
41630250 1061=item How do I get a random number between X and Y?
a9d2c496 1062
4755096e
GS
1063=back
1064
41630250 1065=item Data: Dates
4755096e 1066
41630250 1067=over 4
4755096e 1068
41630250 1069=item How do I find the day or week of the year?
4755096e 1070
d53e588d
JH
1071=item How do I find the current century or millennium?
1072
41630250 1073=item How can I compare two dates and find the difference?
4755096e 1074
41630250 1075=item How can I take a string and turn it into epoch seconds?
34babc16 1076
41630250 1077=item How can I find the Julian Day?
34babc16 1078
41630250 1079=item How do I find yesterday's date?
34babc16 1080
41630250 1081=item Does Perl have a Year 2000 problem? Is Perl Y2K compliant?
34babc16 1082
41630250 1083=back
34babc16 1084
41630250 1085=item Data: Strings
34babc16
JH
1086
1087=over 4
1088
41630250 1089=item How do I validate input?
34babc16 1090
41630250 1091=item How do I unescape a string?
34babc16 1092
41630250 1093=item How do I remove consecutive pairs of characters?
34babc16 1094
41630250 1095=item How do I expand function calls in a string?
34babc16 1096
41630250 1097=item How do I find matching/nesting anything?
34babc16 1098
41630250 1099=item How do I reverse a string?
34babc16 1100
41630250 1101=item How do I expand tabs in a string?
34babc16 1102
41630250 1103=item How do I reformat a paragraph?
34babc16 1104
41630250 1105=item How can I access or change N characters of a string?
34babc16 1106
41630250 1107=item How do I change the Nth occurrence of something?
34babc16 1108
41630250
JH
1109=item How can I count the number of occurrences of a substring within a
1110string?
34babc16 1111
41630250 1112=item How do I capitalize all the words on one line?
493a87da 1113
41630250
JH
1114=item How can I split a [character] delimited string except when inside
1115[character]?
34babc16 1116
41630250 1117=item How do I strip blank space from the beginning/end of a string?
2a551100 1118
41630250 1119=item How do I pad a string with blanks or pad a number with zeroes?
34babc16 1120
41630250 1121=item How do I extract selected columns from a string?
34babc16 1122
41630250 1123=item How do I find the soundex value of a string?
34babc16 1124
41630250 1125=item How can I expand variables in text strings?
34babc16 1126
41630250
JH
1127=item What's wrong with always quoting "$vars"?
1128
1129=item Why don't my E<lt>E<lt>HERE documents work?
1130
1131There must be no space after the E<lt>E<lt> part, There (probably) should
1132be a semicolon at the end, You can't (easily) have any space in front of
1133the tag
2a551100 1134
34babc16
JH
1135=back
1136
41630250 1137=item Data: Arrays
34babc16
JH
1138
1139=over 4
1140
41630250 1141=item What is the difference between a list and an array?
34babc16 1142
41630250 1143=item What is the difference between $array[1] and @array[1]?
34babc16 1144
41630250 1145=item How can I remove duplicate elements from a list or array?
34babc16 1146
41630250 1147a), b), c), d), e)
34babc16 1148
41630250
JH
1149=item How can I tell whether a certain element is contained in a list or
1150array?
4755096e 1151
41630250
JH
1152=item How do I compute the difference of two arrays? How do I compute the
1153intersection of two arrays?
4755096e 1154
41630250 1155=item How do I test whether two arrays or hashes are equal?
4755096e 1156
41630250 1157=item How do I find the first array element for which a condition is true?
4755096e 1158
41630250 1159=item How do I handle linked lists?
4755096e 1160
41630250 1161=item How do I handle circular lists?
4755096e 1162
41630250 1163=item How do I shuffle an array randomly?
4755096e 1164
41630250 1165=item How do I process/modify each element of an array?
4755096e 1166
41630250 1167=item How do I select a random element from an array?
4755096e 1168
41630250 1169=item How do I permute N elements of a list?
4755096e 1170
41630250 1171=item How do I sort an array by (anything)?
4755096e 1172
41630250 1173=item How do I manipulate arrays of bits?
4755096e 1174
41630250 1175=item Why does defined() return true on empty arrays and hashes?
4755096e 1176
c2e66d9e 1177=back
4755096e 1178
41630250 1179=item Data: Hashes (Associative Arrays)
4755096e 1180
d420ca49 1181=over 4
4755096e 1182
41630250 1183=item How do I process an entire hash?
4755096e 1184
41630250
JH
1185=item What happens if I add or remove keys from a hash while iterating over
1186it?
4755096e 1187
41630250 1188=item How do I look up a hash element by value?
4755096e 1189
41630250 1190=item How can I know how many entries are in a hash?
4755096e 1191
41630250 1192=item How do I sort a hash (optionally by value instead of key)?
4755096e 1193
41630250 1194=item How can I always keep my hash sorted?
4755096e 1195
41630250 1196=item What's the difference between "delete" and "undef" with hashes?
4755096e 1197
41630250 1198=item Why don't my tied hashes make the defined/exists distinction?
4755096e 1199
41630250 1200=item How do I reset an each() operation part-way through?
4755096e 1201
41630250 1202=item How can I get the unique keys from two hashes?
4755096e 1203
41630250 1204=item How can I store a multidimensional array in a DBM file?
4755096e 1205
41630250 1206=item How can I make my hash remember the order I put elements into it?
4755096e 1207
41630250
JH
1208=item Why does passing a subroutine an undefined element in a hash create
1209it?
4755096e 1210
41630250
JH
1211=item How can I make the Perl equivalent of a C structure/C++ class/hash or
1212array of hashes or arrays?
4755096e 1213
41630250 1214=item How can I use a reference as a hash key?
4755096e 1215
4755096e
GS
1216=back
1217
41630250 1218=item Data: Misc
4755096e 1219
d420ca49 1220=over 4
4755096e 1221
41630250 1222=item How do I handle binary data correctly?
4755096e 1223
41630250 1224=item How do I determine whether a scalar is a number/whole/integer/float?
4755096e 1225
41630250 1226=item How do I keep persistent data across program calls?
4755096e 1227
41630250 1228=item How do I print out or copy a recursive data structure?
c2e66d9e 1229
41630250 1230=item How do I define methods for every class/object?
c2e66d9e 1231
41630250 1232=item How do I verify a credit card checksum?
c2e66d9e 1233
41630250 1234=item How do I pack arrays of doubles or floats for XS code?
4755096e
GS
1235
1236=back
1237
41630250 1238=item AUTHOR AND COPYRIGHT
4755096e 1239
c2e66d9e
GS
1240=back
1241
407700fe
RGS
1242=head2 perlfaq5 - Files and Formats ($Revision: 1.35 $, $Date: 2005/01/21
124312:26:11 $)
30487ceb
RGS
1244
1245=over 4
1246
1247=item DESCRIPTION
1248
e969ef56
JH
1249=over 4
1250
41630250 1251=item How do I flush/unbuffer an output filehandle? Why must I do this?
30487ceb 1252
41630250
JH
1253=item How do I change one line in a file/delete a line in a file/insert a
1254line in the middle of a file/append to the beginning of a file?
30487ceb 1255
41630250 1256=item How do I count the number of lines in a file?
30487ceb 1257
41630250 1258=item How can I use Perl's C<-i> option from within a program?
30487ceb 1259
407700fe
RGS
1260=item How can I copy a file?
1261
41630250 1262=item How do I make a temporary file name?
30487ceb 1263
41630250 1264=item How can I manipulate fixed-record-length files?
30487ceb 1265
41630250
JH
1266=item How can I make a filehandle local to a subroutine? How do I pass
1267filehandles between subroutines? How do I make an array of filehandles?
e969ef56 1268
41630250 1269=item How can I use a filehandle indirectly?
e969ef56 1270
41630250 1271=item How can I set up a footer format to be used with write()?
30487ceb 1272
41630250 1273=item How can I write() into a string?
30487ceb 1274
41630250 1275=item How can I output my numbers with commas added?
30487ceb 1276
41630250 1277=item How can I translate tildes (~) in a filename?
30487ceb 1278
41630250 1279=item How come when I open a file read-write it wipes it out?
d396a558 1280
41630250
JH
1281=item Why do I sometimes get an "Argument list too long" when I use
1282E<lt>*E<gt>?
d396a558 1283
41630250 1284=item Is there a leak/bug in glob()?
d396a558 1285
41630250 1286=item How can I open a file with a leading ">" or trailing blanks?
d396a558 1287
41630250 1288=item How can I reliably rename a file?
d396a558 1289
41630250 1290=item How can I lock a file?
d396a558 1291
41630250 1292=item Why can't I just open(FH, "E<gt>file.lock")?
d396a558 1293
41630250
JH
1294=item I still don't get locking. I just want to increment the number in
1295the file. How can I do this?
d396a558 1296
41630250
JH
1297=item All I want to do is append a small amount of text to the end of a
1298file. Do I still have to use locking?
d396a558 1299
41630250 1300=item How do I randomly update a binary file?
d396a558 1301
41630250 1302=item How do I get a file's timestamp in perl?
d396a558 1303
41630250 1304=item How do I set a file's timestamp in perl?
d396a558 1305
41630250 1306=item How do I print to more than one file at once?
d396a558 1307
41630250 1308=item How can I read in an entire file all at once?
d396a558 1309
41630250 1310=item How can I read in a file by paragraphs?
d396a558 1311
41630250 1312=item How can I read a single character from a file? From the keyboard?
4755096e 1313
41630250 1314=item How can I tell whether there's a character waiting on a filehandle?
4755096e 1315
41630250 1316=item How do I do a C<tail -f> in perl?
4755096e 1317
41630250 1318=item How do I dup() a filehandle in Perl?
4755096e 1319
41630250 1320=item How do I close a file descriptor by number?
4755096e 1321
41630250
JH
1322=item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't
1323`C:\temp\foo.exe` work?
4755096e 1324
41630250 1325=item Why doesn't glob("*.*") get all the files?
4755096e 1326
41630250
JH
1327=item Why does Perl let me delete read-only files? Why does C<-i> clobber
1328protected files? Isn't this a bug in Perl?
c2e66d9e 1329
41630250 1330=item How do I select a random line from a file?
c2e66d9e 1331
41630250 1332=item Why do I get weird spaces when I print an array of lines?
4755096e
GS
1333
1334=back
1335
41630250 1336=item AUTHOR AND COPYRIGHT
4755096e
GS
1337
1338=back
1339
407700fe
RGS
1340=head2 perlfaq6 - Regular Expressions ($Revision: 1.31 $, $Date: 2005/03/27
134107:17:28 $)
4755096e 1342
d420ca49 1343=over 4
4755096e
GS
1344
1345=item DESCRIPTION
1346
d420ca49 1347=over 4
c2e66d9e 1348
41630250
JH
1349=item How can I hope to use regular expressions without creating illegible
1350and unmaintainable code?
d396a558 1351
41630250 1352Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
d396a558 1353
41630250 1354=item I'm having trouble matching over more than one line. What's wrong?
d396a558 1355
41630250
JH
1356=item How can I pull out lines between two patterns that are themselves on
1357different lines?
d396a558 1358
41630250 1359=item I put a regular expression into $/ but it didn't work. What's wrong?
d396a558 1360
41630250
JH
1361=item How do I substitute case insensitively on the LHS while preserving
1362case on the RHS?
d396a558 1363
41630250 1364=item How can I make C<\w> match national character sets?
d396a558 1365
41630250 1366=item How can I match a locale-smart version of C</[a-zA-Z]/>?
d396a558 1367
41630250 1368=item How can I quote a variable to use in a regex?
d396a558 1369
41630250 1370=item What is C</o> really for?
d396a558 1371
41630250
JH
1372=item How do I use a regular expression to strip C style comments from a
1373file?
d396a558 1374
41630250 1375=item Can I use Perl regular expressions to match balanced text?
d396a558 1376
41630250 1377=item What does it mean that regexes are greedy? How can I get around it?
d396a558 1378
41630250 1379=item How do I process each word on each line?
d396a558 1380
41630250 1381=item How can I print out a word-frequency or line-frequency summary?
d396a558 1382
41630250 1383=item How can I do approximate matching?
d396a558 1384
41630250 1385=item How do I efficiently match many regular expressions at once?
d396a558 1386
41630250 1387=item Why don't word-boundary searches with C<\b> work for me?
d396a558 1388
41630250 1389=item Why does using $&, $`, or $' slow my program down?
d396a558 1390
41630250 1391=item Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
d396a558 1392
1e54db1a 1393=item What's wrong with using grep in a void context?
d396a558 1394
41630250 1395=item How can I match strings with multibyte characters?
d396a558 1396
41630250 1397=item How do I match a pattern that is supplied by the user?
d396a558
JH
1398
1399=back
1400
41630250
JH
1401=item AUTHOR AND COPYRIGHT
1402
1403=back
1404
407700fe
RGS
1405=head2 perlfaq7 - General Perl Language Issues ($Revision: 1.22 $, $Date:
14062005/03/27 07:19:01 $)
c2e66d9e 1407
d420ca49 1408=over 4
4755096e 1409
d396a558 1410=item DESCRIPTION
4755096e 1411
d420ca49 1412=over 4
4755096e 1413
41630250 1414=item Can I get a BNF/yacc/RE for the Perl language?
4755096e 1415
41630250
JH
1416=item What are all these $@%&* punctuation signs, and how do I know when to
1417use them?
4755096e 1418
41630250
JH
1419=item Do I always/never have to quote my strings or use semicolons and
1420commas?
c2e66d9e 1421
41630250 1422=item How do I skip some return values?
c2e66d9e 1423
41630250 1424=item How do I temporarily block warnings?
c2e66d9e 1425
41630250 1426=item What's an extension?
4755096e 1427
41630250 1428=item Why do Perl operators have different precedence than C operators?
4755096e 1429
41630250 1430=item How do I declare/create a structure?
4755096e 1431
41630250 1432=item How do I create a module?
4755096e 1433
41630250 1434=item How do I create a class?
4755096e 1435
41630250 1436=item How can I tell if a variable is tainted?
4755096e 1437
41630250 1438=item What's a closure?
4755096e 1439
41630250 1440=item What is variable suicide and how can I prevent it?
4755096e 1441
41630250
JH
1442=item How can I pass/return a {Function, FileHandle, Array, Hash, Method,
1443Regex}?
4755096e 1444
41630250
JH
1445Passing Variables and Functions, Passing Filehandles, Passing Regexes,
1446Passing Methods
d396a558 1447
41630250 1448=item How do I create a static variable?
d396a558 1449
41630250
JH
1450=item What's the difference between dynamic and lexical (static) scoping?
1451Between local() and my()?
d396a558 1452
41630250
JH
1453=item How can I access a dynamic variable while a similarly named lexical
1454is in scope?
d396a558 1455
41630250 1456=item What's the difference between deep and shallow binding?
d396a558 1457
41630250 1458=item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right?
4755096e 1459
41630250 1460=item How do I redefine a builtin function, operator, or method?
4755096e 1461
41630250 1462=item What's the difference between calling a function as &foo and foo()?
4755096e 1463
41630250 1464=item How do I create a switch or case statement?
4755096e 1465
41630250
JH
1466=item How can I catch accesses to undefined variables, functions, or
1467methods?
4755096e 1468
41630250 1469=item Why can't a method included in this same file be found?
d396a558 1470
41630250 1471=item How can I find out my current package?
d396a558 1472
41630250 1473=item How can I comment out a large block of perl code?
d396a558 1474
41630250 1475=item How do I clear a package?
d396a558 1476
41630250 1477=item How can I use a variable as a variable name?
d396a558 1478
41630250 1479=item What does "bad interpreter" mean?
d396a558
JH
1480
1481=back
1482
41630250
JH
1483=item AUTHOR AND COPYRIGHT
1484
1485=back
1486
407700fe
RGS
1487=head2 perlfaq8 - System Interaction ($Revision: 1.23 $, $Date: 2005/01/03
148818:43:37 $)
d396a558 1489
d420ca49 1490=over 4
d396a558 1491
41630250 1492=item DESCRIPTION
d396a558 1493
41630250 1494=over 4
4755096e 1495
41630250 1496=item How do I find out which operating system I'm running under?
d420ca49 1497
41630250 1498=item How come exec() doesn't return?
4755096e 1499
41630250 1500=item How do I do fancy stuff with the keyboard/screen/mouse?
d420ca49 1501
41630250 1502Keyboard, Screen, Mouse
d396a558 1503
41630250 1504=item How do I print something out in color?
d396a558 1505
41630250 1506=item How do I read just one key without waiting for a return key?
d396a558 1507
41630250 1508=item How do I check whether input is ready on the keyboard?
d396a558 1509
41630250 1510=item How do I clear the screen?
d396a558 1511
41630250 1512=item How do I get the screen size?
c2e66d9e 1513
41630250 1514=item How do I ask the user for a password?
c2e66d9e 1515
41630250 1516=item How do I read and write the serial port?
c2e66d9e 1517
41630250 1518lockfiles, open mode, end of line, flushing output, non-blocking input
c2e66d9e 1519
41630250 1520=item How do I decode encrypted password files?
c2e66d9e 1521
41630250 1522=item How do I start a process in the background?
c2e66d9e 1523
41630250 1524STDIN, STDOUT, and STDERR are shared, Signals, Zombies
c2e66d9e 1525
41630250 1526=item How do I trap control characters/signals?
dc5c060f 1527
41630250 1528=item How do I modify the shadow password file on a Unix system?
d396a558 1529
41630250 1530=item How do I set the time and date?
d396a558 1531
41630250 1532=item How can I sleep() or alarm() for under a second?
d396a558 1533
41630250 1534=item How can I measure time under a second?
d396a558 1535
41630250 1536=item How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
d396a558 1537
41630250
JH
1538=item Why doesn't my sockets program work under System V (Solaris)? What
1539does the error message "Protocol not supported" mean?
d396a558 1540
41630250 1541=item How can I call my system's unique C functions from Perl?
d396a558 1542
41630250 1543=item Where do I get the include files to do ioctl() or syscall()?
4755096e 1544
41630250 1545=item Why do setuid perl scripts complain about kernel problems?
4755096e 1546
41630250 1547=item How can I open a pipe both to and from a command?
4755096e 1548
41630250 1549=item Why can't I get the output of a command with system()?
4755096e 1550
41630250 1551=item How can I capture STDERR from an external command?
d396a558 1552
41630250 1553=item Why doesn't open() return an error when a pipe open fails?
d396a558 1554
41630250 1555=item What's wrong with using backticks in a void context?
d396a558 1556
41630250 1557=item How can I call backticks without shell processing?
d396a558 1558
41630250
JH
1559=item Why can't my script read from STDIN after I gave it EOF (^D on Unix,
1560^Z on MS-DOS)?
4755096e 1561
41630250 1562=item How can I convert my shell script to perl?
4755096e 1563
41630250 1564=item Can I use perl to run a telnet or ftp session?
d396a558 1565
41630250 1566=item How can I write expect in Perl?
4755096e 1567
41630250
JH
1568=item Is there a way to hide perl's command line from programs such as
1569"ps"?
d396a558 1570
41630250
JH
1571=item I {changed directory, modified my environment} in a perl script. How
1572come the change disappeared when I exited the script? How do I get my
1573changes to be visible?
d396a558 1574
41630250 1575Unix
4755096e 1576
41630250
JH
1577=item How do I close a process's filehandle without waiting for it to
1578complete?
4755096e 1579
41630250 1580=item How do I fork a daemon process?
4755096e 1581
41630250 1582=item How do I find out if I'm running interactively or not?
4755096e 1583
41630250 1584=item How do I timeout a slow event?
4755096e 1585
41630250 1586=item How do I set CPU limits?
4755096e 1587
41630250 1588=item How do I avoid zombies on a Unix system?
4755096e 1589
41630250 1590=item How do I use an SQL database?
4755096e 1591
41630250 1592=item How do I make a system() exit on control-C?
4755096e 1593
41630250 1594=item How do I open a file without blocking?
4755096e 1595
e4bb216d
NC
1596=item How do I tell the difference between errors from the shell and perl?
1597
41630250 1598=item How do I install a module from CPAN?
d396a558 1599
41630250 1600=item What's the difference between require and use?
d396a558 1601
41630250 1602=item How do I keep my own module/library directory?
d396a558 1603
41630250
JH
1604=item How do I add the directory my program lives in to the module/library
1605search path?
d396a558 1606
5538b230 1607=item How do I add a directory to my include path (@INC) at runtime?
d396a558 1608
41630250 1609=item What is socket.ph and where do I get it?
4755096e 1610
c2e66d9e 1611=back
4755096e 1612
41630250 1613=item AUTHOR AND COPYRIGHT
d396a558
JH
1614
1615=back
1616
407700fe 1617=head2 perlfaq9 - Networking ($Revision: 1.19 $, $Date: 2005/01/21 12:14:12
41630250 1618$)
d396a558 1619
d420ca49 1620=over 4
d396a558
JH
1621
1622=item DESCRIPTION
1623
41630250 1624=over 4
d396a558 1625
41630250 1626=item What is the correct form of response from a CGI script?
d396a558 1627
41630250
JH
1628=item My CGI script runs from the command line but not the browser. (500
1629Server Error)
d396a558 1630
41630250 1631=item How can I get better error messages from a CGI program?
d396a558 1632
41630250 1633=item How do I remove HTML from a string?
d396a558 1634
41630250 1635=item How do I extract URLs?
d396a558 1636
41630250
JH
1637=item How do I download a file from the user's machine? How do I open a
1638file on another machine?
d396a558 1639
41630250 1640=item How do I make a pop-up menu in HTML?
d396a558 1641
41630250 1642=item How do I fetch an HTML file?
d396a558 1643
41630250 1644=item How do I automate an HTML form submission?
d396a558 1645
41630250 1646=item How do I decode or create those %-encodings on the web?
d396a558 1647
41630250 1648=item How do I redirect to another page?
2a551100 1649
41630250 1650=item How do I put a password on my web pages?
d396a558 1651
41630250 1652=item How do I edit my .htpasswd and .htgroup files with Perl?
d396a558 1653
41630250
JH
1654=item How do I make sure users can't enter values into a form that cause my
1655CGI script to do bad things?
d396a558 1656
41630250 1657=item How do I parse a mail header?
d396a558 1658
41630250 1659=item How do I decode a CGI form?
d396a558 1660
41630250 1661=item How do I check a valid mail address?
d396a558 1662
41630250 1663=item How do I decode a MIME/BASE64 string?
d396a558 1664
41630250 1665=item How do I return the user's mail address?
d396a558 1666
41630250 1667=item How do I send mail?
d396a558 1668
41630250 1669=item How do I use MIME to make an attachment to a mail message?
d396a558 1670
41630250 1671=item How do I read mail?
d396a558 1672
41630250 1673=item How do I find out my hostname/domainname/IP address?
d396a558 1674
41630250 1675=item How do I fetch a news article or the active newsgroups?
d396a558 1676
41630250 1677=item How do I fetch/put an FTP file?
9fa7f388 1678
41630250 1679=item How can I do RPC in Perl?
d396a558
JH
1680
1681=back
4755096e 1682
41630250 1683=item AUTHOR AND COPYRIGHT
d396a558 1684
c2e66d9e 1685=back
4755096e 1686
41630250 1687=head2 perlsyn - Perl syntax
4755096e 1688
d420ca49 1689=over 4
4755096e 1690
c2e66d9e 1691=item DESCRIPTION
4755096e 1692
d420ca49 1693=over 4
4755096e 1694
41630250 1695=item Declarations
23be5fc4 1696
41630250 1697=item Comments
4755096e 1698
41630250 1699=item Simple Statements
4755096e 1700
639f8edf
HS
1701=item Truth and Falsehood
1702
1703=item Statement Modifiers
1704
41630250 1705=item Compound Statements
4755096e 1706
41630250 1707=item Loop Control
4755096e 1708
41630250 1709=item For Loops
4755096e 1710
41630250 1711=item Foreach Loops
4755096e 1712
41630250 1713=item Basic BLOCKs and Switch Statements
4755096e 1714
41630250 1715=item Goto
4755096e 1716
41630250 1717=item PODs: Embedded Documentation
4755096e 1718
41630250 1719=item Plain Old Comments (Not!)
4755096e
GS
1720
1721=back
1722
c2e66d9e
GS
1723=back
1724
41630250 1725=head2 perldata - Perl data types
4755096e 1726
d420ca49 1727=over 4
4755096e 1728
41630250 1729=item DESCRIPTION
4755096e 1730
41630250 1731=over 4
4755096e 1732
41630250 1733=item Variable names
4755096e 1734
41630250 1735=item Context
4755096e 1736
41630250 1737=item Scalar values
4755096e 1738
41630250 1739=item Scalar value constructors
4755096e 1740
41630250 1741=item List value constructors
4755096e 1742
41630250 1743=item Subscripts
4755096e 1744
41630250 1745=item Slices
4755096e 1746
41630250 1747=item Typeglobs and Filehandles
4755096e 1748
41630250 1749=back
4755096e 1750
c2e66d9e 1751=item SEE ALSO
4755096e
GS
1752
1753=back
1754
41630250 1755=head2 perlop - Perl operators and precedence
4755096e 1756
d420ca49 1757=over 4
4755096e 1758
c2e66d9e 1759=item DESCRIPTION
4755096e 1760
d420ca49 1761=over 4
4755096e 1762
639f8edf
HS
1763=item Operator Precedence and Associativity
1764
41630250 1765=item Terms and List Operators (Leftward)
4755096e 1766
41630250 1767=item The Arrow Operator
4755096e 1768
41630250 1769=item Auto-increment and Auto-decrement
4755096e 1770
41630250 1771=item Exponentiation
4755096e 1772
41630250 1773=item Symbolic Unary Operators
c2e66d9e 1774
41630250 1775=item Binding Operators
c2e66d9e 1776
41630250 1777=item Multiplicative Operators
4755096e 1778
41630250 1779=item Additive Operators
4755096e 1780
41630250 1781=item Shift Operators
4755096e 1782
41630250 1783=item Named Unary Operators
4755096e 1784
41630250 1785=item Relational Operators
4755096e 1786
41630250 1787=item Equality Operators
4755096e 1788
41630250 1789=item Bitwise And
4755096e 1790
41630250 1791=item Bitwise Or and Exclusive Or
4755096e 1792
41630250 1793=item C-style Logical And
4755096e 1794
41630250 1795=item C-style Logical Or
4755096e 1796
41630250 1797=item C-style Logical Defined-Or
4755096e 1798
41630250 1799=item Range Operators
4755096e 1800
41630250 1801=item Conditional Operator
4755096e 1802
41630250 1803=item Assignment Operators
4755096e 1804
41630250 1805=item Comma Operator
4755096e 1806
41630250 1807=item List Operators (Rightward)
4755096e 1808
41630250 1809=item Logical Not
c133c03f 1810
41630250 1811=item Logical And
849d92fd 1812
41630250 1813=item Logical or, Defined or, and Exclusive Or
849d92fd 1814
41630250 1815=item C Operators Missing From Perl
849d92fd 1816
41630250 1817unary &, unary *, (TYPE)
849d92fd 1818
41630250 1819=item Quote and Quote-like Operators
849d92fd 1820
41630250 1821=item Regexp Quote-Like Operators
849d92fd 1822
41630250
JH
1823?PATTERN?, m/PATTERN/cgimosx, /PATTERN/cgimosx, q/STRING/, C<'STRING'>,
1824qq/STRING/, "STRING", qr/STRING/imosx, qx/STRING/, `STRING`, qw/STRING/,
1825s/PATTERN/REPLACEMENT/egimosx, tr/SEARCHLIST/REPLACEMENTLIST/cds,
1826y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF
849d92fd 1827
41630250 1828=item Gory details of parsing quoted constructs
849d92fd 1829
41630250
JH
1830Finding the end, Removal of backslashes before delimiters, Interpolation,
1831C<<<'EOF'>, C<m''>, C<s'''>, C<tr///>, C<y///>, C<''>, C<q//>, C<"">,
1832C<``>, C<qq//>, C<qx//>, C<< <file*glob> >>, C<?RE?>, C</RE/>, C<m/RE/>,
1833C<s/RE/foo/>,, Interpolation of regular expressions, Optimization of
1834regular expressions
849d92fd 1835
41630250 1836=item I/O Operators
849d92fd 1837
41630250 1838=item Constant Folding
849d92fd 1839
e4bb216d
NC
1840=item No-ops
1841
41630250 1842=item Bitwise String Operators
849d92fd 1843
41630250 1844=item Integer Arithmetic
97f7c9df 1845
41630250 1846=item Floating-point Arithmetic
849d92fd 1847
41630250 1848=item Bigger Numbers
849d92fd 1849
41630250 1850=back
849d92fd
JH
1851
1852=back
1853
41630250 1854=head2 perlsub - Perl subroutines
849d92fd
JH
1855
1856=over 4
1857
41630250 1858=item SYNOPSIS
849d92fd 1859
41630250 1860=item DESCRIPTION
849d92fd 1861
c133c03f 1862=over 4
849d92fd 1863
41630250 1864=item Private Variables via my()
849d92fd 1865
41630250 1866=item Persistent Private Variables
849d92fd 1867
41630250 1868=item Temporary Values via local()
849d92fd 1869
41630250 1870=item Lvalue subroutines
849d92fd 1871
41630250 1872Lvalue subroutines are EXPERIMENTAL
c133c03f 1873
41630250 1874=item Passing Symbol Table Entries (typeglobs)
c133c03f 1875
41630250 1876=item When to Still Use local()
849d92fd 1877
41630250 1878=item Pass by Reference
30487ceb 1879
41630250 1880=item Prototypes
849d92fd 1881
41630250 1882=item Constant Functions
849d92fd 1883
41630250 1884=item Overriding Built-in Functions
849d92fd 1885
41630250 1886=item Autoloading
849d92fd 1887
41630250 1888=item Subroutine Attributes
849d92fd 1889
41630250 1890=back
849d92fd 1891
41630250 1892=item SEE ALSO
849d92fd
JH
1893
1894=back
1895
41630250 1896=head2 perlfunc - Perl builtin functions
849d92fd 1897
41630250 1898=over 4
30487ceb 1899
41630250 1900=item DESCRIPTION
c133c03f 1901
41630250 1902=over 4
a44e0ddd 1903
41630250 1904=item Perl Functions by Category
849d92fd 1905
41630250
JH
1906Functions for SCALARs or strings, Regular expressions and pattern matching,
1907Numeric functions, Functions for real @ARRAYs, Functions for list data,
1908Functions for real %HASHes, Input and output functions, Functions for fixed
1909length data or records, Functions for filehandles, files, or directories,
1910Keywords related to the control flow of your perl program, Keywords related
1911to scoping, Miscellaneous functions, Functions for processes and process
1912groups, Keywords related to perl modules, Keywords related to classes and
1913object-orientedness, Low-level socket functions, System V interprocess
1914communication functions, Fetching user and group info, Fetching network
1915info, Time-related functions, Functions new in perl5, Functions obsoleted
1916in perl5
849d92fd 1917
41630250 1918=item Portability
849d92fd 1919
41630250 1920=item Alphabetical Listing of Perl Functions
849d92fd 1921
41630250
JH
1922-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, abs, accept
1923NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
1924binmode FILEHANDLE, LAYER, binmode FILEHANDLE, bless REF,CLASSNAME, bless
1925REF, caller EXPR, caller, chdir EXPR, chmod LIST, chomp VARIABLE, chomp(
1926LIST ), chomp, chop VARIABLE, chop( LIST ), chop, chown LIST, chr NUMBER,
1927chr, chroot FILENAME, chroot, close FILEHANDLE, close, closedir DIRHANDLE,
1928connect SOCKET,NAME, continue BLOCK, cos EXPR, cos, crypt PLAINTEXT,SALT,
1929dbmclose HASH, dbmopen HASH,DBNAME,MASK, defined EXPR, defined, delete
1930EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do EXPR, dump LABEL, dump,
1931each HASH, eof FILEHANDLE, eof (), eof, eval EXPR, eval BLOCK, exec LIST,
1932exec PROGRAM LIST, exists EXPR, exit EXPR, exp EXPR, exp, fcntl
1933FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock FILEHANDLE,OPERATION,
1934fork, format, formline PICTURE,LIST, getc FILEHANDLE, getc, getlogin,
1935getpeername SOCKET, getpgrp PID, getppid, getpriority WHICH,WHO, getpwnam
1936NAME, getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname
1937NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr
1938ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER,
1939getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent,
1940getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent
1941STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent,
1942endhostent, endnetent, endprotoent, endservent, getsockname SOCKET,
1943getsockopt SOCKET,LEVEL,OPTNAME, glob EXPR, glob, gmtime EXPR, goto LABEL,
1944goto EXPR, goto &NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex,
1945import, index STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
1946FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys HASH, kill SIGNAL, LIST,
1947last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
1948link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
407700fe
RGS
1949localtime, lock THING, log EXPR, log, lstat EXPR, lstat, m//, map BLOCK
1950LIST, map EXPR,LIST, mkdir FILENAME,MASK, mkdir FILENAME, msgctl
1951ID,CMD,ARG, msgget KEY,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, msgsnd
1952ID,MSG,FLAGS, my EXPR, my TYPE EXPR, my EXPR : ATTRS, my TYPE EXPR : ATTRS,
1953next LABEL, next, no Module VERSION LIST, no Module VERSION, no Module
1954LIST, no Module, oct EXPR, oct, open FILEHANDLE,EXPR, open
1955FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST, open
1956FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, opendir DIRHANDLE,EXPR, ord
1957EXPR, ord, our EXPR, our EXPR TYPE, our EXPR : ATTRS, our TYPE EXPR :
1958ATTRS, pack TEMPLATE,LIST, package NAMESPACE, package, pipe
1959READHANDLE,WRITEHANDLE, pop ARRAY, pop, pos SCALAR, pos, print FILEHANDLE
1960LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, printf FORMAT,
1961LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, qq/STRING/,
1962qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR,
1963rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH,
1964readdir DIRHANDLE, readline EXPR, readlink EXPR, readlink, readpipe EXPR,
1965recv SOCKET,SCALAR,LENGTH,FLAGS, redo LABEL, redo, ref EXPR, ref, rename
1966OLDNAME,NEWNAME, require VERSION, require EXPR, require, reset EXPR, reset,
1967return EXPR, return, reverse LIST, rewinddir DIRHANDLE, rindex
1968STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
1969EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
1970FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
1971ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
41630250
JH
1972SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
1973WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
1974shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
1975shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
1976EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
1977SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
1978sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
1979splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT, split
1980/PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST, format
1981parameter index, flags, vector flag, (minimum) width, precision, or maximum
1982width, size, order of arguments, sqrt EXPR, sqrt, srand EXPR, srand, stat
1983FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub NAME BLOCK, sub NAME
1984(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK,
1985substr EXPR,OFFSET,LENGTH,REPLACEMENT, substr EXPR,OFFSET,LENGTH, substr
1e54db1a 1986EXPR,OFFSET, symlink OLDFILE,NEWFILE, syscall NUMBER, LIST, sysopen
41630250
JH
1987FILEHANDLE,FILENAME,MODE, sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread
1988FILEHANDLE,SCALAR,LENGTH,OFFSET, sysread FILEHANDLE,SCALAR,LENGTH, sysseek
1989FILEHANDLE,POSITION,WHENCE, system LIST, system PROGRAM LIST, syswrite
1990FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH,
1991syswrite FILEHANDLE,SCALAR, tell FILEHANDLE, tell, telldir DIRHANDLE, tie
1992VARIABLE,CLASSNAME,LIST, tied VARIABLE, time, times, tr///, truncate
1993FILEHANDLE,LENGTH, truncate EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR,
1994ucfirst, umask EXPR, umask, undef EXPR, undef, unlink LIST, unlink, unpack
1995TEMPLATE,EXPR, unpack TEMPLATE, untie VARIABLE, unshift ARRAY,LIST, use
1996Module VERSION LIST, use Module VERSION, use Module LIST, use Module, use
1997VERSION, utime LIST, values HASH, vec EXPR,OFFSET,BITS, wait, waitpid
1998PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR, write, y///
849d92fd
JH
1999
2000=back
2001
53d7eaa8
JH
2002=back
2003
41630250 2004=head2 perlopentut - tutorial on opening things in Perl
53d7eaa8
JH
2005
2006=over 4
2007
2008=item DESCRIPTION
2009
41630250 2010=item Open E<agrave> la shell
4755096e 2011
d420ca49 2012=over 4
4755096e 2013
41630250 2014=item Simple Opens
4755096e 2015
41630250 2016=item Indirect Filehandles
4755096e 2017
41630250 2018=item Pipe Opens
4755096e 2019
41630250 2020=item The Minus File
4755096e 2021
41630250 2022=item Mixing Reads and Writes
4755096e 2023
41630250 2024=item Filters
4755096e 2025
41630250 2026=back
4755096e 2027
41630250 2028=item Open E<agrave> la C
4755096e 2029
d420ca49 2030=over 4
4755096e 2031
41630250 2032=item Permissions E<agrave> la mode
4755096e
GS
2033
2034=back
2035
41630250 2036=item Obscure Open Tricks
4755096e 2037
d420ca49 2038=over 4
4755096e 2039
41630250 2040=item Re-Opening Files (dups)
4755096e 2041
41630250 2042=item Dispelling the Dweomer
4755096e 2043
41630250 2044=item Paths as Opens
4755096e 2045
41630250 2046=item Single Argument Open
4755096e 2047
41630250 2048=item Playing with STDIN and STDOUT
4755096e 2049
c2e66d9e 2050=back
4755096e 2051
41630250 2052=item Other I/O Issues
4755096e 2053
d420ca49 2054=over 4
4755096e 2055
41630250 2056=item Opening Non-File Files
4755096e 2057
41630250 2058=item Opening Named Pipes
4755096e 2059
41630250 2060=item Opening Sockets
4755096e 2061
41630250 2062=item Binary Files
4755096e 2063
41630250 2064=item File Locking
4755096e 2065
41630250 2066=item IO Layers
4755096e
GS
2067
2068=back
2069
41630250 2070=item SEE ALSO
4755096e 2071
41630250 2072=item AUTHOR and COPYRIGHT
4755096e 2073
41630250 2074=item HISTORY
4755096e 2075
41630250 2076=back
4755096e 2077
41630250 2078=head2 perlpacktut - tutorial on C<pack> and C<unpack>
4755096e 2079
41630250 2080=over 4
4755096e 2081
41630250 2082=item DESCRIPTION
4755096e 2083
41630250 2084=item The Basic Principle
4755096e 2085
41630250 2086=item Packing Text
4755096e 2087
41630250 2088=item Packing Numbers
4755096e 2089
d420ca49 2090=over 4
4755096e 2091
41630250 2092=item Integers
4755096e 2093
41630250 2094=item Unpacking a Stack Frame
4755096e 2095
41630250
JH
2096=item How to Eat an Egg on a Net
2097
07e9b5fe
NC
2098=item Byte-order modifiers
2099
41630250 2100=item Floating point Numbers
4755096e
GS
2101
2102=back
2103
41630250 2104=item Exotic Templates
4755096e 2105
41630250 2106=over 4
4755096e 2107
41630250 2108=item Bit Strings
4755096e 2109
41630250 2110=item Uuencoding
4755096e 2111
41630250 2112=item Doing Sums
4755096e 2113
41630250 2114=item Unicode
4755096e 2115
41630250 2116=item Another Portable Binary Encoding
4755096e 2117
41630250 2118=back
4755096e 2119
41630250 2120=item Template Grouping
4755096e 2121
41630250 2122=item Lengths and Widths
4755096e 2123
41630250 2124=over 4
4755096e 2125
41630250 2126=item String Lengths
4755096e 2127
41630250 2128=item Dynamic Templates
4755096e 2129
41630250 2130=item Counting Repetitions
4755096e 2131
41630250 2132=back
a6812a52 2133
41630250 2134=item Packing and Unpacking C Structures
0d53b15f 2135
41630250 2136=over 4
4755096e 2137
41630250 2138=item The Alignment Pit
4755096e 2139
07e9b5fe
NC
2140=item Dealing with Endian-ness
2141
41630250 2142=item Alignment, Take 2
4755096e 2143
41630250 2144=item Alignment, Take 3
4755096e 2145
41630250 2146=item Pointers for How to Use Them
4755096e 2147
41630250 2148=back
4755096e 2149
41630250 2150=item Pack Recipes
4755096e 2151
41630250 2152=item Funnies Section
4755096e 2153
41630250 2154=item Authors
4755096e
GS
2155
2156=back
2157
41630250 2158=head2 perlpod - the Plain Old Documentation format
4755096e 2159
41630250 2160=over 4
4755096e 2161
41630250 2162=item DESCRIPTION
4755096e 2163
d420ca49 2164=over 4
4755096e 2165
41630250 2166=item Ordinary Paragraph
4755096e 2167
41630250 2168=item Verbatim Paragraph
4755096e 2169
41630250 2170=item Command Paragraph
4755096e 2171
41630250
JH
2172C<=head1 I<Heading Text>>, C<=head2 I<Heading Text>>, C<=head3 I<Heading
2173Text>>, C<=head4 I<Heading Text>>, C<=over I<indentlevel>>, C<=item
2174I<stuff...>>, C<=back>, C<=cut>, C<=pod>, C<=begin I<formatname>>, C<=end
1e54db1a
JH
2175I<formatname>>, C<=for I<formatname> I<text...>>, C<=encoding
2176I<encodingname>>
4755096e 2177
41630250 2178=item Formatting Codes
4755096e 2179
41630250
JH
2180C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
2181C<CE<lt>codeE<gt>> -- code text, C<LE<lt>nameE<gt>> -- a hyperlink,
2182C<EE<lt>escapeE<gt>> -- a character escape, C<FE<lt>filenameE<gt>> -- used
2183for filenames, C<SE<lt>textE<gt>> -- text contains non-breaking spaces,
2184C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a null
2185(zero-effect) formatting code
4755096e 2186
41630250 2187=item The Intent
4755096e 2188
41630250 2189=item Embedding Pods in Perl Modules
c2e66d9e 2190
41630250 2191=item Hints for Writing Pod
4755096e 2192
d396a558 2193=back
4755096e 2194
d396a558 2195=item SEE ALSO
4755096e 2196
41630250 2197=item AUTHOR
4755096e 2198
4755096e
GS
2199=back
2200
41630250
JH
2201=head2 perlpodspec - Plain Old Documentation: format specification and
2202notes
4755096e 2203
d420ca49 2204=over 4
4755096e 2205
d396a558 2206=item DESCRIPTION
4755096e 2207
41630250 2208=item Pod Definitions
4755096e 2209
41630250 2210=item Pod Commands
4755096e 2211
41630250 2212"=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item",
1e54db1a
JH
2213"=back", "=begin formatname", "=end formatname", "=for formatname text...",
2214"=encoding encodingname"
4755096e 2215
41630250 2216=item Pod Formatting Codes
4755096e 2217
41630250
JH
2218C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text,
2219C<CE<lt>codeE<gt>> -- code text, C<FE<lt>filenameE<gt>> -- style for
2220filenames, C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a
2221null (zero-effect) formatting code, C<LE<lt>nameE<gt>> -- a hyperlink,
2222C<EE<lt>escapeE<gt>> -- a character escape, C<SE<lt>textE<gt>> -- text
2223contains non-breaking spaces
4755096e 2224
41630250 2225=item Notes on Implementing Pod Processors
4755096e 2226
41630250 2227=item About LE<lt>...E<gt> Codes
4755096e 2228
41630250 2229First:, Second:, Third:, Fourth:, Fifth:, Sixth:
4755096e 2230
41630250 2231=item About =over...=back Regions
4755096e 2232
41630250 2233=item About Data Paragraphs and "=begin/=end" Regions
4755096e 2234
41630250 2235=item SEE ALSO
4755096e 2236
41630250 2237=item AUTHOR
d0363f02 2238
4755096e
GS
2239=back
2240
41630250 2241=head2 perlrun - how to execute the Perl interpreter
4755096e 2242
d420ca49 2243=over 4
4755096e 2244
41630250 2245=item SYNOPSIS
4755096e 2246
41630250 2247=item DESCRIPTION
4755096e 2248
41630250 2249=over 4
4755096e 2250
41630250 2251=item #! and quoting on non-Unix systems
4755096e 2252
41630250 2253OS/2, MS-DOS, Win95/NT, Macintosh, VMS
4755096e 2254
41630250 2255=item Location of Perl
4755096e 2256
41630250 2257=item Command Switches
4755096e 2258
41630250 2259B<-0>[I<octal/hexadecimal>], B<-A [I<assertions>]>, B<-a>, B<-C
e4bb216d
NC
2260[I<number/list>]>, B<-c>, B<-d>, B<-dt>, B<-d:>I<foo[=bar,baz]>,
2261B<-dt:>I<foo[=bar,baz]>, B<-D>I<letters>, B<-D>I<number>, B<-e>
407700fe 2262I<commandline>, B<-f>, B<-F>I<pattern>, B<-h>, B<-i>[I<extension>],
e4bb216d
NC
2263B<-I>I<directory>, B<-l>[I<octnum>], B<-m>[B<->]I<module>,
2264B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
41630250 2265B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
e4bb216d 2266B<-t>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<configvar>, B<-w>, B<-W>,
07e9b5fe 2267B<-X>, B<-x>, B<-x> I<directory>
41630250
JH
2268
2269=back
4755096e 2270
d396a558 2271=item ENVIRONMENT
4755096e 2272
41630250
JH
2273HOME, LOGDIR, PATH, PERL5LIB, PERL5OPT, PERLIO, :bytes, :crlf, :mmap,
2274:perlio, :pop, :raw, :stdio, :unix, :utf8, :win32, PERLIO_DEBUG, PERLLIB,
e4bb216d
NC
2275PERL5DB, PERL5DB_THREADED, PERL5SHELL (specific to the Win32 port),
2276PERL_ALLOW_NON_IFS_LSP (specific to the Win32 port), PERL_DEBUG_MSTATS,
2baadb76
RGS
2277PERL_DESTRUCT_LEVEL, PERL_DL_NONLAZY, PERL_ENCODING, PERL_HASH_SEED,
2278PERL_HASH_SEED_DEBUG, PERL_ROOT (specific to the VMS port), PERL_SIGNALS,
2279PERL_UNICODE, SYS$LOGIN (specific to the VMS port)
4755096e 2280
41630250
JH
2281=back
2282
2283=head2 perldiag - various Perl diagnostics
4755096e 2284
d420ca49 2285=over 4
4755096e 2286
41630250 2287=item DESCRIPTION
4755096e 2288
41630250 2289=back
4755096e 2290
41630250 2291=head2 perllexwarn - Perl Lexical Warnings
4755096e 2292
41630250 2293=over 4
4755096e 2294
41630250 2295=item DESCRIPTION
4755096e 2296
41630250 2297=over 4
4755096e 2298
41630250 2299=item Default Warnings and Optional Warnings
4755096e 2300
41630250 2301=item What's wrong with B<-w> and C<$^W>
4755096e 2302
41630250 2303=item Controlling Warnings from the Command Line
b2deec1d 2304
41630250 2305B<-w>, B<-W>, B<-X>
4755096e 2306
41630250 2307=item Backward Compatibility
4755096e 2308
41630250
JH
2309=item Category Hierarchy
2310
2311=item Fatal Warnings
2312
2313=item Reporting Warnings from a Module
4755096e
GS
2314
2315=back
2316
41630250
JH
2317=item TODO
2318
4755096e
GS
2319=item SEE ALSO
2320
41630250 2321=item AUTHOR
4755096e
GS
2322
2323=back
2324
41630250 2325=head2 perldebug - Perl debugging
ba62762e
JH
2326
2327=over 4
2328
2329=item DESCRIPTION
2330
41630250 2331=item The Perl Debugger
ba62762e 2332
41630250 2333=over 4
b2deec1d 2334
41630250 2335=item Debugger Commands
ba62762e 2336
41630250
JH
2337h, h [command], h h, p expr, x [maxdepth] expr, V [pkg [vars]], X [vars], y
2338[level [vars]], T, s [expr], n [expr], r, <CR>, c [line|sub], l, l
2339min+incr, l min-max, l line, l subname, -, v [line], f filename, /pattern/,
2340?pattern?, L [abw], S [[!]regex], t, t expr, b, b [line] [condition], b
2341subname [condition], b postpone subname [condition], b load filename, b
2342compile subname, B line, B *, a [line] command, A line, A *, w expr, W
2343expr, W *, o, o booloption .., o anyoption? .., o option=value .., < ?, < [
2344command ], < *, << command, > ?, > command, > *, >> command, { ?, { [
2345command ], { *, {{ command, ! number, ! -number, ! pattern, !! cmd, source
2346file, H -number, q or ^D, R, |dbcmd, ||dbcmd, command, m expr, M, man
2347[manpage]
ba62762e 2348
41630250 2349=item Configurable Options
ba62762e 2350
41630250
JH
2351C<recallCommand>, C<ShellBang>, C<pager>, C<tkRunning>, C<signalLevel>,
2352C<warnLevel>, C<dieLevel>, C<AutoTrace>, C<LineInfo>, C<inhibit_exit>,
2353C<PrintRet>, C<ornaments>, C<frame>, C<maxTraceLen>, C<windowSize>,
2354C<arrayDepth>, C<hashDepth>, C<dumpDepth>, C<compactDump>, C<veryCompact>,
2355C<globPrint>, C<DumpDBFiles>, C<DumpPackages>, C<DumpReused>, C<quote>,
2356C<HighBit>, C<undefPrint>, C<UsageOnly>, C<TTY>, C<noTTY>, C<ReadLine>,
2357C<NonStop>
ba62762e 2358
41630250 2359=item Debugger input/output
3ecb3787 2360
41630250
JH
2361Prompt, Multiline commands, Stack backtrace, Line Listing Format, Frame
2362listing
ba62762e 2363
41630250 2364=item Debugging compile-time statements
ba62762e 2365
41630250 2366=item Debugger Customization
ba62762e 2367
41630250 2368=item Readline Support
ba62762e 2369
41630250 2370=item Editor Support for Debugging
ba62762e 2371
41630250 2372=item The Perl Profiler
ba62762e
JH
2373
2374=back
2375
41630250 2376=item Debugging regular expressions
34babc16 2377
41630250 2378=item Debugging memory usage
ba62762e 2379
41630250 2380=item SEE ALSO
ba62762e 2381
41630250 2382=item BUGS
ba62762e
JH
2383
2384=back
2385
41630250 2386=head2 perlvar - Perl predefined variables
4755096e 2387
d420ca49 2388=over 4
4755096e
GS
2389
2390=item DESCRIPTION
2391
d420ca49 2392=over 4
4755096e 2393
41630250 2394=item Predefined Names
ba62762e 2395
41630250
JH
2396$ARG, $_, $a, $b, $<I<digits>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
2397$LAST_PAREN_MATCH, $+, $^N, @LAST_MATCH_END, @+,
2398HANDLE->input_line_number(EXPR), $INPUT_LINE_NUMBER, $NR, $,
2399IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, $RS, $/,
2400HANDLE->autoflush(EXPR), $OUTPUT_AUTOFLUSH, $|,
2401IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
2402IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS,
1e54db1a 2403$\, $LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $#,
41630250
JH
2404HANDLE->format_page_number(EXPR), $FORMAT_PAGE_NUMBER, $%,
2405HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $=,
2406HANDLE->format_lines_left(EXPR), $FORMAT_LINES_LEFT, $-, @LAST_MATCH_START,
2407@-, C<$`> is the same as C<substr($var, 0, $-[0])>, C<$&> is the same as
2408C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the same as C<substr($var,
2409$+[0])>, C<$1> is the same as C<substr($var, $-[1], $+[1] - $-[1])>, C<$2>
2410is the same as C<substr($var, $-[2], $+[2] - $-[2])>, C<$3> is the same as
2411C<substr $var, $-[3], $+[3] - $-[3])>, HANDLE->format_name(EXPR),
2412$FORMAT_NAME, $~, HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^,
2413IO::Handle->format_line_break_characters EXPR,
2414$FORMAT_LINE_BREAK_CHARACTERS, $:, IO::Handle->format_formfeed EXPR,
2415$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, ${^ENCODING},
2416$OS_ERROR, $ERRNO, $!, %!, $EXTENDED_OS_ERROR, $^E, $EVAL_ERROR, $@,
2417$PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<, $EFFECTIVE_USER_ID, $EUID,
2418$>, $REAL_GROUP_ID, $GID, $(, $EFFECTIVE_GROUP_ID, $EGID, $),
2419$PROGRAM_NAME, $0, $[, $], $COMPILING, $^C, $DEBUGGING, $^D,
407700fe
RGS
2420${^RE_DEBUG_FLAGS}, ${^RE_TRIE_MAXBUF}, $SYSTEM_FD_MAX, $^F, $^H, %^H,
2421$INPLACE_EDIT, $^I, $^M, $OSNAME, $^O, ${^OPEN}, $PERLDB, $^P, 0x01, 0x02,
24220x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, 0x400,
2423$LAST_REGEXP_CODE_RESULT, $^R, $EXCEPTIONS_BEING_CAUGHT, $^S, $BASETIME,
2424$^T, ${^TAINT}, ${^UNICODE}, $PERL_VERSION, $^V, $WARNING, $^W,
2425${^WARNING_BITS}, $EXECUTABLE_NAME, $^X, ARGV, $ARGV, @ARGV, ARGVOUT, @F,
2426@INC, @_, %INC, %ENV, $ENV{expr}, %SIG, $SIG{expr}
ba62762e 2427
41630250 2428=item Error Indicators
b2deec1d 2429
41630250 2430=item Technical Note on the Syntax of Variable Names
8b9c797b 2431
41630250 2432=back
8b9c797b 2433
41630250 2434=item BUGS
37b1fd75 2435
ba62762e
JH
2436=back
2437
41630250 2438=head2 perlre - Perl regular expressions
4755096e 2439
d8416318
JH
2440=over 4
2441
41630250 2442=item DESCRIPTION
d8416318 2443
41630250 2444i, m, s, x
d8416318 2445
41630250 2446=over 4
d8416318 2447
41630250
JH
2448=item Regular Expressions
2449
2450[1], [2], [3], cntrl, graph, print, punct, xdigit
2451
2452=item Extended Patterns
2453
2454C<(?#text)>, C<(?imsx-imsx)>, C<(?:pattern)>, C<(?imsx-imsx:pattern)>,
2455C<(?=pattern)>, C<(?!pattern)>, C<(?<=pattern)>, C<(?<!pattern)>, C<(?{
2456code })>, C<(??{ code })>, C<< (?>pattern) >>,
2457C<(?(condition)yes-pattern|no-pattern)>, C<(?(condition)yes-pattern)>
2458
2459=item Backtracking
2460
2461=item Version 8 Regular Expressions
2462
2463=item Warning on \1 vs $1
2464
2465=item Repeated patterns matching zero-length substring
2466
2467=item Combining pieces together
2468
2469C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>,
2470C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>,
2471C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>,
2472C<(?(condition)yes-pattern|no-pattern)>
2473
2474=item Creating custom RE engines
2a551100 2475
d8416318
JH
2476=back
2477
41630250
JH
2478=item BUGS
2479
b2deec1d
JH
2480=item SEE ALSO
2481
4755096e
GS
2482=back
2483
41630250 2484=head2 perlreref - Perl Regular Expressions Reference
4755096e 2485
d420ca49 2486=over 4
4755096e 2487
d396a558 2488=item DESCRIPTION
4755096e 2489
d420ca49 2490=over 4
4755096e 2491
41630250 2492=item OPERATORS
4755096e 2493
41630250 2494=item SYNTAX
4755096e 2495
41630250 2496=item ESCAPE SEQUENCES
4755096e 2497
41630250 2498=item CHARACTER CLASSES
4755096e 2499
41630250 2500=item ANCHORS
4755096e 2501
41630250 2502=item QUANTIFIERS
4755096e 2503
41630250 2504=item EXTENDED CONSTRUCTS
4755096e 2505
41630250 2506=item VARIABLES
4755096e 2507
41630250 2508=item FUNCTIONS
b2deec1d 2509
41630250 2510=item TERMINOLOGY
b2deec1d 2511
41630250 2512=back
41ca3a40 2513
41630250
JH
2514=item AUTHOR
2515
2516=item SEE ALSO
2517
2518=item THANKS
ff426ff2 2519
4755096e
GS
2520=back
2521
41630250 2522=head2 perlref - Perl references and nested data structures
4755096e 2523
41630250 2524=over 4
4755096e 2525
41630250 2526=item NOTE
4755096e 2527
41630250 2528=item DESCRIPTION
4755096e 2529
d420ca49 2530=over 4
37d4d706 2531
41630250 2532=item Making References
37d4d706 2533
41630250 2534=item Using References
37d4d706 2535
41630250 2536=item Symbolic references
37d4d706 2537
41630250 2538=item Not-so-symbolic references
37d4d706 2539
41630250 2540=item Pseudo-hashes: Using an array as a hash
4755096e 2541
41630250 2542=item Function Templates
4755096e 2543
41630250 2544=back
4755096e 2545
41630250 2546=item WARNING
4755096e 2547
41630250 2548=item SEE ALSO
4755096e 2549
41630250 2550=back
4755096e 2551
41630250 2552=head2 perlform - Perl formats
4755096e 2553
41630250 2554=over 4
4755096e 2555
41630250 2556=item DESCRIPTION
4755096e 2557
41630250 2558=over 4
4755096e 2559
1400179b
NC
2560=item Text Fields
2561
2562=item Numeric Fields
2563
2564=item The Field @* for Variable Width Multi-Line Text
2565
2566=item The Field ^* for Variable Width One-line-at-a-time Text
2567
2568=item Specifying Values
2569
2570=item Using Fill Mode
2571
2572=item Suppressing Lines Where All Fields Are Void
2573
2574=item Repeating Format Lines
2575
2576=item Top of Form Processing
2577
41630250 2578=item Format Variables
4755096e
GS
2579
2580=back
2581
41630250 2582=item NOTES
37d4d706 2583
d420ca49 2584=over 4
37d4d706 2585
41630250 2586=item Footers
37d4d706 2587
41630250 2588=item Accessing Formatting Internals
37d4d706 2589
41630250 2590=back
37d4d706 2591
41630250 2592=item WARNINGS
37d4d706
JH
2593
2594=back
2595
41630250 2596=head2 perlobj - Perl objects
4755096e 2597
41630250 2598=over 4
4755096e 2599
41630250 2600=item DESCRIPTION
4755096e 2601
d420ca49 2602=over 4
4755096e 2603
41630250 2604=item An Object is Simply a Reference
7029d033 2605
41630250 2606=item A Class is Simply a Package
4755096e 2607
41630250 2608=item A Method is Simply a Subroutine
4755096e 2609
41630250 2610=item Method Invocation
4755096e 2611
41630250 2612=item Indirect Object Syntax
4755096e 2613
41630250 2614=item Default UNIVERSAL methods
4755096e 2615
41630250 2616isa(CLASS), can(METHOD), VERSION( [NEED] )
4755096e 2617
41630250 2618=item Destructors
9fa7f388 2619
41630250 2620=item Summary
b3b6085d 2621
41630250 2622=item Two-Phased Garbage Collection
c2e66d9e 2623
41630250 2624=back
41ca3a40 2625
41630250 2626=item SEE ALSO
4755096e
GS
2627
2628=back
2629
41630250 2630=head2 perltie - how to hide an object class in a simple variable
4755096e 2631
d420ca49 2632=over 4
4755096e 2633
41630250
JH
2634=item SYNOPSIS
2635
4755096e
GS
2636=item DESCRIPTION
2637
d420ca49 2638=over 4
4755096e 2639
41630250 2640=item Tying Scalars
4755096e 2641
41630250
JH
2642TIESCALAR classname, LIST, FETCH this, STORE this, value, UNTIE this,
2643DESTROY this
4755096e 2644
41630250 2645=item Tying Arrays
c2e66d9e 2646
41630250
JH
2647TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
2648FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this,
2649key, DELETE this, key, CLEAR this, PUSH this, LIST, POP this, SHIFT this,
2650UNSHIFT this, LIST, SPLICE this, offset, length, LIST, UNTIE this, DESTROY
2651this
c2e66d9e 2652
41630250 2653=item Tying Hashes
4755096e 2654
41630250
JH
2655USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
2656this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
f262848d 2657this, NEXTKEY this, lastkey, SCALAR this, UNTIE this, DESTROY this
d8416318 2658
41630250
JH
2659=item Tying FileHandles
2660
2661TIEHANDLE classname, LIST, WRITE this, LIST, PRINT this, LIST, PRINTF this,
2662LIST, READ this, LIST, READLINE this, GETC this, CLOSE this, UNTIE this,
2663DESTROY this
2664
2665=item UNTIE this
2666
2667=item The C<untie> Gotcha
0d53b15f 2668
4755096e
GS
2669=back
2670
c2e66d9e
GS
2671=item SEE ALSO
2672
41630250 2673=item BUGS
4755096e 2674
41630250 2675=item AUTHOR
4755096e 2676
41630250 2677=back
4755096e 2678
41630250 2679=head2 perldbmfilter - Perl DBM Filters
4755096e 2680
d420ca49 2681=over 4
4755096e 2682
41630250 2683=item SYNOPSIS
4755096e 2684
41630250 2685=item DESCRIPTION
4755096e 2686
41630250
JH
2687B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>,
2688B<filter_fetch_value>
4755096e 2689
41630250 2690=over 4
4755096e 2691
41630250 2692=item The Filter
4755096e 2693
41630250
JH
2694=item An Example -- the NULL termination problem.
2695
2696=item Another Example -- Key is a C int.
a6fb92f1 2697
4755096e
GS
2698=back
2699
c2e66d9e 2700=item SEE ALSO
4755096e 2701
41630250
JH
2702=item AUTHOR
2703
c2e66d9e 2704=back
4755096e 2705
41630250
JH
2706=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
2707safe subprocesses, sockets, and semaphores)
35bf961c
JH
2708
2709=over 4
2710
2711=item DESCRIPTION
2712
41630250
JH
2713=item Signals
2714
35bf961c
JH
2715=over 4
2716
41630250 2717=item Handling the SIGHUP Signal in Daemons
35bf961c
JH
2718
2719=back
2720
41630250 2721=item Named Pipes
35bf961c 2722
41630250 2723=over 4
35bf961c 2724
d53e588d 2725=item Deferred Signals (Safe Signals)
35bf961c 2726
41630250
JH
2727Long running opcodes, Interrupting IO, Restartable system calls, Signals as
2728"faults", Signals triggered by operating system state
35bf961c
JH
2729
2730=back
2731
41630250 2732=item Using open() for IPC
4755096e 2733
d420ca49 2734=over 4
4755096e 2735
41630250 2736=item Filehandles
4755096e 2737
41630250 2738=item Background Processes
4755096e 2739
41630250 2740=item Complete Dissociation of Child from Parent
4755096e 2741
41630250 2742=item Safe Pipe Opens
4755096e 2743
41630250 2744=item Bidirectional Communication with Another Process
4755096e 2745
41630250 2746=item Bidirectional Communication with Yourself
4755096e 2747
c2e66d9e 2748=back
4755096e 2749
41630250 2750=item Sockets: Client/Server Communication
4755096e 2751
603b90a8
JH
2752=over 4
2753
41630250 2754=item Internet Line Terminators
5df44211 2755
41630250 2756=item Internet TCP Clients and Servers
603b90a8 2757
41630250 2758=item Unix-Domain TCP Clients and Servers
5df44211 2759
41630250 2760=back
603b90a8 2761
41630250 2762=item TCP Clients with IO::Socket
5df44211 2763
41630250 2764=over 4
603b90a8 2765
41630250 2766=item A Simple Client
5df44211 2767
41630250 2768C<Proto>, C<PeerAddr>, C<PeerPort>
603b90a8 2769
41630250 2770=item A Webget Client
5df44211 2771
41630250 2772=item Interactive Client with IO::Socket
5df44211 2773
603b90a8 2774=back
4755096e 2775
41630250 2776=item TCP Servers with IO::Socket
4755096e 2777
41630250 2778Proto, LocalPort, Listen, Reuse
4755096e 2779
41630250 2780=item UDP: Message Passing
4755096e 2781
41630250 2782=item SysV IPC
4755096e 2783
41630250 2784=item NOTES
4755096e 2785
41630250 2786=item BUGS
4755096e 2787
41630250
JH
2788=item AUTHOR
2789
2790=item SEE ALSO
4755096e 2791
c2e66d9e 2792=back
4755096e 2793
41630250 2794=head2 perlfork - Perl's fork() emulation
4755096e 2795
d420ca49 2796=over 4
4755096e 2797
41630250 2798=item SYNOPSIS
35bf961c 2799
41630250 2800=item DESCRIPTION
4755096e 2801
d420ca49 2802=over 4
4755096e 2803
41630250 2804=item Behavior of other Perl features in forked pseudo-processes
4755096e 2805
41630250
JH
2806$$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept
2807filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to
2808files, directories and network sockets
35bf961c 2809
41630250 2810=item Resource limits
35bf961c 2811
41630250 2812=item Killing the parent process
35bf961c 2813
41630250 2814=item Lifetime of the parent process and pseudo-processes
4755096e 2815
41630250 2816=item CAVEATS AND LIMITATIONS
4755096e 2817
41630250
JH
2818BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented,
2819Global state maintained by XSUBs, Interpreter embedded in larger
2820application, Thread-safety of extensions
a9ef4385 2821
41630250 2822=back
c2e66d9e 2823
41630250 2824=item BUGS
c2e66d9e 2825
41630250 2826=item AUTHOR
35bf961c 2827
41630250 2828=item SEE ALSO
35bf961c
JH
2829
2830=back
2831
41630250 2832=head2 perlnumber - semantics of numbers and numeric operations in Perl
35bf961c
JH
2833
2834=over 4
2835
41630250 2836=item SYNOPSIS
35bf961c 2837
41630250 2838=item DESCRIPTION
35bf961c 2839
41630250 2840=item Storing numbers
35bf961c 2841
41630250 2842=item Numeric operators and numeric conversions
35bf961c 2843
41630250 2844=item Flavors of Perl numeric operations
35bf961c 2845
41630250
JH
2846Arithmetic operators, ++, Arithmetic operators during C<use integer>, Other
2847mathematical operators, Bitwise operators, Bitwise operators during C<use
2848integer>, Operators which expect an integer, Operators which expect a
2849string
2850
2851=item AUTHOR
2852
2853=item SEE ALSO
35bf961c
JH
2854
2855=back
2856
41630250 2857=head2 perlthrtut - tutorial on threads in Perl
35bf961c
JH
2858
2859=over 4
2860
41630250 2861=item DESCRIPTION
35bf961c 2862
41630250 2863=item Status
2a551100 2864
41630250 2865=item What Is A Thread Anyway?
35bf961c 2866
41630250 2867=item Threaded Program Models
35bf961c
JH
2868
2869=over 4
2870
41630250 2871=item Boss/Worker
35bf961c 2872
41630250 2873=item Work Crew
35bf961c 2874
41630250 2875=item Pipeline
35bf961c
JH
2876
2877=back
2878
41630250 2879=item What kind of threads are Perl threads?
35bf961c 2880
41630250 2881=item Thread-Safe Modules
35bf961c 2882
41630250 2883=item Thread Basics
35bf961c 2884
41630250 2885=over 4
35bf961c 2886
41630250 2887=item Basic Thread Support
35bf961c 2888
41630250 2889=item A Note about the Examples
35bf961c 2890
41630250 2891=item Creating Threads
35bf961c 2892
41630250 2893=item Waiting For A Thread To Exit
35bf961c 2894
41630250 2895=item Ignoring A Thread
4755096e
GS
2896
2897=back
2898
41630250 2899=item Threads And Data
4755096e 2900
d420ca49 2901=over 4
4755096e 2902
41630250 2903=item Shared And Unshared Data
4755096e 2904
41630250 2905=item Thread Pitfalls: Races
4755096e 2906
41630250 2907=back
4755096e 2908
41630250 2909=item Synchronization and control
4755096e 2910
41630250 2911=over 4
4755096e 2912
41630250 2913=item Controlling access: lock()
4755096e 2914
41630250 2915=item A Thread Pitfall: Deadlocks
4755096e 2916
41630250 2917=item Queues: Passing Data Around
4755096e 2918
41630250 2919=item Semaphores: Synchronizing Data Access
4755096e 2920
41630250 2921=item Basic semaphores
4755096e 2922
41630250 2923=item Advanced Semaphores
4755096e 2924
41630250 2925=item cond_wait() and cond_signal()
4755096e 2926
41630250 2927=item Giving up control
4755096e
GS
2928
2929=back
2930
41630250 2931=item General Thread Utility Routines
4755096e 2932
d420ca49 2933=over 4
4755096e 2934
41630250 2935=item What Thread Am I In?
4755096e 2936
41630250 2937=item Thread IDs
4755096e 2938
41630250 2939=item Are These Threads The Same?
4755096e 2940
41630250 2941=item What Threads Are Running?
4755096e 2942
41630250 2943=back
4755096e 2944
41630250 2945=item A Complete Example
4755096e 2946
41630250 2947=item Different implementations of threads
0d53b15f 2948
41630250 2949=item Performance considerations
4755096e 2950
41630250 2951=item Process-scope Changes
4755096e 2952
41630250 2953=item Thread-Safety of System Libraries
4755096e 2954
41630250 2955=item Conclusion
4755096e 2956
41630250 2957=item Bibliography
4755096e 2958
41630250 2959=over 4
4755096e 2960
41630250 2961=item Introductory Texts
4755096e 2962
41630250 2963=item OS-Related References
4755096e 2964
41630250 2965=item Other References
4755096e 2966
41630250 2967=back
4755096e 2968
41630250 2969=item Acknowledgements
4755096e 2970
41630250 2971=item AUTHOR
4755096e 2972
41630250 2973=item Copyrights
4755096e
GS
2974
2975=back
2976
41630250 2977=head2 perlothrtut - old tutorial on threads in Perl
4755096e 2978
d420ca49 2979=over 4
4755096e
GS
2980
2981=item DESCRIPTION
2982
41630250 2983=item What Is A Thread Anyway?
4755096e 2984
41630250 2985=item Threaded Program Models
4755096e 2986
41630250 2987=over 4