[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 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. 5 6 =head1 NAME 7 8 perltoc - perl documentation table of contents 9 10 =head1 DESCRIPTION 11 12 This page provides a brief table of contents for the rest of the Perl 13 documentation set. It is meant to be scanned quickly or grepped 14 through to locate the proper section you're looking for. 15 16 =head1 BASIC DOCUMENTATION 17 18 =head2 perl - Practical Extraction and Report Language 19 20 =over 4 21 22 =item SYNOPSIS 23 24 =over 4 25 26 =item Overview 27 28 =item Tutorials 29 30 =item Reference Manual 31 32 =item Internals and C Language Interface 33 34 =item Miscellaneous 35 36 =item Language-Specific 37 38 =item Platform-Specific 39 40 =back 41 42 =item DESCRIPTION 43 44 =item AVAILABILITY 45 46 =item ENVIRONMENT 47 48 =item AUTHOR 49 50 =item FILES 51 52 =item SEE ALSO 53 54 =item DIAGNOSTICS 55 56 =item BUGS 57 58 =item NOTES 59 60 =back 61 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 Safety net 75 76 =item Basic syntax overview 77 78 =item Perl variable types 79 80 Scalars, Arrays, Hashes 81 82 =item Variable scoping 83 84 =item Conditional and looping constructs 85 86 if, while, for, foreach 87 88 =item Builtin operators and functions 89 90 Arithmetic, Numeric comparison, String comparison, Boolean logic, 91 Miscellaneous 92 93 =item Files and I/O 94 95 =item Regular expressions 96 97 Simple matching, Simple substitution, More complex regular expressions, 98 Parentheses for capturing, Other regexp features 99 100 =item Writing subroutines 101 102 =item OO Perl 103 104 =item Using Perl modules 105 106 =back 107 108 =item AUTHOR 109 110 =back 111 112 =head2 perlreftut - Mark's very short tutorial about references 113 114 =over 4 115 116 =item DESCRIPTION 117 118 =item Who Needs Complicated Data Structures? 119 120 =item The Solution 121 122 =item Syntax 123 124 =over 4 125 126 =item Making References 127 128 =item Using References 129 130 =item An Example 131 132 =item Arrow Rule 133 134 =back 135 136 =item Solution 137 138 =item The Rest 139 140 =item Summary 141 142 =item Credits 143 144 =over 4 145 146 =item Distribution Conditions 147 148 =back 149 150 =back 151 152 =head2 perldsc - Perl Data Structures Cookbook 153 154 =over 4 155 156 =item DESCRIPTION 157 158 arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, 159 more elaborate constructs 160 161 =item REFERENCES 162 X<reference> X<dereference> X<dereferencing> X<pointer> 163 164 =item COMMON MISTAKES 165 166 =item CAVEAT ON PRECEDENCE 167 X<dereference, precedence> X<dereferencing, precedence> 168 169 =item WHY YOU SHOULD ALWAYS C<use strict> 170 171 =item DEBUGGING 172 X<data structure, debugging> X<complex data structure, debugging> 173 X<AoA, debugging> X<HoA, debugging> X<AoH, debugging> X<HoH, debugging> 174 X<array of arrays, debugging> X<hash of arrays, debugging> 175 X<array of hashes, debugging> X<hash of hashes, debugging> 176 177 =item CODE EXAMPLES 178 179 =item ARRAYS OF ARRAYS 180 X<array of arrays> X<AoA> 181 182 =over 4 183 184 =item Declaration of an ARRAY OF ARRAYS 185 186 =item Generation of an ARRAY OF ARRAYS 187 188 =item Access and Printing of an ARRAY OF ARRAYS 189 190 =back 191 192 =item HASHES OF ARRAYS 193 X<hash of arrays> X<HoA> 194 195 =over 4 196 197 =item Declaration of a HASH OF ARRAYS 198 199 =item Generation of a HASH OF ARRAYS 200 201 =item Access and Printing of a HASH OF ARRAYS 202 203 =back 204 205 =item ARRAYS OF HASHES 206 X<array of hashes> X<AoH> 207 208 =over 4 209 210 =item Declaration of an ARRAY OF HASHES 211 212 =item Generation of an ARRAY OF HASHES 213 214 =item Access and Printing of an ARRAY OF HASHES 215 216 =back 217 218 =item HASHES OF HASHES 219 X<hass of hashes> X<HoH> 220 221 =over 4 222 223 =item Declaration of a HASH OF HASHES 224 225 =item Generation of a HASH OF HASHES 226 227 =item Access and Printing of a HASH OF HASHES 228 229 =back 230 231 =item MORE ELABORATE RECORDS 232 X<record> X<structure> X<struct> 233 234 =over 4 235 236 =item Declaration of MORE ELABORATE RECORDS 237 238 =item Declaration of a HASH OF COMPLEX RECORDS 239 240 =item Generation of a HASH OF COMPLEX RECORDS 241 242 =back 243 244 =item Database Ties 245 246 =item SEE ALSO 247 248 =item AUTHOR 249 250 =back 251 252 =head2 perllol - Manipulating Arrays of Arrays in Perl 253 254 =over 4 255 256 =item DESCRIPTION 257 258 =over 4 259 260 =item Declaration and Access of Arrays of Arrays 261 262 =item Growing Your Own 263 264 =item Access and Printing 265 266 =item Slices 267 268 =back 269 270 =item SEE ALSO 271 272 =item AUTHOR 273 274 =back 275 276 =head2 perlrequick - Perl regular expressions quick start 277 278 =over 4 279 280 =item DESCRIPTION 281 282 =item The Guide 283 284 =over 4 285 286 =item Simple word matching 287 288 =item Using character classes 289 290 =item Matching this or that 291 292 =item Grouping things and hierarchical matching 293 294 =item Extracting matches 295 296 =item Matching repetitions 297 298 =item More matching 299 300 =item Search and replace 301 302 =item The split operator 303 304 =back 305 306 =item BUGS 307 308 =item SEE ALSO 309 310 =item AUTHOR AND COPYRIGHT 311 312 =over 4 313 314 =item Acknowledgments 315 316 =back 317 318 =back 319 320 =head2 perlretut - Perl regular expressions tutorial 321 322 =over 4 323 324 =item DESCRIPTION 325 326 =item Part 1: The basics 327 328 =over 4 329 330 =item Simple word matching 331 332 =item Using character classes 333 334 =item Matching this or that 335 336 =item Grouping things and hierarchical matching 337 338 =item Extracting matches 339 340 =item Backreferences 341 342 =item Relative backreferences 343 344 =item Named backreferences 345 346 =item Alternative capture group numbering 347 348 =item Position information 349 350 =item Non-capturing groupings 351 352 =item Matching repetitions 353 354 =item Possessive quantifiers 355 356 =item Building a regexp 357 358 =item Using regular expressions in Perl 359 360 =back 361 362 =item Part 2: Power tools 363 364 =over 4 365 366 =item More on characters, strings, and character classes 367 368 =item Compiling and saving regular expressions 369 370 =item Composing regular expressions at runtime 371 372 =item Embedding comments and modifiers in a regular expression 373 374 =item Looking ahead and looking behind 375 376 =item Using independent subexpressions to prevent backtracking 377 378 =item Conditional expressions 379 380 =item Defining named patterns 381 382 =item Recursive patterns 383 384 =item A bit of magic: executing Perl code in a regular expression 385 386 =item Backtracking control verbs 387 388 =item Pragmas and debugging 389 390 =back 391 392 =item BUGS 393 394 =item SEE ALSO 395 396 =item AUTHOR AND COPYRIGHT 397 398 =over 4 399 400 =item Acknowledgments 401 402 =back 403 404 =back 405 406 =head2 perlboot - Beginner's Object-Oriented Tutorial 407 408 =over 4 409 410 =item DESCRIPTION 411 412 =over 4 413 414 =item If we could talk to the animals... 415 416 =item Introducing the method invocation arrow 417 418 =item Invoking a barnyard 419 420 =item The extra parameter of method invocation 421 422 =item Calling a second method to simplify things 423 424 =item Inheriting the windpipes 425 426 =item A few notes about @ISA 427 428 =item Overriding the methods 429 430 =item Starting the search from a different place 431 432 =item The SUPER way of doing things 433 434 =item Where we're at so far... 435 436 =item A horse is a horse, of course of course -- or is it? 437 438 =item Invoking an instance method 439 440 =item Accessing the instance data 441 442 =item How to build a horse 443 444 =item Inheriting the constructor 445 446 =item Making a method work with either classes or instances 447 448 =item Adding parameters to a method 449 450 =item More interesting instances 451 452 =item A horse of a different color 453 454 =item Summary 455 456 =back 457 458 =item SEE ALSO 459 460 =item COPYRIGHT 461 462 =back 463 464 =head2 perltoot - Tom's object-oriented tutorial for perl 465 466 =over 4 467 468 =item DESCRIPTION 469 470 =item Creating a Class 471 472 =over 4 473 474 =item Object Representation 475 476 =item Class Interface 477 478 =item Constructors and Instance Methods 479 480 =item Planning for the Future: Better Constructors 481 482 =item Destructors 483 484 =item Other Object Methods 485 486 =back 487 488 =item Class Data 489 490 =over 4 491 492 =item Accessing Class Data 493 494 =item Debugging Methods 495 496 =item Class Destructors 497 498 =item Documenting the Interface 499 500 =back 501 502 =item Aggregation 503 504 =item Inheritance 505 506 =over 4 507 508 =item Overridden Methods 509 510 =item Multiple Inheritance 511 512 =item UNIVERSAL: The Root of All Objects 513 514 =item Deeper UNIVERSAL details 515 516 =back 517 518 =item Alternate Object Representations 519 520 =over 4 521 522 =item Arrays as Objects 523 524 =item Closures as Objects 525 526 =back 527 528 =item AUTOLOAD: Proxy Methods 529 530 =over 4 531 532 =item Autoloaded Data Methods 533 534 =item Inherited Autoloaded Data Methods 535 536 =back 537 538 =item Metaclassical Tools 539 540 =over 4 541 542 =item Class::Struct 543 544 =item Data Members as Variables 545 546 =back 547 548 =item NOTES 549 550 =over 4 551 552 =item Object Terminology 553 554 =back 555 556 =item SEE ALSO 557 558 =item AUTHOR AND COPYRIGHT 559 560 =item COPYRIGHT 561 562 =over 4 563 564 =item Acknowledgments 565 566 =back 567 568 =back 569 570 =head2 perltooc - Tom's OO Tutorial for Class Data in Perl 571 572 =over 4 573 574 =item DESCRIPTION 575 576 =item Class Data in a Can 577 578 =item Class Data as Package Variables 579 580 =over 4 581 582 =item Putting All Your Eggs in One Basket 583 584 =item Inheritance Concerns 585 586 =item The Eponymous Meta-Object 587 588 =item Indirect References to Class Data 589 590 =item Monadic Classes 591 592 =item Translucent Attributes 593 594 =back 595 596 =item Class Data as Lexical Variables 597 598 =over 4 599 600 =item Privacy and Responsibility 601 602 =item File-Scoped Lexicals 603 604 =item More Inheritance Concerns 605 606 =item Locking the Door and Throwing Away the Key 607 608 =item Translucency Revisited 609 610 =back 611 612 =item NOTES 613 614 =item SEE ALSO 615 616 =item AUTHOR AND COPYRIGHT 617 618 =item ACKNOWLEDGEMENTS 619 620 =item HISTORY 621 622 =back 623 624 =head2 perlbot - Bag'o Object Tricks (the BOT) 625 626 =over 4 627 628 =item DESCRIPTION 629 630 =item OO SCALING TIPS 631 632 =item INSTANCE VARIABLES 633 634 =item SCALAR INSTANCE VARIABLES 635 636 =item INSTANCE VARIABLE INHERITANCE 637 638 =item OBJECT RELATIONSHIPS 639 640 =item OVERRIDING SUPERCLASS METHODS 641 642 =item USING RELATIONSHIP WITH SDBM 643 644 =item THINKING OF CODE REUSE 645 646 =item CLASS CONTEXT AND THE OBJECT 647 648 =item INHERITING A CONSTRUCTOR 649 650 =item DELEGATION 651 652 =item SEE ALSO 653 654 =back 655 656 =head2 perlstyle - Perl style guide 657 658 =over 4 659 660 =item DESCRIPTION 661 662 =back 663 664 =head2 perlcheat - Perl 5 Cheat Sheet 665 666 =over 4 667 668 =item DESCRIPTION 669 670 =over 4 671 672 =item The sheet 673 674 =back 675 676 =item ACKNOWLEDGEMENTS 677 678 =item AUTHOR 679 680 =item SEE ALSO 681 682 =back 683 684 =head2 perltrap - Perl traps for the unwary 685 686 =over 4 687 688 =item DESCRIPTION 689 690 =over 4 691 692 =item Awk Traps 693 694 =item C/C++ Traps 695 696 =item Sed Traps 697 698 =item Shell Traps 699 700 =item Perl Traps 701 702 =item Perl4 to Perl5 Traps 703 704 Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical 705 Traps, General data type traps, Context Traps - scalar, list contexts, 706 Precedence Traps, General Regular Expression Traps using s///, etc, 707 Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps 708 709 =item Discontinuance, Deprecation, and BugFix traps 710 711 Symbols starting with "_" no longer forced into main, Double-colon valid 712 package separator in variable name, 2nd and 3rd args to C<splice()> are now 713 in scalar context, Can't do C<goto> into a block that is optimized away, 714 Can't use whitespace as variable name or quote delimiter, C<while/if BLOCK 715 BLOCK> gone, C<**> binds tighter than unary minus, C<foreach> changed when 716 iterating over a list, C<split> with no args behavior changed, B<-e> 717 behavior fixed, C<push> returns number of elements in resulting list, Some 718 error messages differ, C<split()> honors subroutine args, Bugs removed 719 720 =item Parsing Traps 721 722 Space between . and = triggers syntax error, Better parsing in perl 5, 723 Function parsing, String interpolation of C<$#array> differs, Perl guesses 724 on C<map>, C<grep> followed by C<{> if it starts BLOCK or hash ref 725 726 =item Numerical Traps 727 728 Formatted output and significant digits, Auto-increment operator over 729 signed int limit deleted, Assignment of return values from numeric equality 730 tests doesn't work, Bitwise string ops 731 732 =item General data type traps 733 734 Negative array subscripts now count from the end of array, Setting 735 C<$#array> lower now discards array elements, Hashes get defined before 736 use, Glob assignment from localized variable to variable, Assigning 737 C<undef> to glob, Changes in unary negation (of strings), Modifying of 738 constants prohibited, C<defined $var> behavior changed, Variable Suicide 739 740 =item Context Traps - scalar, list contexts 741 742 Elements of argument lists for formats evaluated in list context, 743 C<caller()> returns false value in scalar context if no caller present, 744 Comma operator in scalar context gives scalar context to args, C<sprintf()> 745 prototyped as C<($;@)> 746 747 =item Precedence Traps 748 749 LHS vs. RHS of any assignment operator, Semantic errors introduced due to 750 precedence, Precedence of assignment operators same as the precedence of 751 assignment, C<open> requires parentheses around filehandle, C<$:> 752 precedence over C<$::> gone, Precedence of file test operators documented, 753 C<keys>, C<each>, C<values> are regular named unary operators 754 755 =item General Regular Expression Traps using s///, etc. 756 757 C<s'$lhs'$rhs'> interpolates on either side, C<m//g> attaches its state to 758 the searched string, C<m//o> used within an anonymous sub, C<$+> isn't set 759 to whole match, Substitution now returns null string if it fails, 760 C<s`lhs`rhs`> is now a normal substitution, Stricter parsing of variables 761 in regular expressions, C<m?x?> matches only once, Failed matches don't 762 reset the match variables 763 764 =item Subroutine, Signal, Sorting Traps 765 766 Barewords that used to look like strings look like subroutine calls, 767 Reverse is no longer allowed as the name of a sort subroutine, C<warn()> 768 won't let you specify a filehandle 769 770 =item OS Traps 771 772 SysV resets signal handler correctly, SysV C<seek()> appends correctly 773 774 =item Interpolation Traps 775 776 C<@> always interpolates an array in double-quotish strings, Double-quoted 777 strings may no longer end with an unescaped $, Arbitrary expressions are 778 evaluated inside braces within double quotes, C<$$x> now tries to 779 dereference $x, Creation of hashes on the fly with C<eval "EXPR"> requires 780 protection, Bugs in earlier perl versions, Array and hash brackets during 781 interpolation, Interpolation of C<\$$foo{bar}>, C<qq()> string passed to 782 C<eval> will not find string terminator 783 784 =item DBM Traps 785 786 Perl5 must have been linked with same dbm/ndbm as the default for 787 C<dbmopen()>, DBM exceeding limit on the key/value size will cause perl5 to 788 exit immediately 789 790 =item Unclassified Traps 791 792 C<require>/C<do> trap using returned value, C<split> on empty string with 793 LIMIT specified 794 795 =back 796 797 =back 798 799 =head2 perldebtut - Perl debugging tutorial 800 801 =over 4 802 803 =item DESCRIPTION 804 805 =item use strict 806 807 =item Looking at data and -w and v 808 809 =item help 810 811 =item Stepping through code 812 813 =item Placeholder for a, w, t, T 814 815 =item REGULAR EXPRESSIONS 816 817 =item OUTPUT TIPS 818 819 =item CGI 820 821 =item GUIs 822 823 =item SUMMARY 824 825 =item SEE ALSO 826 827 =item AUTHOR 828 829 =item CONTRIBUTORS 830 831 =back 832 833 =head2 perlfaq - frequently asked questions about Perl 834 835 =over 4 836 837 =item DESCRIPTION 838 839 =over 4 840 841 =item Where to get the perlfaq 842 843 =item How to contribute to the perlfaq 844 845 =item What will happen if you mail your Perl programming problems to the 846 authors? 847 848 =back 849 850 =item CREDITS 851 852 =item AUTHOR AND COPYRIGHT 853 854 =item Table of Contents 855 856 perlfaq - this document, perlfaq1 - General Questions About Perl, perlfaq2 857 - Obtaining and Learning about Perl, perlfaq3 - Programming Tools, perlfaq4 858 - Data Manipulation, perlfaq5 - Files and Formats, perlfaq6 - Regular 859 Expressions, perlfaq7 - General Perl Language Issues, perlfaq8 - System 860 Interaction, perlfaq9 - Networking 861 862 =item The Questions 863 864 =over 4 865 866 =item L<perlfaq1>: General Questions About Perl 867 868 =item L<perlfaq2>: Obtaining and Learning about Perl 869 870 =item L<perlfaq3>: Programming Tools 871 872 =item L<perlfaq4>: Data Manipulation 873 874 =item L<perlfaq5>: Files and Formats 875 876 =item L<perlfaq6>: Regular Expressions 877 878 =item L<perlfaq7>: General Perl Language Issues 879 880 =item L<perlfaq8>: System Interaction 881 882 =item L<perlfaq9>: Networking 883 884 =back 885 886 =back 887 888 =head2 perlfaq1 - General Questions About Perl 889 890 =over 4 891 892 =item DESCRIPTION 893 894 =over 4 895 896 =item What is Perl? 897 898 =item Who supports Perl? Who develops it? Why is it free? 899 900 =item Which version of Perl should I use? 901 902 =item What are Perl 4, Perl 5, or Perl 6? 903 904 =item What was Ponie? 905 906 =item What is Perl 6? 907 908 =item How stable is Perl? 909 910 =item Is Perl difficult to learn? 911 912 =item How does Perl compare with other languages like Java, Python, REXX, 913 Scheme, or Tcl? 914 915 =item Can I do [task] in Perl? 916 917 =item When shouldn't I program in Perl? 918 919 =item What's the difference between "perl" and "Perl"? 920 921 =item Is it a Perl program or a Perl script? 922 923 =item What is a JAPH? 924 925 =item Where can I get a list of Larry Wall witticisms? 926 927 =item How can I convince others to use Perl? 928 929 http://perltraining.com.au/whyperl.html, 930 http://www.perl.org/advocacy/whyperl.html 931 932 =back 933 934 =item REVISION 935 936 =item AUTHOR AND COPYRIGHT 937 938 =back 939 940 =head2 perlfaq2 - Obtaining and Learning about Perl 941 942 =over 4 943 944 =item DESCRIPTION 945 946 =over 4 947 948 =item What machines support perl? Where do I get it? 949 950 =item How can I get a binary version of perl? 951 952 =item I don't have a C compiler. How can I build my own Perl interpreter? 953 954 =item I copied the perl binary from one machine to another, but scripts 955 don't work. 956 957 =item I grabbed the sources and tried to compile but gdbm/dynamic 958 loading/malloc/linking/... failed. How do I make it work? 959 960 =item What modules and extensions are available for Perl? What is CPAN? 961 What does CPAN/src/... mean? 962 963 =item Is there an ISO or ANSI certified version of Perl? 964 965 =item Where can I get information on Perl? 966 967 =item What are the Perl newsgroups on Usenet? Where do I post questions? 968 969 =item Where should I post source code? 970 971 =item Perl Books 972 973 References, Tutorials, Task-Oriented, Special Topics 974 975 =item Which magazines have Perl content? 976 977 =item What mailing lists are there for Perl? 978 979 =item Where are the archives for comp.lang.perl.misc? 980 981 =item Where can I buy a commercial version of perl? 982 983 =item Where do I send bug reports? 984 985 =item What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? 986 987 =back 988 989 =item REVISION 990 991 =item AUTHOR AND COPYRIGHT 992 993 =back 994 995 =head2 perlfaq3 - Programming Tools 996 997 =over 4 998 999 =item DESCRIPTION 1000 1001 =over 4 1002 1003 =item How do I do (anything)? 1004 1005 =item How can I use Perl interactively? 1006 1007 =item Is there a Perl shell? 1008 1009 =item How do I find which modules are installed on my system? 1010 1011 =item How do I debug my Perl programs? 1012 1013 =item How do I profile my Perl programs? 1014 1015 =item How do I cross-reference my Perl programs? 1016 1017 =item Is there a pretty-printer (formatter) for Perl? 1018 1019 =item Is there a ctags for Perl? 1020 1021 =item Is there an IDE or Windows Perl Editor? 1022 1023 Eclipse, Enginsite, Komodo, Open Perl IDE, OptiPerl, PerlBuilder, 1024 visiPerl+, Visual Perl, Zeus, GNU Emacs, MicroEMACS, XEmacs, Jed, Elvis, 1025 Vile, Vim, Codewright, MultiEdit, SlickEdit, Bash, Ksh, Tcsh, Zsh, Affrus, 1026 Alpha, BBEdit and BBEdit Lite 1027 1028 =item Where can I get Perl macros for vi? 1029 1030 =item Where can I get perl-mode for emacs? 1031 1032 =item How can I use curses with Perl? 1033 1034 =item How can I write a GUI (X, Tk, Gtk, etc.) in Perl? 1035 X<GUI> X<Tk> X<Wx> X<WxWidgets> X<Gtk> X<Gtk2> X<CamelBones> X<Qt> 1036 1037 Tk, Wx, Gtk and Gtk2, Win32::GUI, CamelBones, Qt, Athena 1038 1039 =item How can I make my Perl program run faster? 1040 1041 =item How can I make my Perl program take less memory? 1042 1043 Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and 1044 stringification, Pass by reference, Tie large variables to disk 1045 1046 =item Is it safe to return a reference to local or lexical data? 1047 1048 =item How can I free an array or hash so my program shrinks? 1049 1050 =item How can I make my CGI script more efficient? 1051 1052 =item How can I hide the source for my Perl program? 1053 1054 =item How can I compile my Perl program into byte code or C? 1055 1056 =item How can I get C<#!perl> to work on [MS-DOS,NT,...]? 1057 1058 =item Can I write useful Perl programs on the command line? 1059 1060 =item Why don't Perl one-liners work on my DOS/Mac/VMS system? 1061 1062 =item Where can I learn about CGI or Web programming in Perl? 1063 1064 =item Where can I learn about object-oriented Perl programming? 1065 1066 =item Where can I learn about linking C with Perl? 1067 1068 =item I've read perlembed, perlguts, etc., but I can't embed perl in my C 1069 program; what am I doing wrong? 1070 1071 =item When I tried to run my script, I got this message. What does it mean? 1072 1073 =item What's MakeMaker? 1074 1075 =back 1076 1077 =item REVISION 1078 1079 =item AUTHOR AND COPYRIGHT 1080 1081 =back 1082 1083 =head2 perlfaq4 - Data Manipulation 1084 1085 =over 4 1086 1087 =item DESCRIPTION 1088 1089 =item Data: Numbers 1090 1091 =over 4 1092 1093 =item Why am I getting long decimals (eg, 19.9499999999999) instead of the 1094 numbers I should be getting (eg, 19.95)? 1095 1096 =item Why is int() broken? 1097 1098 =item Why isn't my octal data interpreted correctly? 1099 1100 =item Does Perl have a round() function? What about ceil() and floor()? 1101 Trig functions? 1102 1103 =item How do I convert between numeric representations/bases/radixes? 1104 1105 How do I convert hexadecimal into decimal, How do I convert from decimal to 1106 hexadecimal, How do I convert from octal to decimal, How do I convert from 1107 decimal to octal, How do I convert from binary to decimal, How do I convert 1108 from decimal to binary 1109 1110 =item Why doesn't & work the way I want it to? 1111 1112 =item How do I multiply matrices? 1113 1114 =item How do I perform an operation on a series of integers? 1115 1116 =item How can I output Roman numerals? 1117 1118 =item Why aren't my random numbers random? 1119 1120 =item How do I get a random number between X and Y? 1121 1122 =back 1123 1124 =item Data: Dates 1125 1126 =over 4 1127 1128 =item How do I find the day or week of the year? 1129 1130 =item How do I find the current century or millennium? 1131 1132 =item How can I compare two dates and find the difference? 1133 1134 =item How can I take a string and turn it into epoch seconds? 1135 1136 =item How can I find the Julian Day? 1137 1138 =item How do I find yesterday's date? 1139 1140 =item Does Perl have a Year 2000 problem? Is Perl Y2K compliant? 1141 1142 =back 1143 1144 =item Data: Strings 1145 1146 =over 4 1147 1148 =item How do I validate input? 1149 1150 =item How do I unescape a string? 1151 1152 =item How do I remove consecutive pairs of characters? 1153 1154 =item How do I expand function calls in a string? 1155 1156 =item How do I find matching/nesting anything? 1157 1158 =item How do I reverse a string? 1159 1160 =item How do I expand tabs in a string? 1161 1162 =item How do I reformat a paragraph? 1163 1164 =item How can I access or change N characters of a string? 1165 1166 =item How do I change the Nth occurrence of something? 1167 1168 =item How can I count the number of occurrences of a substring within a 1169 string? 1170 1171 =item How do I capitalize all the words on one line? 1172 1173 =item How can I split a [character] delimited string except when inside 1174 [character]? 1175 1176 =item How do I strip blank space from the beginning/end of a string? 1177 1178 =item How do I pad a string with blanks or pad a number with zeroes? 1179 1180 =item How do I extract selected columns from a string? 1181 1182 =item How do I find the soundex value of a string? 1183 1184 =item How can I expand variables in text strings? 1185 1186 =item What's wrong with always quoting "$vars"? 1187 1188 =item Why don't my E<lt>E<lt>HERE documents work? 1189 1190 There must be no space after the E<lt>E<lt> part, There (probably) should 1191 be a semicolon at the end, You can't (easily) have any space in front of 1192 the tag 1193 1194 =back 1195 1196 =item Data: Arrays 1197 1198 =over 4 1199 1200 =item What is the difference between a list and an array? 1201 1202 =item What is the difference between $array[1] and @array[1]? 1203 1204 =item How can I remove duplicate elements from a list or array? 1205 1206 =item How can I tell whether a certain element is contained in a list or 1207 array? 1208 1209 =item How do I compute the difference of two arrays? How do I compute the 1210 intersection of two arrays? 1211 1212 =item How do I test whether two arrays or hashes are equal? 1213 1214 =item How do I find the first array element for which a condition is true? 1215 1216 =item How do I handle linked lists? 1217 1218 =item How do I handle circular lists? 1219 1220 =item How do I shuffle an array randomly? 1221 1222 =item How do I process/modify each element of an array? 1223 1224 =item How do I select a random element from an array? 1225 1226 =item How do I permute N elements of a list? 1227 X<List::Permuter> X<permute> X<Algorithm::Loops> X<Knuth> 1228 X<The Art of Computer Programming> X<Fischer-Krause> 1229 1230 =item How do I sort an array by (anything)? 1231 1232 =item How do I manipulate arrays of bits? 1233 1234 =item Why does defined() return true on empty arrays and hashes? 1235 1236 =back 1237 1238 =item Data: Hashes (Associative Arrays) 1239 1240 =over 4 1241 1242 =item How do I process an entire hash? 1243 1244 =item What happens if I add or remove keys from a hash while iterating over 1245 it? 1246 1247 =item How do I look up a hash element by value? 1248 1249 =item How can I know how many entries are in a hash? 1250 1251 =item How do I sort a hash (optionally by value instead of key)? 1252 1253 =item How can I always keep my hash sorted? 1254 X<hash tie sort DB_File Tie::IxHash> 1255 1256 =item What's the difference between "delete" and "undef" with hashes? 1257 1258 =item Why don't my tied hashes make the defined/exists distinction? 1259 1260 =item How do I reset an each() operation part-way through? 1261 1262 =item How can I get the unique keys from two hashes? 1263 1264 =item How can I store a multidimensional array in a DBM file? 1265 1266 =item How can I make my hash remember the order I put elements into it? 1267 1268 =item Why does passing a subroutine an undefined element in a hash create 1269 it? 1270 1271 =item How can I make the Perl equivalent of a C structure/C++ class/hash or 1272 array of hashes or arrays? 1273 1274 =item How can I use a reference as a hash key? 1275 1276 =back 1277 1278 =item Data: Misc 1279 1280 =over 4 1281 1282 =item How do I handle binary data correctly? 1283 1284 =item How do I determine whether a scalar is a number/whole/integer/float? 1285 1286 =item How do I keep persistent data across program calls? 1287 1288 =item How do I print out or copy a recursive data structure? 1289 1290 =item How do I define methods for every class/object? 1291 1292 =item How do I verify a credit card checksum? 1293 1294 =item How do I pack arrays of doubles or floats for XS code? 1295 1296 =back 1297 1298 =item REVISION 1299 1300 =item AUTHOR AND COPYRIGHT 1301 1302 =back 1303 1304 =head2 perlfaq5 - Files and Formats 1305 1306 =over 4 1307 1308 =item DESCRIPTION 1309 1310 =over 4 1311 1312 =item How do I flush/unbuffer an output filehandle? Why must I do this? 1313 X<flush> X<buffer> X<unbuffer> X<autoflush> 1314 1315 =item How do I count the number of lines in a file? 1316 X<file, counting lines> X<lines> X<line> 1317 1318 =item How can I use Perl's C<-i> option from within a program? 1319 X<-i> X<in-place> 1320 1321 =item How can I copy a file? 1322 X<copy> X<file, copy> 1323 1324 =item How do I make a temporary file name? 1325 X<file, temporary> 1326 1327 =item How can I manipulate fixed-record-length files? 1328 X<fixed-length> X<file, fixed-length records> 1329 1330 =item How can I make a filehandle local to a subroutine? How do I pass 1331 filehandles between subroutines? How do I make an array of filehandles? 1332 X<filehandle, local> X<filehandle, passing> X<filehandle, reference> 1333 1334 =item How can I use a filehandle indirectly? 1335 X<filehandle, indirect> 1336 1337 =item How can I set up a footer format to be used with write()? 1338 X<footer> 1339 1340 =item How can I write() into a string? 1341 X<write, into a string> 1342 1343 =item How can I open a filehandle to a string? 1344 X<string>, X<open>, X<IO::Scalar>, X<filehandle> 1345 1346 =item How can I translate tildes (~) in a filename? 1347 X<tilde> X<tilde expansion> 1348 1349 =item How come when I open a file read-write it wipes it out? 1350 X<clobber> X<read-write> X<clobbering> X<truncate> X<truncating> 1351 1352 =item Why do I sometimes get an "Argument list too long" when I use 1353 E<lt>*E<gt>? 1354 X<argument list too long> 1355 1356 =item Is there a leak/bug in glob()? 1357 X<glob> 1358 1359 =item How can I open a file with a leading ">" or trailing blanks? 1360 X<filename, special characters> 1361 1362 =item How can I reliably rename a file? 1363 X<rename> X<mv> X<move> X<file, rename> X<ren> 1364 1365 =item How can I lock a file? 1366 X<lock> X<file, lock> X<flock> 1367 1368 =item Why can't I just open(FH, "E<gt>file.lock")? 1369 X<lock, lockfile race condition> 1370 1371 =item I still don't get locking. I just want to increment the number in 1372 the file. How can I do this? 1373 X<counter> X<file, counter> 1374 1375 =item All I want to do is append a small amount of text to the end of a 1376 file. Do I still have to use locking? 1377 X<append> X<file, append> 1378 1379 =item How do I randomly update a binary file? 1380 X<file, binary patch> 1381 1382 =item How do I get a file's timestamp in perl? 1383 X<timestamp> X<file, timestamp> 1384 1385 =item How do I set a file's timestamp in perl? 1386 X<timestamp> X<file, timestamp> 1387 1388 =item How do I print to more than one file at once? 1389 X<print, to multiple files> 1390 1391 =item How can I read in an entire file all at once? 1392 X<slurp> X<file, slurping> 1393 1394 =item How can I read in a file by paragraphs? 1395 X<file, reading by paragraphs> 1396 1397 =item How can I read a single character from a file? From the keyboard? 1398 X<getc> X<file, reading one character at a time> 1399 1400 =item How can I tell whether there's a character waiting on a filehandle? 1401 1402 =item How do I do a C<tail -f> in perl? 1403 X<tail> X<IO::Handle> X<File::Tail> X<clearerr> 1404 1405 =item How do I dup() a filehandle in Perl? 1406 X<dup> 1407 1408 =item How do I close a file descriptor by number? 1409 X<file, closing file descriptors> X<POSIX> X<close> 1410 1411 =item Why can't I use "C:\temp\foo" in DOS paths? Why doesn't 1412 `C:\temp\foo.exe` work? 1413 X<filename, DOS issues> 1414 1415 =item Why doesn't glob("*.*") get all the files? 1416 X<glob> 1417 1418 =item Why does Perl let me delete read-only files? Why does C<-i> clobber 1419 protected files? Isn't this a bug in Perl? 1420 1421 =item How do I select a random line from a file? 1422 X<file, selecting a random line> 1423 1424 =item Why do I get weird spaces when I print an array of lines? 1425 1426 =back 1427 1428 =item REVISION 1429 1430 =item AUTHOR AND COPYRIGHT 1431 1432 =back 1433 1434 =head2 perlfaq6 - Regular Expressions 1435 1436 =over 4 1437 1438 =item DESCRIPTION 1439 1440 =over 4 1441 1442 =item How can I hope to use regular expressions without creating illegible 1443 and unmaintainable code? 1444 X<regex, legibility> X<regexp, legibility> 1445 X<regular expression, legibility> X</x> 1446 1447 Comments Outside the Regex, Comments Inside the Regex, Different Delimiters 1448 1449 =item I'm having trouble matching over more than one line. What's wrong? 1450 X<regex, multiline> X<regexp, multiline> X<regular expression, multiline> 1451 1452 =item How can I pull out lines between two patterns that are themselves on 1453 different lines? 1454 X<..> 1455 1456 =item I put a regular expression into $/ but it didn't work. What's wrong? 1457 X<$/, regexes in> X<$INPUT_RECORD_SEPARATOR, regexes in> 1458 X<$RS, regexes in> 1459 1460 =item How do I substitute case insensitively on the LHS while preserving 1461 case on the RHS? 1462 X<replace, case preserving> X<substitute, case preserving> 1463 X<substitution, case preserving> X<s, case preserving> 1464 1465 =item How can I make C<\w> match national character sets? 1466 X<\w> 1467 1468 =item How can I match a locale-smart version of C</[a-zA-Z]/>? 1469 X<alpha> 1470 1471 =item How can I quote a variable to use in a regex? 1472 X<regex, escaping> X<regexp, escaping> X<regular expression, escaping> 1473 1474 =item What is C</o> really for? 1475 X</o, regular expressions> X<compile, regular expressions> 1476 1477 =item How do I use a regular expression to strip C style comments from a 1478 file? 1479 1480 =item Can I use Perl regular expressions to match balanced text? 1481 X<regex, matching balanced test> X<regexp, matching balanced test> 1482 X<regular expression, matching balanced test> 1483 1484 =item What does it mean that regexes are greedy? How can I get around it? 1485 X<greedy> X<greediness> 1486 1487 =item How do I process each word on each line? 1488 X<word> 1489 1490 =item How can I print out a word-frequency or line-frequency summary? 1491 1492 =item How can I do approximate matching? 1493 X<match, approximate> X<matching, approximate> 1494 1495 =item How do I efficiently match many regular expressions at once? 1496 X<regex, efficiency> X<regexp, efficiency> 1497 X<regular expression, efficiency> 1498 1499 =item Why don't word-boundary searches with C<\b> work for me? 1500 X<\b> 1501 1502 =item Why does using $&, $`, or $' slow my program down? 1503 X<$MATCH> X<$&> X<$POSTMATCH> X<$'> X<$PREMATCH> X<$`> 1504 1505 =item What good is C<\G> in a regular expression? 1506 X<\G> 1507 1508 =item Are Perl regexes DFAs or NFAs? Are they POSIX compliant? 1509 X<DFA> X<NFA> X<POSIX> 1510 1511 =item What's wrong with using grep in a void context? 1512 X<grep> 1513 1514 =item How can I match strings with multibyte characters? 1515 X<regex, and multibyte characters> X<regexp, and multibyte characters> 1516 X<regular expression, and multibyte characters> X<martian> X<encoding, 1517 Martian> 1518 1519 =item How do I match a regular expression that's in a variable? 1520 X<regex, in variable> X<eval> X<regex> X<quotemeta> X<\Q, regex> 1521 X<\E, regex>, X<qr//> 1522 1523 =back 1524 1525 =item REVISION 1526 1527 =item AUTHOR AND COPYRIGHT 1528 1529 =back 1530 1531 =head2 perlfaq7 - General Perl Language Issues 1532 1533 =over 4 1534 1535 =item DESCRIPTION 1536 1537 =over 4 1538 1539 =item Can I get a BNF/yacc/RE for the Perl language? 1540 1541 =item What are all these $@%&* punctuation signs, and how do I know when to 1542 use them? 1543 1544 =item Do I always/never have to quote my strings or use semicolons and 1545 commas? 1546 1547 =item How do I skip some return values? 1548 1549 =item How do I temporarily block warnings? 1550 1551 =item What's an extension? 1552 1553 =item Why do Perl operators have different precedence than C operators? 1554 1555 =item How do I declare/create a structure? 1556 1557 =item How do I create a module? 1558 1559 =item How do I adopt or take over a module already on CPAN? 1560 1561 =item How do I create a class? 1562 1563 =item How can I tell if a variable is tainted? 1564 1565 =item What's a closure? 1566 1567 =item What is variable suicide and how can I prevent it? 1568 1569 =item How can I pass/return a {Function, FileHandle, Array, Hash, Method, 1570 Regex}? 1571 1572 Passing Variables and Functions, Passing Filehandles, Passing Regexes, 1573 Passing Methods 1574 1575 =item How do I create a static variable? 1576 1577 =item What's the difference between dynamic and lexical (static) scoping? 1578 Between local() and my()? 1579 1580 =item How can I access a dynamic variable while a similarly named lexical 1581 is in scope? 1582 1583 =item What's the difference between deep and shallow binding? 1584 1585 =item Why doesn't "my($foo) = E<lt>FILEE<gt>;" work right? 1586 1587 =item How do I redefine a builtin function, operator, or method? 1588 1589 =item What's the difference between calling a function as &foo and foo()? 1590 1591 =item How do I create a switch or case statement? 1592 1593 =item How can I catch accesses to undefined variables, functions, or 1594 methods? 1595 1596 =item Why can't a method included in this same file be found? 1597 1598 =item How can I find out my current package? 1599 1600 =item How can I comment out a large block of perl code? 1601 1602 =item How do I clear a package? 1603 1604 =item How can I use a variable as a variable name? 1605 1606 =item What does "bad interpreter" mean? 1607 1608 =back 1609 1610 =item REVISION 1611 1612 =item AUTHOR AND COPYRIGHT 1613 1614 =back 1615 1616 =head2 perlfaq8 - System Interaction 1617 1618 =over 4 1619 1620 =item DESCRIPTION 1621 1622 =over 4 1623 1624 =item How do I find out which operating system I'm running under? 1625 1626 =item How come exec() doesn't return? 1627 1628 =item How do I do fancy stuff with the keyboard/screen/mouse? 1629 1630 Keyboard, Screen, Mouse 1631 1632 =item How do I print something out in color? 1633 1634 =item How do I read just one key without waiting for a return key? 1635 1636 =item How do I check whether input is ready on the keyboard? 1637 1638 =item How do I clear the screen? 1639 1640 =item How do I get the screen size? 1641 1642 =item How do I ask the user for a password? 1643 1644 =item How do I read and write the serial port? 1645 1646 lockfiles, open mode, end of line, flushing output, non-blocking input 1647 1648 =item How do I decode encrypted password files? 1649 1650 =item How do I start a process in the background? 1651 1652 STDIN, STDOUT, and STDERR are shared, Signals, Zombies 1653 1654 =item How do I trap control characters/signals? 1655 1656 =item How do I modify the shadow password file on a Unix system? 1657 1658 =item How do I set the time and date? 1659 1660 =item How can I sleep() or alarm() for under a second? 1661 X<Time::HiRes> X<BSD::Itimer> X<sleep> X<select> 1662 1663 =item How can I measure time under a second? 1664 X<Time::HiRes> X<BSD::Itimer> X<sleep> X<select> 1665 1666 =item How can I do an atexit() or setjmp()/longjmp()? (Exception handling) 1667 1668 =item Why doesn't my sockets program work under System V (Solaris)? What 1669 does the error message "Protocol not supported" mean? 1670 1671 =item How can I call my system's unique C functions from Perl? 1672 1673 =item Where do I get the include files to do ioctl() or syscall()? 1674 1675 =item Why do setuid perl scripts complain about kernel problems? 1676 1677 =item How can I open a pipe both to and from a command? 1678 1679 =item Why can't I get the output of a command with system()? 1680 1681 =item How can I capture STDERR from an external command? 1682 1683 =item Why doesn't open() return an error when a pipe open fails? 1684 1685 =item What's wrong with using backticks in a void context? 1686 1687 =item How can I call backticks without shell processing? 1688 1689 =item Why can't my script read from STDIN after I gave it EOF (^D on Unix, 1690 ^Z on MS-DOS)? 1691 1692 =item How can I convert my shell script to perl? 1693 1694 =item Can I use perl to run a telnet or ftp session? 1695 1696 =item How can I write expect in Perl? 1697 1698 =item Is there a way to hide perl's command line from programs such as 1699 "ps"? 1700 1701 =item I {changed directory, modified my environment} in a perl script. How 1702 come the change disappeared when I exited the script? How do I get my 1703 changes to be visible? 1704 1705 Unix 1706 1707 =item How do I close a process's filehandle without waiting for it to 1708 complete? 1709 1710 =item How do I fork a daemon process? 1711 1712 =item How do I find out if I'm running interactively or not? 1713 1714 =item How do I timeout a slow event? 1715 1716 =item How do I set CPU limits? 1717 X<BSD::Resource> X<limit> X<CPU> 1718 1719 =item How do I avoid zombies on a Unix system? 1720 1721 =item How do I use an SQL database? 1722 1723 =item How do I make a system() exit on control-C? 1724 1725 =item How do I open a file without blocking? 1726 1727 =item How do I tell the difference between errors from the shell and perl? 1728 1729 =item How do I install a module from CPAN? 1730 1731 =item What's the difference between require and use? 1732 1733 =item How do I keep my own module/library directory? 1734 1735 =item How do I add the directory my program lives in to the module/library 1736 search path? 1737 1738 =item How do I add a directory to my include path (@INC) at runtime? 1739 1740 the PERLLIB environment variable, the PERL5LIB environment variable, the 1741 perl -Idir command line flag, the use lib pragma: 1742 1743 =item What is socket.ph and where do I get it? 1744 1745 =back 1746 1747 =item REVISION 1748 1749 =item AUTHOR AND COPYRIGHT 1750 1751 =back 1752 1753 =head2 perlfaq9 - Networking 1754 1755 =over 4 1756 1757 =item DESCRIPTION 1758 1759 =over 4 1760 1761 =item What is the correct form of response from a CGI script? 1762 1763 =item My CGI script runs from the command line but not the browser. (500 1764 Server Error) 1765 1766 =item How can I get better error messages from a CGI program? 1767 1768 =item How do I remove HTML from a string? 1769 1770 =item How do I extract URLs? 1771 1772 =item How do I download a file from the user's machine? How do I open a 1773 file on another machine? 1774 1775 =item How do I make an HTML pop-up menu with Perl? 1776 1777 =item How do I fetch an HTML file? 1778 1779 =item How do I automate an HTML form submission? 1780 1781 =item How do I decode or create those %-encodings on the web? 1782 1783 =item How do I redirect to another page? 1784 1785 =item How do I put a password on my web pages? 1786 1787 =item How do I edit my .htpasswd and .htgroup files with Perl? 1788 1789 =item How do I make sure users can't enter values into a form that cause my 1790 CGI script to do bad things? 1791 1792 =item How do I parse a mail header? 1793 1794 =item How do I decode a CGI form? 1795 1796 =item How do I check a valid mail address? 1797 1798 =item How do I decode a MIME/BASE64 string? 1799 1800 =item How do I return the user's mail address? 1801 1802 =item How do I send mail? 1803 1804 =item How do I use MIME to make an attachment to a mail message? 1805 1806 =item How do I read mail? 1807 1808 =item How do I find out my hostname, domainname, or IP address? 1809 X<hostname, domainname, IP address, host, domain, hostfqdn, inet_ntoa, 1810 gethostbyname, Socket, Net::Domain, Sys::Hostname> 1811 1812 =item How do I fetch a news article or the active newsgroups? 1813 1814 =item How do I fetch/put an FTP file? 1815 1816 =item How can I do RPC in Perl? 1817 1818 =back 1819 1820 =item REVISION 1821 1822 =item AUTHOR AND COPYRIGHT 1823 1824 =back 1825 1826 =head2 perlsyn - Perl syntax 1827 1828 =over 4 1829 1830 =item DESCRIPTION 1831 1832 =over 4 1833 1834 =item Declarations 1835 X<declaration> X<undef> X<undefined> X<uninitialized> 1836 1837 =item Comments 1838 X<comment> X<#> 1839 1840 =item Simple Statements 1841 X<statement> X<semicolon> X<expression> X<;> 1842 1843 =item Truth and Falsehood 1844 X<truth> X<falsehood> X<true> X<false> X<!> X<not> X<negation> X<0> 1845 1846 =item Statement Modifiers 1847 X<statement modifier> X<modifier> X<if> X<unless> X<while> 1848 X<until> X<foreach> X<for> 1849 1850 =item Compound Statements 1851 X<statement, compound> X<block> X<bracket, curly> X<curly bracket> X<brace> 1852 X<{> X<}> X<if> X<unless> X<while> X<until> X<foreach> X<for> X<continue> 1853 1854 =item Loop Control 1855 X<loop control> X<loop, control> X<next> X<last> X<redo> X<continue> 1856 1857 =item For Loops 1858 X<for> X<foreach> 1859 1860 =item Foreach Loops 1861 X<for> X<foreach> 1862 1863 =item Basic BLOCKs 1864 X<block> 1865 1866 =item Switch statements 1867 X<switch> X<case> X<given> X<when> X<default> 1868 1869 o, o, o, o, o, o, o 1870 1871 =item Goto 1872 X<goto> 1873 1874 =item PODs: Embedded Documentation 1875 X<POD> X<documentation> 1876 1877 =item Plain Old Comments (Not!) 1878 X<comment> X<line> X<#> X<preprocessor> X<eval> 1879 1880 =back 1881 1882 =back 1883 1884 =head2 perldata - Perl data types 1885 1886 =over 4 1887 1888 =item DESCRIPTION 1889 1890 =over 4 1891 1892 =item Variable names 1893 X<variable, name> X<variable name> X<data type> X<type> 1894 1895 =item Context 1896 X<context> X<scalar context> X<list context> 1897 1898 =item Scalar values 1899 X<scalar> X<number> X<string> X<reference> 1900 1901 =item Scalar value constructors 1902 X<scalar, literal> X<scalar, constant> 1903 1904 =item List value constructors 1905 X<list> 1906 1907 =item Subscripts 1908 1909 =item Slices 1910 X<slice> X<array, slice> X<hash, slice> 1911 1912 =item Typeglobs and Filehandles 1913 X<typeglob> X<filehandle> X<*> 1914 1915 =back 1916 1917 =item SEE ALSO 1918 1919 =back 1920 1921 =head2 perlop - Perl operators and precedence 1922 1923 =over 4 1924 1925 =item DESCRIPTION 1926 1927 =over 4 1928 1929 =item Operator Precedence and Associativity 1930 X<operator, precedence> X<precedence> X<associativity> 1931 1932 =item Terms and List Operators (Leftward) 1933 X<list operator> X<operator, list> X<term> 1934 1935 =item The Arrow Operator 1936 X<arrow> X<dereference> X<< -> >> 1937 1938 =item Auto-increment and Auto-decrement 1939 X<increment> X<auto-increment> X<++> X<decrement> X<auto-decrement> X<--> 1940 1941 =item Exponentiation 1942 X<**> X<exponentiation> X<power> 1943 1944 =item Symbolic Unary Operators 1945 X<unary operator> X<operator, unary> 1946 1947 =item Binding Operators 1948 X<binding> X<operator, binding> X<=~> X<!~> 1949 1950 =item Multiplicative Operators 1951 X<operator, multiplicative> 1952 1953 =item Additive Operators 1954 X<operator, additive> 1955 1956 =item Shift Operators 1957 X<shift operator> X<operator, shift> X<<< << >>> 1958 X<<< >> >>> X<right shift> X<left shift> X<bitwise shift> 1959 X<shl> X<shr> X<shift, right> X<shift, left> 1960 1961 =item Named Unary Operators 1962 X<operator, named unary> 1963 1964 =item Relational Operators 1965 X<relational operator> X<operator, relational> 1966 1967 =item Equality Operators 1968 X<equality> X<equal> X<equals> X<operator, equality> 1969 1970 =item Bitwise And 1971 X<operator, bitwise, and> X<bitwise and> X<&> 1972 1973 =item Bitwise Or and Exclusive Or 1974 X<operator, bitwise, or> X<bitwise or> X<|> X<operator, bitwise, xor> 1975 X<bitwise xor> X<^> 1976 1977 =item C-style Logical And 1978 X<&&> X<logical and> X<operator, logical, and> 1979 1980 =item C-style Logical Or 1981 X<||> X<operator, logical, or> 1982 1983 =item C-style Logical Defined-Or 1984 X<//> X<operator, logical, defined-or> 1985 1986 =item Range Operators 1987 X<operator, range> X<range> X<..> X<...> 1988 1989 =item Conditional Operator 1990 X<operator, conditional> X<operator, ternary> X<ternary> X<?:> 1991 1992 =item Assignment Operators 1993 X<assignment> X<operator, assignment> X<=> X<**=> X<+=> X<*=> X<&=> 1994 X<<< <<= >>> X<&&=> X<-=> X</=> X<|=> X<<< >>= >>> X<||=> X<//=> X<.=> 1995 X<%=> X<^=> X<x=> 1996 1997 =item Comma Operator 1998 X<comma> X<operator, comma> X<,> 1999 2000 =item List Operators (Rightward) 2001 X<operator, list, rightward> X<list operator> 2002 2003 =item Logical Not 2004 X<operator, logical, not> X<not> 2005 2006 =item Logical And 2007 X<operator, logical, and> X<and> 2008 2009 =item Logical or, Defined or, and Exclusive Or 2010 X<operator, logical, or> X<operator, logical, xor> 2011 X<operator, logical, defined or> X<operator, logical, exclusive or> 2012 X<or> X<xor> 2013 2014 =item C Operators Missing From Perl 2015 X<operator, missing from perl> X<&> X<*> 2016 X<typecasting> X<(TYPE)> 2017 2018 unary &, unary *, (TYPE) 2019 2020 =item Quote and Quote-like Operators 2021 X<operator, quote> X<operator, quote-like> X<q> X<qq> X<qx> X<qw> X<m> 2022 X<qr> X<s> X<tr> X<'> X<''> X<"> X<""> X<//> X<`> X<``> X<<< << >>> 2023 X<escape sequence> X<escape> 2024 2025 =item Regexp Quote-Like Operators 2026 X<operator, regexp> 2027 2028 qr/STRING/msixpo X<qr> X</i> X</m> X</o> X</s> X</x> X</p>, 2029 m/PATTERN/msixpogc X<m> X<operator, match> X<regexp, options> X<regexp> 2030 X<regex, options> X<regex> X</m> X</s> X</i> X</x> X</p> X</o> X</g> X</c>, 2031 /PATTERN/msixpogc, ?PATTERN? X<?>, s/PATTERN/REPLACEMENT/msixpogce 2032 X<substitute> X<substitution> X<replace> X<regexp, replace> X<regexp, 2033 substitute> X</m> X</s> X</i> X</x> X</p> X</o> X</g> X</c> X</e> 2034 2035 =item Quote-Like Operators 2036 X<operator, quote-like> 2037 2038 q/STRING/ X<q> X<quote, single> X<'> X<''>, 'STRING', qq/STRING/ X<qq> 2039 X<quote, double> X<"> X<"">, "STRING", qx/STRING/ X<qx> X<`> X<``> 2040 X<backtick>, `STRING`, qw/STRING/ X<qw> X<quote, list> X<quote, words>, 2041 tr/SEARCHLIST/REPLACEMENTLIST/cds X<tr> X<y> X<transliterate> X</c> X</d> 2042 X</s>, y/SEARCHLIST/REPLACEMENTLIST/cds, <<EOF X<here-doc> X<heredoc> 2043 X<here-document> X<<< << >>>, Double Quotes, Single Quotes, Backticks 2044 2045 =item Gory details of parsing quoted constructs 2046 X<quote, gory details> 2047 2048 Finding the end, Interpolation X<interpolation>, C<<<'EOF'>, C<m''>, the 2049 pattern of C<s'''>, C<''>, C<q//>, C<tr'''>, C<y'''>, the replacement of 2050 C<s'''>, C<tr///>, C<y///>, C<"">, C<``>, C<qq//>, C<qx//>, C<< <file*glob> 2051 >>, C<<<"EOF">, the replacement of C<s///>, C<RE> in C<?RE?>, C</RE/>, 2052 C<m/RE/>, C<s/RE/foo/>,, parsing regular expressions X<regexp, parse>, 2053 Optimization of regular expressions X<regexp, optimization> 2054 2055 =item I/O Operators 2056 X<operator, i/o> X<operator, io> X<io> X<while> X<filehandle> 2057 X<< <> >> X<@ARGV> 2058 2059 =item Constant Folding 2060 X<constant folding> X<folding> 2061 2062 =item No-ops 2063 X<no-op> X<nop> 2064 2065 =item Bitwise String Operators 2066 X<operator, bitwise, string> 2067 2068 =item Integer Arithmetic 2069 X<integer> 2070 2071 =item Floating-point Arithmetic 2072 X<floating-point> X<floating point> X<float> X<real> 2073 2074 =item Bigger Numbers 2075 X<number, arbitrary precision> 2076 2077 =back 2078 2079 =back 2080 2081 =head2 perlsub - Perl subroutines 2082 2083 =over 4 2084 2085 =item SYNOPSIS 2086 2087 =item DESCRIPTION 2088 2089 =over 4 2090 2091 =item Private Variables via my() 2092 X<my> X<variable, lexical> X<lexical> X<lexical variable> X<scope, lexical> 2093 X<lexical scope> X<attributes, my> 2094 2095 =item Persistent Private Variables 2096 X<state> X<state variable> X<static> X<variable, persistent> X<variable, 2097 static> X<closure> 2098 2099 =item Temporary Values via local() 2100 X<local> X<scope, dynamic> X<dynamic scope> X<variable, local> 2101 X<variable, temporary> 2102 2103 =item Lvalue subroutines 2104 X<lvalue> X<subroutine, lvalue> 2105 2106 Lvalue subroutines are EXPERIMENTAL 2107 2108 =item Passing Symbol Table Entries (typeglobs) 2109 X<typeglob> X<*> 2110 2111 =item When to Still Use local() 2112 X<local> X<variable, local> 2113 2114 =item Pass by Reference 2115 X<pass by reference> X<pass-by-reference> X<reference> 2116 2117 =item Prototypes 2118 X<prototype> X<subroutine, prototype> 2119 2120 =item Constant Functions 2121 X<constant> 2122 2123 =item Overriding Built-in Functions 2124 X<built-in> X<override> X<CORE> X<CORE::GLOBAL> 2125 2126 =item Autoloading 2127 X<autoloading> X<AUTOLOAD> 2128 2129 =item Subroutine Attributes 2130 X<attribute> X<subroutine, attribute> X<attrs> 2131 2132 =back 2133 2134 =item SEE ALSO 2135 2136 =back 2137 2138 =head2 perlfunc - Perl builtin functions 2139 2140 =over 4 2141 2142 =item DESCRIPTION 2143 2144 =over 4 2145 2146 =item Perl Functions by Category 2147 X<function> 2148 2149 Functions for SCALARs or strings X<scalar> X<string> X<character>, Regular 2150 expressions and pattern matching X<regular expression> X<regex> X<regexp>, 2151 Numeric functions X<numeric> X<number> X<trigonometric> X<trigonometry>, 2152 Functions for real @ARRAYs X<array>, Functions for list data X<list>, 2153 Functions for real %HASHes X<hash>, Input and output functions X<I/O> 2154 X<input> X<output> X<dbm>, Functions for fixed length data or records, 2155 Functions for filehandles, files, or directories X<file> X<filehandle> 2156 X<directory> X<pipe> X<link> X<symlink>, Keywords related to the control 2157 flow of your Perl program X<control flow>, Keywords related to switch, 2158 Keywords related to scoping, Miscellaneous functions, Functions for 2159 processes and process groups X<process> X<pid> X<process id>, Keywords 2160 related to perl modules X<module>, Keywords related to classes and 2161 object-orientation X<object> X<class> X<package>, Low-level socket 2162 functions X<socket> X<sock>, System V interprocess communication functions 2163 X<IPC> X<System V> X<semaphore> X<shared memory> X<memory> X<message>, 2164 Fetching user and group info X<user> X<group> X<password> X<uid> X<gid> 2165 X<passwd> X</etc/passwd>, Fetching network info X<network> X<protocol> 2166 X<host> X<hostname> X<IP> X<address> X<service>, Time-related functions 2167 X<time> X<date>, Functions new in perl5 X<perl5>, Functions obsoleted in 2168 perl5 2169 2170 =item Portability 2171 X<portability> X<Unix> X<portable> 2172 2173 =item Alphabetical Listing of Perl Functions 2174 2175 -I<X> FILEHANDLE 2176 X<-r>X<-w>X<-x>X<-o>X<-R>X<-W>X<-X>X<-O>X<-e>X<-z>X<-s>X<-f>X<-d>X<-l>X<-p> 2177 X<-S>X<-b>X<-c>X<-t>X<-u>X<-g>X<-k>X<-T>X<-B>X<-M>X<-A>X<-C>, -I<X> EXPR, 2178 -I<X> DIRHANDLE, -I<X>, abs VALUE X<abs> X<absolute>, abs, accept 2179 NEWSOCKET,GENERICSOCKET X<accept>, alarm SECONDS X<alarm> X<SIGALRM> 2180 X<timer>, alarm, atan2 Y,X X<atan2> X<arctangent> X<tan> X<tangent>, bind 2181 SOCKET,NAME X<bind>, binmode FILEHANDLE, LAYER X<binmode> X<binary> X<text> 2182 X<DOS> X<Windows>, binmode FILEHANDLE, bless REF,CLASSNAME X<bless>, bless 2183 REF, break, caller EXPR X<caller> X<call stack> X<stack> X<stack trace>, 2184 caller, chdir EXPR X<chdir> X<cd> X<directory, change>, chdir FILEHANDLE, 2185 chdir DIRHANDLE, chdir, chmod LIST X<chmod> X<permission> X<mode>, chomp 2186 VARIABLE X<chomp> X<INPUT_RECORD_SEPARATOR> X<$/> X<newline> X<eol>, chomp( 2187 LIST ), chomp, chop VARIABLE X<chop>, chop( LIST ), chop, chown LIST 2188 X<chown> X<owner> X<user> X<group>, chr NUMBER X<chr> X<character> X<ASCII> 2189 X<Unicode>, chr, chroot FILENAME X<chroot> X<root>, chroot, close 2190 FILEHANDLE X<close>, close, closedir DIRHANDLE X<closedir>, connect 2191 SOCKET,NAME X<connect>, continue BLOCK X<continue>, continue, cos EXPR 2192 X<cos> X<cosine> X<acos> X<arccosine>, cos, crypt PLAINTEXT,SALT X<crypt> 2193 X<digest> X<hash> X<salt> X<plaintext> X<password> X<decrypt> 2194 X<cryptography> X<passwd> X<encrypt>, dbmclose HASH X<dbmclose>, dbmopen 2195 HASH,DBNAME,MASK X<dbmopen> X<dbm> X<ndbm> X<sdbm> X<gdbm>, defined EXPR 2196 X<defined> X<undef> X<undefined>, defined, delete EXPR X<delete>, die LIST 2197 X<die> X<throw> X<exception> X<raise> X<$@> X<abort>, do BLOCK X<do> 2198 X<block>, do SUBROUTINE(LIST) X<do>, do EXPR X<do>, dump LABEL X<dump> 2199 X<core> X<undump>, dump, each HASH X<each> X<hash, iterator>, eof 2200 FILEHANDLE X<eof> X<end of file> X<end-of-file>, eof (), eof, eval EXPR 2201 X<eval> X<try> X<catch> X<evaluate> X<parse> X<execute> X<error, handling> 2202 X<exception, handling>, eval BLOCK, eval, exec LIST X<exec> X<execute>, 2203 exec PROGRAM LIST, exists EXPR X<exists> X<autovivification>, exit EXPR 2204 X<exit> X<terminate> X<abort>, exit, exp EXPR X<exp> X<exponential> 2205 X<antilog> X<antilogarithm> X<e>, exp, fcntl FILEHANDLE,FUNCTION,SCALAR 2206 X<fcntl>, fileno FILEHANDLE X<fileno>, flock FILEHANDLE,OPERATION X<flock> 2207 X<lock> X<locking>, fork X<fork> X<child> X<parent>, format X<format>, 2208 formline PICTURE,LIST X<formline>, getc FILEHANDLE X<getc> X<getchar> 2209 X<character> X<file, read>, getc, getlogin X<getlogin> X<login>, 2210 getpeername SOCKET X<getpeername> X<peer>, getpgrp PID X<getpgrp> X<group>, 2211 getppid X<getppid> X<parent> X<pid>, getpriority WHICH,WHO X<getpriority> 2212 X<priority> X<nice>, getpwnam NAME X<getpwnam> X<getgrnam> X<gethostbyname> 2213 X<getnetbyname> X<getprotobyname> X<getpwuid> X<getgrgid> X<getservbyname> 2214 X<gethostbyaddr> X<getnetbyaddr> X<getprotobynumber> X<getservbyport> 2215 X<getpwent> X<getgrent> X<gethostent> X<getnetent> X<getprotoent> 2216 X<getservent> X<setpwent> X<setgrent> X<sethostent> X<setnetent> 2217 X<setprotoent> X<setservent> X<endpwent> X<endgrent> X<endhostent> 2218 X<endnetent> X<endprotoent> X<endservent>, getgrnam NAME, gethostbyname 2219 NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, 2220 getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr 2221 ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, 2222 getgrent, gethostent, getnetent, getprotoent, getservent, setpwent, 2223 setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, 2224 setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent, 2225 endprotoent, endservent, getsockname SOCKET X<getsockname>, getsockopt 2226 SOCKET,LEVEL,OPTNAME X<getsockopt>, glob EXPR X<glob> X<wildcard> 2227 X<filename, expansion> X<expand>, glob, gmtime EXPR X<gmtime> X<UTC> 2228 X<Greenwich>, gmtime, goto LABEL X<goto> X<jump> X<jmp>, goto EXPR, goto 2229 &NAME, grep BLOCK LIST X<grep>, grep EXPR,LIST, hex EXPR X<hex> 2230 X<hexadecimal>, hex, import LIST X<import>, index STR,SUBSTR,POSITION 2231 X<index> X<indexOf> X<InStr>, index STR,SUBSTR, int EXPR X<int> X<integer> 2232 X<truncate> X<trunc> X<floor>, int, ioctl FILEHANDLE,FUNCTION,SCALAR 2233 X<ioctl>, join EXPR,LIST X<join>, keys HASH X<keys> X<key>, kill SIGNAL, 2234 LIST X<kill> X<signal>, last LABEL X<last> X<break>, last, lc EXPR X<lc> 2235 X<lowercase>, lc, lcfirst EXPR X<lcfirst> X<lowercase>, lcfirst, length 2236 EXPR X<length> X<size>, length, link OLDFILE,NEWFILE X<link>, listen 2237 SOCKET,QUEUESIZE X<listen>, local EXPR X<local>, localtime EXPR 2238 X<localtime> X<ctime>, localtime, lock THING X<lock>, log EXPR X<log> 2239 X<logarithm> X<e> X<ln> X<base>, log, lstat EXPR X<lstat>, lstat, m//, map 2240 BLOCK LIST X<map>, map EXPR,LIST, mkdir FILENAME,MASK X<mkdir> X<md> 2241 X<directory, create>, mkdir FILENAME, mkdir, msgctl ID,CMD,ARG X<msgctl>, 2242 msgget KEY,FLAGS X<msgget>, msgrcv ID,VAR,SIZE,TYPE,FLAGS X<msgrcv>, msgsnd 2243 ID,MSG,FLAGS X<msgsnd>, my EXPR X<my>, my TYPE EXPR, my EXPR : ATTRS, my 2244 TYPE EXPR : ATTRS, next LABEL X<next> X<continue>, next, no Module VERSION 2245 LIST X<no>, no Module VERSION, no Module LIST, no Module, no VERSION, oct 2246 EXPR X<oct> X<octal> X<hex> X<hexadecimal> X<binary> X<bin>, oct, open 2247 FILEHANDLE,EXPR X<open> X<pipe> X<file, open> X<fopen>, open 2248 FILEHANDLE,MODE,EXPR, open FILEHANDLE,MODE,EXPR,LIST, open 2249 FILEHANDLE,MODE,REFERENCE, open FILEHANDLE, opendir DIRHANDLE,EXPR 2250 X<opendir>, ord EXPR X<ord> X<encoding>, ord, our EXPR X<our> X<global>, 2251 our TYPE EXPR, our EXPR : ATTRS, our TYPE EXPR : ATTRS, pack TEMPLATE,LIST 2252 X<pack>, package NAMESPACE X<package> X<module> X<namespace>, package, pipe 2253 READHANDLE,WRITEHANDLE X<pipe>, pop ARRAY X<pop> X<stack>, pop, pos SCALAR 2254 X<pos> X<match, position>, pos, print FILEHANDLE LIST X<print>, print LIST, 2255 print, printf FILEHANDLE FORMAT, LIST X<printf>, printf FORMAT, LIST, 2256 prototype FUNCTION X<prototype>, push ARRAY,LIST X<push> X<stack>, 2257 q/STRING/, qq/STRING/, qr/STRING/, qx/STRING/, qw/STRING/, quotemeta EXPR 2258 X<quotemeta> X<metacharacter>, quotemeta, rand EXPR X<rand> X<random>, 2259 rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET X<read> X<file, read>, read 2260 FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE X<readdir>, readline EXPR, 2261 readline X<readline> X<gets> X<fgets>, readlink EXPR X<readlink>, readlink, 2262 readpipe EXPR, readpipe X<readpipe>, recv SOCKET,SCALAR,LENGTH,FLAGS 2263 X<recv>, redo LABEL X<redo>, redo, ref EXPR X<ref> X<reference>, ref, 2264 rename OLDNAME,NEWNAME X<rename> X<move> X<mv> X<ren>, require VERSION 2265 X<require>, require EXPR, require, reset EXPR X<reset>, reset, return EXPR 2266 X<return>, return, reverse LIST X<reverse> X<rev> X<invert>, rewinddir 2267 DIRHANDLE X<rewinddir>, rindex STR,SUBSTR,POSITION X<rindex>, rindex 2268 STR,SUBSTR, rmdir FILENAME X<rmdir> X<rd> X<directory, remove>, rmdir, 2269 s///, say FILEHANDLE LIST X<say>, say LIST, say, scalar EXPR X<scalar> 2270 X<context>, seek FILEHANDLE,POSITION,WHENCE X<seek> X<fseek> X<filehandle, 2271 position>, seekdir DIRHANDLE,POS X<seekdir>, select FILEHANDLE X<select> 2272 X<filehandle, default>, select, select RBITS,WBITS,EBITS,TIMEOUT X<select>, 2273 semctl ID,SEMNUM,CMD,ARG X<semctl>, semget KEY,NSEMS,FLAGS X<semget>, semop 2274 KEY,OPSTRING X<semop>, send SOCKET,MSG,FLAGS,TO X<send>, send 2275 SOCKET,MSG,FLAGS, setpgrp PID,PGRP X<setpgrp> X<group>, setpriority 2276 WHICH,WHO,PRIORITY X<setpriority> X<priority> X<nice> X<renice>, setsockopt 2277 SOCKET,LEVEL,OPTNAME,OPTVAL X<setsockopt>, shift ARRAY X<shift>, shift, 2278 shmctl ID,CMD,ARG X<shmctl>, shmget KEY,SIZE,FLAGS X<shmget>, shmread 2279 ID,VAR,POS,SIZE X<shmread> X<shmwrite>, shmwrite ID,STRING,POS,SIZE, 2280 shutdown SOCKET,HOW X<shutdown>, sin EXPR X<sin> X<sine> X<asin> 2281 X<arcsine>, sin, sleep EXPR X<sleep> X<pause>, sleep, socket 2282 SOCKET,DOMAIN,TYPE,PROTOCOL X<socket>, socketpair 2283 SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL X<socketpair>, sort SUBNAME LIST 2284 X<sort> X<qsort> X<quicksort> X<mergesort>, sort BLOCK LIST, sort LIST, 2285 splice ARRAY,OFFSET,LENGTH,LIST X<splice>, splice ARRAY,OFFSET,LENGTH, 2286 splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT X<split>, 2287 split /PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST 2288 X<sprintf>, format parameter index, flags, vector flag, (minimum) width, 2289 precision, or maximum width X<precision>, size, order of arguments, sqrt 2290 EXPR X<sqrt> X<root> X<square root>, sqrt, srand EXPR X<srand> X<seed> 2291 X<randseed>, srand, stat FILEHANDLE X<stat> X<file, status> X<ctime>, stat 2292 EXPR, stat DIRHANDLE, stat, state EXPR X<state>, state TYPE EXPR, state 2293 EXPR : ATTRS, state TYPE EXPR : ATTRS, study SCALAR X<study>, study, sub 2294 NAME BLOCK X<sub>, sub NAME (PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME 2295 (PROTO) : ATTRS BLOCK, substr EXPR,OFFSET,LENGTH,REPLACEMENT X<substr> 2296 X<substring> X<mid> X<left> X<right>, substr EXPR,OFFSET,LENGTH, substr 2297 EXPR,OFFSET, symlink OLDFILE,NEWFILE X<symlink> X<link> X<symbolic link> 2298 X<link, symbolic>, syscall NUMBER, LIST X<syscall> X<system call>, sysopen 2299 FILEHANDLE,FILENAME,MODE X<sysopen>, sysopen 2300 FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET 2301 X<sysread>, sysread FILEHANDLE,SCALAR,LENGTH, sysseek 2302 FILEHANDLE,POSITION,WHENCE X<sysseek> X<lseek>, system LIST X<system> 2303 X<shell>, system PROGRAM LIST, syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET 2304 X<syswrite>, syswrite FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, 2305 tell FILEHANDLE X<tell>, tell, telldir DIRHANDLE X<telldir>, tie 2306 VARIABLE,CLASSNAME,LIST X<tie>, tied VARIABLE X<tied>, time X<time> 2307 X<epoch>, times X<times>, tr///, truncate FILEHANDLE,LENGTH X<truncate>, 2308 truncate EXPR,LENGTH, uc EXPR X<uc> X<uppercase> X<toupper>, uc, ucfirst 2309 EXPR X<ucfirst> X<uppercase>, ucfirst, umask EXPR X<umask>, umask, undef 2310 EXPR X<undef> X<undefine>, undef, unlink LIST X<unlink> X<delete> X<remove> 2311 X<rm> X<del>, unlink, unpack TEMPLATE,EXPR X<unpack>, unpack TEMPLATE, 2312 untie VARIABLE X<untie>, unshift ARRAY,LIST X<unshift>, use Module VERSION 2313 LIST X<use> X<module> X<import>, use Module VERSION, use Module LIST, use 2314 Module, use VERSION, utime LIST X<utime>, values HASH X<values>, vec 2315 EXPR,OFFSET,BITS X<vec> X<bit> X<bit vector>, wait X<wait>, waitpid 2316 PID,FLAGS X<waitpid>, wantarray X<wantarray> X<context>, warn LIST X<warn> 2317 X<warning> X<STDERR>, write FILEHANDLE X<write>, write EXPR, write, y/// 2318 2319 =back 2320 2321 =back 2322 2323 =head2 perlopentut - tutorial on opening things in Perl 2324 2325 =over 4 2326 2327 =item DESCRIPTION 2328 2329 =item Open E<agrave> la shell 2330 2331 =over 4 2332 2333 =item Simple Opens 2334 2335 =item Indirect Filehandles 2336 2337 =item Pipe Opens 2338 2339 =item The Minus File 2340 2341 =item Mixing Reads and Writes 2342 2343 =item Filters 2344 2345 =back 2346 2347 =item Open E<agrave> la C 2348 2349 =over 4 2350 2351 =item Permissions E<agrave> la mode 2352 2353 =back 2354 2355 =item Obscure Open Tricks 2356 2357 =over 4 2358 2359 =item Re-Opening Files (dups) 2360 2361 =item Dispelling the Dweomer 2362 2363 =item Paths as Opens 2364 2365 =item Single Argument Open 2366 2367 =item Playing with STDIN and STDOUT 2368 2369 =back 2370 2371 =item Other I/O Issues 2372 2373 =over 4 2374 2375 =item Opening Non-File Files 2376 2377 =item Opening Named Pipes 2378 2379 =item Opening Sockets 2380 2381 =item Binary Files 2382 2383 =item File Locking 2384 2385 =item IO Layers 2386 2387 =back 2388 2389 =item SEE ALSO 2390 2391 =item AUTHOR and COPYRIGHT 2392 2393 =item HISTORY 2394 2395 =back 2396 2397 =head2 perlpacktut - tutorial on C<pack> and C<unpack> 2398 2399 =over 4 2400 2401 =item DESCRIPTION 2402 2403 =item The Basic Principle 2404 2405 =item Packing Text 2406 2407 =item Packing Numbers 2408 2409 =over 4 2410 2411 =item Integers 2412 2413 =item Unpacking a Stack Frame 2414 2415 =item How to Eat an Egg on a Net 2416 2417 =item Byte-order modifiers 2418 2419 =item Floating point Numbers 2420 2421 =back 2422 2423 =item Exotic Templates 2424 2425 =over 4 2426 2427 =item Bit Strings 2428 2429 =item Uuencoding 2430 2431 =item Doing Sums 2432 2433 =item Unicode 2434 2435 =item Another Portable Binary Encoding 2436 2437 =back 2438 2439 =item Template Grouping 2440 2441 =item Lengths and Widths 2442 2443 =over 4 2444 2445 =item String Lengths 2446 2447 =item Dynamic Templates 2448 2449 =item Counting Repetitions 2450 2451 =back 2452 2453 =item Packing and Unpacking C Structures 2454 2455 =over 4 2456 2457 =item The Alignment Pit 2458 2459 =item Dealing with Endian-ness 2460 2461 =item Alignment, Take 2 2462 2463 =item Alignment, Take 3 2464 2465 =item Pointers for How to Use Them 2466 2467 =back 2468 2469 =item Pack Recipes 2470 2471 =item Funnies Section 2472 2473 =item Authors 2474 2475 =back 2476 2477 =head2 perlpod - the Plain Old Documentation format 2478 2479 =over 4 2480 2481 =item DESCRIPTION 2482 2483 =over 4 2484 2485 =item Ordinary Paragraph 2486 X<POD, ordinary paragraph> 2487 2488 =item Verbatim Paragraph 2489 X<POD, verbatim paragraph> X<verbatim> 2490 2491 =item Command Paragraph 2492 X<POD, command> 2493 2494 C<=head1 I<Heading Text>> X<=head1> X<=head2> X<=head3> X<=head4> X<head1> 2495 X<head2> X<head3> X<head4>, C<=head2 I<Heading Text>>, C<=head3 I<Heading 2496 Text>>, C<=head4 I<Heading Text>>, C<=over I<indentlevel>> X<=over> 2497 X<=item> X<=back> X<over> X<item> X<back>, C<=item I<stuff...>>, C<=back>, 2498 C<=cut> X<=cut> X<cut>, C<=pod> X<=pod> X<pod>, C<=begin I<formatname>> 2499 X<=begin> X<=end> X<=for> X<begin> X<end> X<for>, C<=end I<formatname>>, 2500 C<=for I<formatname> I<text...>>, C<=encoding I<encodingname>> X<=encoding> 2501 X<encoding> 2502 2503 =item Formatting Codes 2504 X<POD, formatting code> X<formatting code> 2505 X<POD, interior sequence> X<interior sequence> 2506 2507 C<IE<lt>textE<gt>> -- italic text X<I> X<< IZ<><> >> X<POD, formatting 2508 code, italic> X<italic>, C<BE<lt>textE<gt>> -- bold text X<B> X<< BZ<><> >> 2509 X<POD, formatting code, bold> X<bold>, C<CE<lt>codeE<gt>> -- code text X<C> 2510 X<< CZ<><> >> X<POD, formatting code, code> X<code>, C<LE<lt>nameE<gt>> -- 2511 a hyperlink X<L> X<< LZ<><> >> X<POD, formatting code, hyperlink> 2512 X<hyperlink>, C<EE<lt>escapeE<gt>> -- a character escape X<E> X<< EZ<><> >> 2513 X<POD, formatting code, escape> X<escape>, C<FE<lt>filenameE<gt>> -- used 2514 for filenames X<F> X<< FZ<><> >> X<POD, formatting code, filename> 2515 X<filename>, C<SE<lt>textE<gt>> -- text contains non-breaking spaces X<S> 2516 X<< SZ<><> >> X<POD, formatting code, non-breaking space> X<non-breaking 2517 space>, C<XE<lt>topic nameE<gt>> -- an index entry X<X> X<< XZ<><> >> 2518 X<POD, formatting code, index entry> X<index entry>, C<ZE<lt>E<gt>> -- a 2519 null (zero-effect) formatting code X<Z> X<< ZZ<><> >> X<POD, formatting 2520 code, null> X<null> 2521 2522 =item The Intent 2523 X<POD, intent of> 2524 2525 =item Embedding Pods in Perl Modules 2526 X<POD, embedding> 2527 2528 =item Hints for Writing Pod 2529 2530 X<podchecker> X<POD, validating> 2531 2532 =back 2533 2534 =item SEE ALSO 2535 2536 =item AUTHOR 2537 2538 =back 2539 2540 =head2 perlpodspec - Plain Old Documentation: format specification and 2541 notes 2542 2543 =over 4 2544 2545 =item DESCRIPTION 2546 2547 =item Pod Definitions 2548 2549 =item Pod Commands 2550 2551 "=head1", "=head2", "=head3", "=head4", "=pod", "=cut", "=over", "=item", 2552 "=back", "=begin formatname", "=end formatname", "=for formatname text...", 2553 "=encoding encodingname" 2554 2555 =item Pod Formatting Codes 2556 2557 C<IE<lt>textE<gt>> -- italic text, C<BE<lt>textE<gt>> -- bold text, 2558 C<CE<lt>codeE<gt>> -- code text, C<FE<lt>filenameE<gt>> -- style for 2559 filenames, C<XE<lt>topic nameE<gt>> -- an index entry, C<ZE<lt>E<gt>> -- a 2560 null (zero-effect) formatting code, C<LE<lt>nameE<gt>> -- a hyperlink, 2561 C<EE<lt>escapeE<gt>> -- a character escape, C<SE<lt>textE<gt>> -- text 2562 contains non-breaking spaces 2563 2564 =item Notes on Implementing Pod Processors 2565 2566 =item About LE<lt>...E<gt> Codes 2567 2568 First:, Second:, Third:, Fourth:, Fifth:, Sixth: 2569 2570 =item About =over...=back Regions 2571 2572 =item About Data Paragraphs and "=begin/=end" Regions 2573 2574 =item SEE ALSO 2575 2576 =item AUTHOR 2577 2578 =back 2579 2580 =head2 perlrun - how to execute the Perl interpreter 2581 2582 =over 4 2583 2584 =item SYNOPSIS 2585 2586 =item DESCRIPTION 2587 2588 =over 4 2589 2590 =item #! and quoting on non-Unix systems 2591 X<hashbang> X<#!> 2592 2593 OS/2, MS-DOS, Win95/NT, Macintosh, VMS 2594 2595 =item Location of Perl 2596 X<perl, location of interpreter> 2597 2598 =item Command Switches 2599 X<perl, command switches> X<command switches> 2600 2601 B<-0>[I<octal/hexadecimal>] X<-0> X<$/>, B<-a> X<-a> X<autosplit>, B<-C 2602 [I<number/list>]> X<-C>, B<-c> X<-c>, B<-d> X<-d> X<-dt>, B<-dt>, 2603 B<-d:>I<foo[=bar,baz]> X<-d> X<-dt>, B<-dt:>I<foo[=bar,baz]>, 2604 B<-D>I<letters> X<-D> X<DEBUGGING> X<-DDEBUGGING>, B<-D>I<number>, B<-e> 2605 I<commandline> X<-e>, B<-E> I<commandline> X<-E>, B<-f> X<-f>, 2606 B<-F>I<pattern> X<-F>, B<-h> X<-h>, B<-i>[I<extension>] X<-i> X<in-place>, 2607 B<-I>I<directory> X<-I> X<@INC>, B<-l>[I<octnum>] X<-l> X<$/> X<$\>, 2608 B<-m>[B<->]I<module> X<-m> X<-M>, B<-M>[B<->]I<module>, 2609 B<-M>[B<->]I<'module ...'>, B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n> 2610 X<-n>, B<-p> X<-p>, B<-P> X<-P>, B<-s> X<-s>, B<-S> X<-S>, B<-t> X<-t>, 2611 B<-T> X<-T>, B<-u> X<-u>, B<-U> X<-U>, B<-v> X<-v>, B<-V> X<-V>, 2612 B<-V:>I<configvar>, B<-w> X<-w>, B<-W> X<-W>, B<-X> X<-X>, B<-x> X<-x>, 2613 B<-x>I<directory> 2614 2615 =back 2616 2617 =item ENVIRONMENT 2618 X<perl, environment variables> 2619 2620 HOME X<HOME>, LOGDIR X<LOGDIR>, PATH X<PATH>, PERL5LIB X<PERL5LIB>, 2621 PERL5OPT X<PERL5OPT>, PERLIO X<PERLIO>, :bytes X<:bytes>, :crlf X<:crlf>, 2622 :mmap X<:mmap>, :perlio X<:perlio>, :pop X<:pop>, :raw X<:raw>, :stdio 2623 X<:stdio>, :unix X<:unix>, :utf8 X<:utf8>, :win32 X<:win32>, PERLIO_DEBUG 2624 X<PERLIO_DEBUG>, PERLLIB X<PERLLIB>, PERL5DB X<PERL5DB>, PERL5DB_THREADED 2625 X<PERL5DB_THREADED>, PERL5SHELL (specific to the Win32 port) X<PERL5SHELL>, 2626 PERL_ALLOW_NON_IFS_LSP (specific to the Win32 port) 2627 X<PERL_ALLOW_NON_IFS_LSP>, PERL_DEBUG_MSTATS X<PERL_DEBUG_MSTATS>, 2628 PERL_DESTRUCT_LEVEL X<PERL_DESTRUCT_LEVEL>, PERL_DL_NONLAZY 2629 X<PERL_DL_NONLAZY>, PERL_ENCODING X<PERL_ENCODING>, PERL_HASH_SEED 2630 X<PERL_HASH_SEED>, PERL_HASH_SEED_DEBUG X<PERL_HASH_SEED_DEBUG>, PERL_ROOT 2631 (specific to the VMS port) X<PERL_ROOT>, PERL_SIGNALS X<PERL_SIGNALS>, 2632 PERL_UNICODE X<PERL_UNICODE>, SYS$LOGIN (specific to the VMS port) 2633 X<SYS$LOGIN> 2634 2635 =back 2636 2637 =head2 perldiag - various Perl diagnostics 2638 2639 =over 4 2640 2641 =item DESCRIPTION 2642 2643 =item SEE ALSO 2644 2645 =back 2646 2647 =head2 perllexwarn - Perl Lexical Warnings 2648 2649 =over 4 2650 2651 =item DESCRIPTION 2652 2653 =over 4 2654 2655 =item Default Warnings and Optional Warnings 2656 2657 =item What's wrong with B<-w> and C<$^W> 2658 2659 =item Controlling Warnings from the Command Line 2660 2661 B<-w> X<-w>, B<-W> X<-W>, B<-X> X<-X> 2662 2663 =item Backward Compatibility 2664 2665 =item Category Hierarchy 2666 X<warning, categories> 2667 2668 =item Fatal Warnings 2669 X<warning, fatal> 2670 2671 =item Reporting Warnings from a Module 2672 X<warning, reporting> X<warning, registering> 2673 2674 =back 2675 2676 =item SEE ALSO 2677 2678 =item AUTHOR 2679 2680 =back 2681 2682 =head2 perldebug - Perl debugging 2683 2684 =over 4 2685 2686 =item DESCRIPTION 2687 2688 =item The Perl Debugger 2689 2690 =over 4 2691 2692 =item Calling the debugger 2693 2694 perl -d program_name, perl -d -e 0, perl -d:Ptkdb program_name, perl -dt 2695 threaded_program_name 2696 2697 =item Debugger Commands 2698 2699 h X<debugger command, h>, h [command], h h, p expr X<debugger command, p>, 2700 x [maxdepth] expr X<debugger command, x>, V [pkg [vars]] X<debugger 2701 command, V>, X [vars] X<debugger command, X>, y [level [vars]] X<debugger 2702 command, y>, T X<debugger command, T> X<backtrace> X<stack, backtrace>, s 2703 [expr] X<debugger command, s> X<step>, n [expr] X<debugger command, n>, r 2704 X<debugger command, r>, <CR>, c [line|sub] X<debugger command, c>, l 2705 X<debugger command, l>, l min+incr, l min-max, l line, l subname, - 2706 X<debugger command, ->, v [line] X<debugger command, v>, . X<debugger 2707 command, .>, f filename X<debugger command, f>, /pattern/, ?pattern?, L 2708 [abw] X<debugger command, L>, S [[!]regex] X<debugger command, S>, t 2709 X<debugger command, t>, t expr X<debugger command, t>, b X<breakpoint> 2710 X<debugger command, b>, b [line] [condition] X<breakpoint> X<debugger 2711 command, b>, b subname [condition] X<breakpoint> X<debugger command, b>, b 2712 postpone subname [condition] X<breakpoint> X<debugger command, b>, b load 2713 filename X<breakpoint> X<debugger command, b>, b compile subname 2714 X<breakpoint> X<debugger command, b>, B line X<breakpoint> X<debugger 2715 command, B>, B * X<breakpoint> X<debugger command, B>, a [line] command 2716 X<debugger command, a>, A line X<debugger command, A>, A * X<debugger 2717 command, A>, w expr X<debugger command, w>, W expr X<debugger command, W>, 2718 W * X<debugger command, W>, o X<debugger command, o>, o booloption ... 2719 X<debugger command, o>, o anyoption? ... X<debugger command, o>, o 2720 option=value ... X<debugger command, o>, < ? X<< debugger command, < >>, < 2721 [ command ] X<< debugger command, < >>, < * X<< debugger command, < >>, << 2722 command X<< debugger command, << >>, > ? X<< debugger command, > >>, > 2723 command X<< debugger command, > >>, > * X<< debugger command, > >>, >> 2724 command X<<< debugger command, >> >>>, { ? X<debugger command, {>, { [ 2725 command ], { * X<debugger command, {>, {{ command X<debugger command, {{>, 2726 ! number X<debugger command, !>, ! -number X<debugger command, !>, ! 2727 pattern X<debugger command, !>, !! cmd X<debugger command, !!>, source file 2728 X<debugger command, source>, H -number X<debugger command, H>, q or ^D 2729 X<debugger command, q> X<debugger command, ^D>, R X<debugger command, R>, 2730 |dbcmd X<debugger command, |>, ||dbcmd X<debugger command, ||>, command, m 2731 expr X<debugger command, m>, M X<debugger command, M>, man [manpage] 2732 X<debugger command, man> 2733 2734 =item Configurable Options 2735 2736 C<recallCommand>, C<ShellBang> X<debugger option, recallCommand> X<debugger 2737 option, ShellBang>, C<pager> X<debugger option, pager>, C<tkRunning> 2738 X<debugger option, tkRunning>, C<signalLevel>, C<warnLevel>, C<dieLevel> 2739 X<debugger option, signalLevel> X<debugger option, warnLevel> X<debugger 2740 option, dieLevel>, C<AutoTrace> X<debugger option, AutoTrace>, C<LineInfo> 2741 X<debugger option, LineInfo>, C<inhibit_exit> X<debugger option, 2742 inhibit_exit>, C<PrintRet> X<debugger option, PrintRet>, C<ornaments> 2743 X<debugger option, ornaments>, C<frame> X<debugger option, frame>, 2744 C<maxTraceLen> X<debugger option, maxTraceLen>, C<windowSize> X<debugger 2745 option, windowSize>, C<arrayDepth>, C<hashDepth> X<debugger option, 2746 arrayDepth> X<debugger option, hashDepth>, C<dumpDepth> X<debugger option, 2747 dumpDepth>, C<compactDump>, C<veryCompact> X<debugger option, compactDump> 2748 X<debugger option, veryCompact>, C<globPrint> X<debugger option, 2749 globPrint>, C<DumpDBFiles> X<debugger option, DumpDBFiles>, C<DumpPackages> 2750 X<debugger option, DumpPackages>, C<DumpReused> X<debugger option, 2751 DumpReused>, C<quote>, C<HighBit>, C<undefPrint> X<debugger option, quote> 2752 X<debugger option, HighBit> X<debugger option, undefPrint>, C<UsageOnly> 2753 X<debugger option, UsageOnly>, C<TTY> X<debugger option, TTY>, C<noTTY> 2754 X<debugger option, noTTY>, C<ReadLine> X<debugger option, ReadLine>, 2755 C<NonStop> X<debugger option, NonStop> 2756 2757 =item Debugger input/output 2758 2759 Prompt, Multiline commands, Stack backtrace X<backtrace> X<stack, 2760 backtrace>, Line Listing Format, Frame listing 2761 2762 =item Debugging compile-time statements 2763 2764 =item Debugger Customization 2765 2766 =item Readline Support 2767 2768 =item Editor Support for Debugging 2769 2770 =item The Perl Profiler 2771 X<profile> X<profiling> X<profiler> 2772 2773 =back 2774 2775 =item Debugging regular expressions 2776 X<regular expression, debugging> 2777 X<regex, debugging> X<regexp, debugging> 2778 2779 =item Debugging memory usage 2780 X<memory usage> 2781 2782 =item SEE ALSO 2783 2784 =item BUGS 2785 2786 =back 2787 2788 =head2 perlvar - Perl predefined variables 2789 2790 =over 4 2791 2792 =item DESCRIPTION 2793 2794 =over 4 2795 2796 =item Predefined Names 2797 2798 $ARG, $_ X<$_> X<$ARG>, $a, $b X<$a> X<$b>, $<I<digits>> X<$1> X<$2> X<$3>, 2799 $MATCH, $& X<$&> X<$MATCH>, ${^MATCH} X<${^MATCH}>, $PREMATCH, $` X<$`> 2800 X<$PREMATCH>, ${^PREMATCH} X<${^PREMATCH}>, $POSTMATCH, $' X<$'> 2801 X<$POSTMATCH>, ${^POSTMATCH} X<${^POSTMATCH}>, $LAST_PAREN_MATCH, $+ X<$+> 2802 X<$LAST_PAREN_MATCH>, $LAST_SUBMATCH_RESULT, $^N X<$^N>, @LAST_MATCH_END, 2803 @+ X<@+> X<@LAST_MATCH_END>, %+ X<%+>, HANDLE->input_line_number(EXPR), 2804 $INPUT_LINE_NUMBER, $NR, $. X<$.> X<$NR> X<$INPUT_LINE_NUMBER> X<line 2805 number>, IO::Handle->input_record_separator(EXPR), $INPUT_RECORD_SEPARATOR, 2806 $RS, $/ X<$/> X<$RS> X<$INPUT_RECORD_SEPARATOR>, HANDLE->autoflush(EXPR), 2807 $OUTPUT_AUTOFLUSH, $| X<$|> X<autoflush> X<flush> X<$OUTPUT_AUTOFLUSH>, 2808 IO::Handle->output_field_separator EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $, 2809 X<$,> X<$OFS> X<$OUTPUT_FIELD_SEPARATOR>, 2810 IO::Handle->output_record_separator EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, 2811 $\ X<$\> X<$ORS> X<$OUTPUT_RECORD_SEPARATOR>, $LIST_SEPARATOR, $" X<$"> 2812 X<$LIST_SEPARATOR>, $SUBSCRIPT_SEPARATOR, $SUBSEP, $; X<$;> X<$SUBSEP> 2813 X<SUBSCRIPT_SEPARATOR>, HANDLE->format_page_number(EXPR), 2814 $FORMAT_PAGE_NUMBER, $% X<$%> X<$FORMAT_PAGE_NUMBER>, 2815 HANDLE->format_lines_per_page(EXPR), $FORMAT_LINES_PER_PAGE, $= X<$=> 2816 X<$FORMAT_LINES_PER_PAGE>, HANDLE->format_lines_left(EXPR), 2817 $FORMAT_LINES_LEFT, $- X<$-> X<$FORMAT_LINES_LEFT>, @LAST_MATCH_START, @- 2818 X<@-> X<@LAST_MATCH_START>, C<$`> is the same as C<substr($var, 0, $-[0])>, 2819 C<$&> is the same as C<substr($var, $-[0], $+[0] - $-[0])>, C<$'> is the 2820 same as C<substr($var, $+[0])>, C<$1> is the same as C<substr($var, $-[1], 2821 $+[1] - $-[1])>, C<$2> is the same as C<substr($var, $-[2], $+[2] - 2822 $-[2])>, C<$3> is the same as C<substr($var, $-[3], $+[3] - $-[3])>, %- 2823 X<%->, HANDLE->format_name(EXPR), $FORMAT_NAME, $~ X<$~> X<$FORMAT_NAME>, 2824 HANDLE->format_top_name(EXPR), $FORMAT_TOP_NAME, $^ X<$^> 2825 X<$FORMAT_TOP_NAME>, IO::Handle->format_line_break_characters EXPR, 2826 $FORMAT_LINE_BREAK_CHARACTERS, $: X<$:> X<FORMAT_LINE_BREAK_CHARACTERS>, 2827 IO::Handle->format_formfeed EXPR, $FORMAT_FORMFEED, $^L X<$^L> 2828 X<$FORMAT_FORMFEED>, $ACCUMULATOR, $^A X<$^A> X<$ACCUMULATOR>, 2829 $CHILD_ERROR, $? X<$?> X<$CHILD_ERROR>, ${^CHILD_ERROR_NATIVE} 2830 X<$^CHILD_ERROR_NATIVE>, ${^ENCODING} X<$^ENCODING>, $OS_ERROR, $ERRNO, $! 2831 X<$!> X<$ERRNO> X<$OS_ERROR>, %OS_ERROR, %ERRNO, %! X<%!>, 2832 $EXTENDED_OS_ERROR, $^E X<$^E> X<$EXTENDED_OS_ERROR>, $EVAL_ERROR, $@ X<$@> 2833 X<$EVAL_ERROR>, $PROCESS_ID, $PID, $$ X<$$> X<$PID> X<$PROCESS_ID>, 2834 $REAL_USER_ID, $UID, $< X<< $< >> X<$UID> X<$REAL_USER_ID>, 2835 $EFFECTIVE_USER_ID, $EUID, $> X<< $> >> X<$EUID> X<$EFFECTIVE_USER_ID>, 2836 $REAL_GROUP_ID, $GID, $( X<$(> X<$GID> X<$REAL_GROUP_ID>, 2837 $EFFECTIVE_GROUP_ID, $EGID, $) X<$)> X<$EGID> X<$EFFECTIVE_GROUP_ID>, 2838 $PROGRAM_NAME, $0 X<$0> X<$PROGRAM_NAME>, $[ X<$[>, $] X<$]>, $COMPILING, 2839 $^C X<$^C> X<$COMPILING>, $DEBUGGING, $^D X<$^D> X<$DEBUGGING>, 2840 ${^RE_DEBUG_FLAGS}, ${^RE_TRIE_MAXBUF}, $SYSTEM_FD_MAX, $^F X<$^F> 2841 X<$SYSTEM_FD_MAX>, $^H, %^H, $INPLACE_EDIT, $^I X<$^I> X<$INPLACE_EDIT>, 2842 $^M X<$^M>, $OSNAME, $^O X<$^O> X<$OSNAME>, ${^OPEN}, $PERLDB, $^P X<$^P> 2843 X<$PERLDB>, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, 2844 0x400, $LAST_REGEXP_CODE_RESULT, $^R X<$^R> X<$LAST_REGEXP_CODE_RESULT>, 2845 $EXCEPTIONS_BEING_CAUGHT, $^S X<$^S> X<$EXCEPTIONS_BEING_CAUGHT>, 2846 $BASETIME, $^T X<$^T> X<$BASETIME>, ${^TAINT}, ${^UNICODE}, ${^UTF8CACHE}, 2847 ${^UTF8LOCALE}, $PERL_VERSION, $^V X<$^V> X<$PERL_VERSION>, $WARNING, $^W 2848 X<$^W> X<$WARNING>, ${^WARNING_BITS}, ${^WIN32_SLOPPY_STAT}, 2849 $EXECUTABLE_NAME, $^X X<$^X> X<$EXECUTABLE_NAME>, ARGV X<ARGV>, $ARGV 2850 X<$ARGV>, @ARGV X<@ARGV>, ARGVOUT X<ARGVOUT>, @F X<@F>, @INC X<@INC>, @ARG, 2851 @_ X<@_> X<@ARG>, %INC X<%INC>, %ENV, $ENV{expr} X<%ENV>, %SIG, $SIG{expr} 2852 X<%SIG> 2853 2854 =item Error Indicators 2855 X<error> X<exception> 2856 2857 =item Technical Note on the Syntax of Variable Names 2858 2859 =back 2860 2861 =item BUGS 2862 2863 =back 2864 2865 =head2 perlre - Perl regular expressions 2866 2867 =over 4 2868 2869 =item DESCRIPTION 2870 2871 =over 4 2872 2873 =item Modifiers 2874 2875 m X</m> X<regex, multiline> X<regexp, multiline> X<regular expression, 2876 multiline>, s X</s> X<regex, single-line> X<regexp, single-line> X<regular 2877 expression, single-line>, i X</i> X<regex, case-insensitive> X<regexp, 2878 case-insensitive> X<regular expression, case-insensitive>, x X</x>, p X</p> 2879 X<regex, preserve> X<regexp, preserve>, g and c X</g> X</c> 2880 2881 =item Regular Expressions 2882 2883 [1], [2], [3], cntrl X<cntrl>, graph X<graph>, print X<print>, punct 2884 X<punct>, xdigit X<xdigit> 2885 2886 =item Extended Patterns 2887 2888 C<(?#text)> X<(?#)>, C<(?pimsx-imsx)> X<(?)>, C<(?:pattern)> X<(?:)>, 2889 C<(?imsx-imsx:pattern)>, C<(?|pattern)> X<(?|)> X<Branch reset>, 2890 Look-Around Assertions X<look-around assertion> X<lookaround assertion> 2891 X<look-around> X<lookaround>, C<(?=pattern)> X<(?=)> X<look-ahead, 2892 positive> X<lookahead, positive>, C<(?!pattern)> X<(?!)> X<look-ahead, 2893 negative> X<lookahead, negative>, C<(?<=pattern)> C<\K> X<(?<=)> 2894 X<look-behind, positive> X<lookbehind, positive> X<\K>, C<(?<!pattern)> 2895 X<(?<!)> X<look-behind, negative> X<lookbehind, negative>, 2896 C<(?'NAME'pattern)>, C<< (?<NAME>pattern) >> X<< (?<NAME>) >> X<(?'NAME')> 2897 X<named capture> X<capture>, C<< \k<NAME> >>, C<< \k'NAME' >>, C<(?{ code 2898 })> X<(?{})> X<regex, code in> X<regexp, code in> X<regular expression, 2899 code in>, C<(??{ code })> X<(??{})> X<regex, postponed> X<regexp, 2900 postponed> X<regular expression, postponed>, C<(?PARNO)> C<(?-PARNO)> 2901 C<(?+PARNO)> C<(?R)> C<(?0)> X<(?PARNO)> X<(?1)> X<(?R)> X<(?0)> X<(?-1)> 2902 X<(?+1)> X<(?-PARNO)> X<(?+PARNO)> X<regex, recursive> X<regexp, recursive> 2903 X<regular expression, recursive> X<regex, relative recursion>, C<(?&NAME)> 2904 X<(?&NAME)>, C<(?(condition)yes-pattern|no-pattern)> X<(?()>, 2905 C<(?(condition)yes-pattern)>, (1) (2) .., (<NAME>) ('NAME'), (?{ CODE }), 2906 (R), (R1) (R2) .., (R&NAME), (DEFINE), C<< (?>pattern) >> X<backtrack> 2907 X<backtracking> X<atomic> X<possessive> 2908 2909 =item Special Backtracking Control Verbs 2910 2911 Verbs that take an argument, C<(*PRUNE)> C<(*PRUNE:NAME)> X<(*PRUNE)> 2912 X<(*PRUNE:NAME)>, C<(*SKIP)> C<(*SKIP:NAME)> X<(*SKIP)>, C<(*MARK:NAME)> 2913 C<(*:NAME)> X<(*MARK)> C<(*MARK:NAME)> C<(*:NAME)>, C<(*THEN)> 2914 C<(*THEN:NAME)>, C<(*COMMIT)> X<(*COMMIT)>, Verbs without an argument, 2915 C<(*FAIL)> C<(*F)> X<(*FAIL)> X<(*F)>, C<(*ACCEPT)> X<(*ACCEPT)> 2916 2917 =item Backtracking 2918 X<backtrack> X<backtracking> 2919 2920 =item Version 8 Regular Expressions 2921 X<regular expression, version 8> X<regex, version 8> X<regexp, version 8> 2922 2923 =item Warning on \1 Instead of $1 2924 2925 =item Repeated Patterns Matching a Zero-length Substring 2926 2927 =item Combining RE Pieces 2928 2929 C<ST>, C<S|T>, C<S{REPEAT_COUNT}>, C<S{min,max}>, C<S{min,max}?>, C<S?>, 2930 C<S*>, C<S+>, C<S??>, C<S*?>, C<S+?>, C<< (?>S) >>, C<(?=S)>, C<(?<=S)>, 2931 C<(?!S)>, C<(?<!S)>, C<(??{ EXPR })>, C<(?PARNO)>, 2932 C<(?(condition)yes-pattern|no-pattern)> 2933 2934 =item Creating Custom RE Engines 2935 2936 =back 2937 2938 =item PCRE/Python Support 2939 2940 C<< (?PE<lt>NAMEE<gt>pattern) >>, C<< (?P=NAME) >>, C<< (?P>NAME) >> 2941 2942 =item BUGS 2943 2944 =item SEE ALSO 2945 2946 =back 2947 2948 =head2 perlrebackslash - Perl Regular Expression Backslash Sequences and 2949 Escapes 2950 2951 =over 4 2952 2953 =item DESCRIPTION 2954 2955 =over 4 2956 2957 =item The backslash 2958 2959 [1] 2960 2961 =item All the sequences and escapes 2962 2963 =item Character Escapes 2964 2965 [1], [2] 2966 2967 =item Modifiers 2968 2969 =item Character classes 2970 2971 =item Referencing 2972 2973 =item Assertions 2974 2975 \A, \z, \Z, \G, \b, \B 2976 2977 =item Misc 2978 2979 \C, \K, \R, \X 2980 2981 =back 2982 2983 =back 2984 2985 =head2 perlrecharclass - Perl Regular Expression Character Classes 2986 2987 =over 4 2988 2989 =item DESCRIPTION 2990 2991 =over 4 2992 2993 =item The dot 2994 2995 =item Backslashed sequences 2996 2997 [1] 2998 2999 =item Bracketed Character Classes 3000 3001 cntrl, graph, print, punct 3002 3003 =item Locale, Unicode and UTF-8 3004 3005 =back 3006 3007 =back 3008 3009 =head2 perlreref - Perl Regular Expressions Reference 3010 3011 =over 4 3012 3013 =item DESCRIPTION 3014 3015 =over 4 3016 3017 =item OPERATORS 3018 3019 =item SYNTAX 3020 3021 =item ESCAPE SEQUENCES 3022 3023 =item CHARACTER CLASSES 3024 3025 =item ANCHORS 3026 3027 =item QUANTIFIERS 3028 3029 =item EXTENDED CONSTRUCTS 3030 3031 =item VARIABLES 3032 3033 =item FUNCTIONS 3034 3035 =item TERMINOLOGY 3036 3037 =back 3038 3039 =item AUTHOR 3040 3041 =item SEE ALSO 3042 3043 =item THANKS 3044 3045 =back 3046 3047 =head2 perlref - Perl references and nested data structures 3048 3049 =over 4 3050 3051 =item NOTE 3052 3053 =item DESCRIPTION 3054 3055 =over 4 3056 3057 =item Making References 3058 X<reference, creation> X<referencing> 3059 3060 1. X<\> X<backslash>, 2. X<array, anonymous> X<[> X<[]> X<square bracket> 3061 X<bracket, square> X<arrayref> X<array reference> X<reference, array>, 3. 3062 X<hash, anonymous> X<{> X<{}> X<curly bracket> X<bracket, curly> X<brace> 3063 X<hashref> X<hash reference> X<reference, hash>, 4. X<subroutine, 3064 anonymous> X<subroutine, reference> X<reference, subroutine> X<scope, 3065 lexical> X<closure> X<lexical> X<lexical scope>, 5. X<constructor> X<new>, 3066 6. X<autovivification>, 7. X<*foo{THING}> X<*> 3067 3068 =item Using References 3069 X<reference, use> X<dereferencing> X<dereference> 3070 3071 =item Symbolic references 3072 X<reference, symbolic> X<reference, soft> 3073 X<symbolic reference> X<soft reference> 3074 3075 =item Not-so-symbolic references 3076 3077 =item Pseudo-hashes: Using an array as a hash 3078 X<pseudo-hash> X<pseudo hash> X<pseudohash> 3079 3080 =item Function Templates 3081 X<scope, lexical> X<closure> X<lexical> X<lexical scope> 3082 X<subroutine, nested> X<sub, nested> X<subroutine, local> X<sub, local> 3083 3084 =back 3085 3086 =item WARNING 3087 X<reference, string context> X<reference, use as hash key> 3088 3089 =item SEE ALSO 3090 3091 =back 3092 3093 =head2 perlform - Perl formats 3094 3095 =over 4 3096 3097 =item DESCRIPTION 3098 3099 =over 4 3100 3101 =item Text Fields 3102 X<format, text field> 3103 3104 =item Numeric Fields 3105 X<#> X<format, numeric field> 3106 3107 =item The Field @* for Variable Width Multi-Line Text 3108 X<@*> 3109 3110 =item The Field ^* for Variable Width One-line-at-a-time Text 3111 X<^*> 3112 3113 =item Specifying Values 3114 X<format, specifying values> 3115 3116 =item Using Fill Mode 3117 X<format, fill mode> 3118 3119 =item Suppressing Lines Where All Fields Are Void 3120 X<format, suppressing lines> 3121 3122 =item Repeating Format Lines 3123 X<format, repeating lines> 3124 3125 =item Top of Form Processing 3126 X<format, top of form> X<top> X<header> 3127 3128 =item Format Variables 3129 X<format variables> 3130 X<format, variables> 3131 3132 =back 3133 3134 =item NOTES 3135 3136 =over 4 3137 3138 =item Footers 3139 X<format, footer> X<footer> 3140 3141 =item Accessing Formatting Internals 3142 X<format, internals> 3143 3144 =back 3145 3146 =item WARNINGS 3147 3148 =back 3149 3150 =head2 perlobj - Perl objects 3151 3152 =over 4 3153 3154 =item DESCRIPTION 3155 3156 =over 4 3157 3158 =item An Object is Simply a Reference 3159 X<object> X<bless> X<constructor> X<new> 3160 3161 =item A Class is Simply a Package 3162 X<class> X<package> X<@ISA> X<inheritance> 3163 3164 =item A Method is Simply a Subroutine 3165 X<method> 3166 3167 =item Method Invocation 3168 X<invocation> X<method> X<arrow> X<< -> >> 3169 3170 =item Indirect Object Syntax 3171 X<indirect object syntax> X<invocation, indirect> X<indirect> 3172 3173 =item Default UNIVERSAL methods 3174 X<UNIVERSAL> 3175 3176 isa(CLASS) X<isa>, can(METHOD) X<can>, VERSION( [NEED] ) X<VERSION> 3177 3178 =item Destructors 3179 X<destructor> X<DESTROY> 3180 3181 =item Summary 3182 3183 =item Two-Phased Garbage Collection 3184 X<garbage collection> X<GC> X<circular reference> 3185 X<reference, circular> X<DESTROY> X<destructor> 3186 3187 =back 3188 3189 =item SEE ALSO 3190 3191 =back 3192 3193 =head2 perltie - how to hide an object class in a simple variable 3194 3195 =over 4 3196 3197 =item SYNOPSIS 3198 3199 =item DESCRIPTION 3200 3201 =over 4 3202 3203 =item Tying Scalars 3204 X<scalar, tying> 3205 3206 TIESCALAR classname, LIST X<TIESCALAR>, FETCH this X<FETCH>, STORE this, 3207 value X<STORE>, UNTIE this X<UNTIE>, DESTROY this X<DESTROY> 3208 3209 =item Tying Arrays 3210 X<array, tying> 3211 3212 TIEARRAY classname, LIST X<TIEARRAY>, FETCH this, index X<FETCH>, STORE 3213 this, index, value X<STORE>, FETCHSIZE this X<FETCHSIZE>, STORESIZE this, 3214 count X<STORESIZE>, EXTEND this, count X<EXTEND>, EXISTS this, key 3215 X<EXISTS>, DELETE this, key X<DELETE>, CLEAR this X<CLEAR>, PUSH this, LIST 3216 X<PUSH>, POP this X<POP>, SHIFT this X<SHIFT>, UNSHIFT this, LIST 3217 X<UNSHIFT>, SPLICE this, offset, length, LIST X<SPLICE>, UNTIE this 3218 X<UNTIE>, DESTROY this X<DESTROY> 3219 3220 =item Tying Hashes 3221 X<hash, tying> 3222 3223 USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST X<TIEHASH>, FETCH this, 3224 key X<FETCH>, STORE this, key, value X<STORE>, DELETE this, key X<DELETE>, 3225 CLEAR this X<CLEAR>, EXISTS this, key X<EXISTS>, FIRSTKEY this X<FIRSTKEY>, 3226 NEXTKEY this, lastkey X<NEXTKEY>, SCALAR this X<SCALAR>, UNTIE this 3227 X<UNTIE>, DESTROY this X<DESTROY> 3228 3229 =item Tying FileHandles 3230 X<filehandle, tying> 3231 3232 TIEHANDLE classname, LIST X<TIEHANDLE>, WRITE this, LIST X<WRITE>, PRINT 3233 this, LIST X<PRINT>, PRINTF this, LIST X<PRINTF>, READ this, LIST X<READ>, 3234 READLINE this X<READLINE>, GETC this X<GETC>, CLOSE this X<CLOSE>, UNTIE 3235 this X<UNTIE>, DESTROY this X<DESTROY> 3236 3237 =item UNTIE this 3238 X<UNTIE> 3239 3240 =item The C<untie> Gotcha 3241 X<untie> 3242 3243 =back 3244 3245 =item SEE ALSO 3246 3247 =item BUGS 3248 3249 =item AUTHOR 3250 3251 =back 3252 3253 =head2 perldbmfilter - Perl DBM Filters 3254 3255 =over 4 3256 3257 =item SYNOPSIS 3258 3259 =item DESCRIPTION 3260 3261 B<filter_store_key>, B<filter_store_value>, B<filter_fetch_key>, 3262 B<filter_fetch_value> 3263 3264 =over 4 3265 3266 =item The Filter 3267 3268 =item An Example -- the NULL termination problem. 3269 3270 =item Another Example -- Key is a C int. 3271 3272 =back 3273 3274 =item SEE ALSO 3275 3276 =item AUTHOR 3277 3278 =back 3279 3280 =head2 perlipc - Perl interprocess communication (signals, fifos, pipes, 3281 safe subprocesses, sockets, and semaphores) 3282 3283 =over 4 3284 3285 =item DESCRIPTION 3286 3287 =item Signals 3288 3289 =over 4 3290 3291 =item Handling the SIGHUP Signal in Daemons 3292 3293 =back 3294 3295 =item Named Pipes 3296 3297 =over 4 3298 3299 =item Deferred Signals (Safe Signals) 3300 3301 Long-running opcodes, Interrupting IO, Restartable system calls, Signals as 3302 "faults", Signals triggered by operating system state 3303 3304 =back 3305 3306 =item Using open() for IPC 3307 3308 =over 4 3309 3310 =item Filehandles 3311 3312 =item Background Processes 3313 3314 =item Complete Dissociation of Child from Parent 3315 3316 =item Safe Pipe Opens 3317 3318 =item Bidirectional Communication with Another Process 3319 3320 =item Bidirectional Communication with Yourself 3321 3322 =back 3323 3324 =item Sockets: Client/Server Communication 3325 3326 =over 4 3327 3328 =item Internet Line Terminators 3329 3330 =item Internet TCP Clients and Servers 3331 3332 =item Unix-Domain TCP Clients and Servers 3333 3334 =back 3335 3336 =item TCP Clients with IO::Socket 3337 3338 =over 4 3339 3340 =item A Simple Client 3341 3342 C<Proto>, C<PeerAddr>, C<PeerPort> 3343 3344 =item A Webget Client 3345 3346 =item Interactive Client with IO::Socket 3347 3348 =back 3349 3350 =item TCP Servers with IO::Socket 3351 3352 Proto, LocalPort, Listen, Reuse 3353 3354 =item UDP: Message Passing 3355 3356 =item SysV IPC 3357 3358 =item NOTES 3359 3360 =item BUGS 3361 3362 =item AUTHOR 3363 3364 =item SEE ALSO 3365 3366 =back 3367 3368 =head2 perlfork - Perl's fork() emulation 3369 3370 =over 4 3371 3372 =item SYNOPSIS 3373 3374 =item DESCRIPTION 3375 3376 =over 4 3377 3378 =item Behavior of other Perl features in forked pseudo-processes 3379 3380 $$ or $PROCESS_ID, %ENV, chdir() and all other builtins that accept 3381 filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to 3382 files, directories and network sockets 3383 3384 =item Resource limits 3385 3386 =item Killing the parent process 3387 3388 =item Lifetime of the parent process and pseudo-processes 3389 3390 =item CAVEATS AND LIMITATIONS 3391 3392 BEGIN blocks, Open filehandles, Forking pipe open() not yet implemented, 3393 Global state maintained by XSUBs, Interpreter embedded in larger 3394 application, Thread-safety of extensions 3395 3396 =back 3397 3398 =item BUGS 3399 3400 =item AUTHOR 3401 3402 =item SEE ALSO 3403 3404 =back 3405 3406 =head2 perlnumber - semantics of numbers and numeric operations in Perl 3407 3408 =over 4 3409 3410 =item SYNOPSIS 3411 3412 =item DESCRIPTION 3413 3414 =item Storing numbers 3415 3416 =item Numeric operators and numeric conversions 3417 3418 =item Flavors of Perl numeric operations 3419 3420 Arithmetic operators, ++, Arithmetic operators during C<use integer>, Other 3421 mathematical operators, Bitwise operators, Bitwise operators during C<use 3422 integer>, Operators which expect an integer, Operators which expect a 3423 string 3424 3425 =item AUTHOR 3426 3427 =item SEE ALSO 3428 3429 =back 3430 3431 =head2 perlthrtut - Tutorial on threads in Perl 3432 3433 =over 4 3434 3435 =item DESCRIPTION 3436 3437 =item What Is A Thread Anyway? 3438 3439 =item Threaded Program Models 3440 3441 =over 4 3442 3443 =item Boss/Worker 3444 3445 =item Work Crew 3446 3447 =item Pipeline 3448 3449 =back 3450 3451 =item What kind of threads are Perl threads? 3452 3453 =item Thread-Safe Modules 3454 3455 =item Thread Basics 3456 3457 =over 4 3458 3459 =item Basic Thread Support 3460 3461 =item A Note about the Examples 3462 3463 =item Creating Threads 3464 3465 =item Waiting For A Thread To Exit 3466 3467 =item Ignoring A Thread 3468 3469 =item Process and Thread Termination 3470 3471 =back 3472 3473 =item Threads And Data 3474 3475 =over 4 3476 3477 =item Shared And Unshared Data 3478 3479 =item Thread Pitfalls: Races 3480 3481 =back 3482 3483 =item Synchronization and control 3484 3485 =over 4 3486 3487 =item Controlling access: lock() 3488 3489 =item A Thread Pitfall: Deadlocks 3490 3491 =item Queues: Passing Data Around 3492 3493 =item Semaphores: Synchronizing Data Access 3494 3495 =item Basic semaphores 3496 3497 =item Advanced Semaphores 3498 3499 =item Waiting for a Condition 3500 3501 =item Giving up control 3502 3503 =back 3504 3505 =item General Thread Utility Routines 3506 3507 =over 4 3508 3509 =item What Thread Am I In? 3510 3511 =item Thread IDs 3512 3513 =item Are These Threads The Same? 3514 3515 =item What Threads Are Running? 3516 3517 =back 3518 3519 =item A Complete Example 3520 3521 =item Different implementations of threads 3522 3523 =item Performance considerations 3524 3525 =item Process-scope Changes 3526 3527 =item Thread-Safety of System Libraries 3528 3529 =item Conclusion 3530 3531 =item SEE ALSO 3532 3533 =item Bibliography 3534 3535 =over 4 3536 3537 =item Introductory Texts 3538 3539 =item OS-Related References 3540 3541 =item Other References 3542 3543 =back 3544 3545 =item Acknowledgements 3546 3547 =item AUTHOR 3548 3549 =item Copyrights 3550 3551 =back 3552 3553 =head2 perlothrtut - old tutorial on threads in Perl 3554 3555 =over 4 3556 3557 =item DESCRIPTION 3558 3559 =item What Is A Thread Anyway? 3560 3561 =item Threaded Program Models 3562 3563 =over 4 3564 3565 =item Boss/Worker 3566 3567 =item Work Crew 3568 3569 =item Pipeline 3570 3571 =back 3572 3573 =item Native threads 3574 3575 =item What kind of threads are perl threads? 3576 3577 =item Threadsafe Modules 3578 3579 =item Thread Basics 3580 3581 =over 4 3582 3583 =item Basic Thread Support 3584 3585 =item Creating Threads 3586 3587 =item Giving up control 3588 3589 =item Waiting For A Thread To Exit 3590 3591 =item Errors In Threads 3592 3593 =item Ignoring A Thread 3594 3595 =back 3596 3597 =item Threads And Data 3598 3599 =over 4 3600 3601 =item Shared And Unshared Data 3602 3603 =item Thread Pitfall: Races 3604 3605 =item Controlling access: lock() 3606 3607 =item Thread Pitfall: Deadlocks 3608 3609 =item Queues: Passing Data Around 3610 3611 =back 3612 3613 =item Threads And Code 3614 3615 =over 4 3616 3617 =item Semaphores: Synchronizing Data Access 3618 3619 Basic semaphores, Advanced Semaphores 3620 3621 =item Attributes: Restricting Access To Subroutines 3622 3623 =item Subroutine Locks 3624 3625 =item Methods 3626 3627 =item Locking A Subroutine 3628 3629 =back 3630 3631 =item General Thread Utility Routines 3632 3633 =over 4 3634 3635 =item What Thread Am I In? 3636 3637 =item Thread IDs 3638 3639 =item Are These Threads The Same? 3640 3641 =item What Threads Are Running? 3642 3643 =back 3644 3645 =item A Complete Example 3646 3647 =item Conclusion 3648 3649 =item Bibliography 3650 3651 =over 4 3652 3653 =item Introductory Texts 3654 3655 =item OS-Related References 3656 3657 =item Other References 3658 3659 =back 3660 3661 =item Acknowledgements 3662 3663 =item AUTHOR 3664 3665 =item Copyrights 3666 3667 =back 3668 3669 =head2 perlport - Writing portable Perl 3670 3671 =over 4 3672 3673 =item DESCRIPTION 3674 3675 Not all Perl programs have to be portable, Nearly all of Perl already I<is> 3676 portable 3677 3678 =item ISSUES 3679 3680 =over 4 3681 3682 =item Newlines 3683 3684 =item Numbers endianness and Width 3685 3686 =item Files and Filesystems 3687 3688 =item System Interaction 3689 3690 =item Command names versus file pathnames 3691 3692 =item Networking 3693 3694 =item Interprocess Communication (IPC) 3695 3696 =item External Subroutines (XS) 3697 3698 =item Standard Modules 3699 3700 =item Time and Date 3701 3702 =item Character sets and character encoding 3703 3704 =item Internationalisation 3705 3706 =item System Resources 3707 3708 =item Security 3709 3710 =item Style 3711 3712 =back 3713 3714 =item CPAN Testers 3715 3716 =item PLATFORMS 3717 3718 =over 4 3719 3720 =item Unix 3721 3722 =item DOS and Derivatives 3723 3724 =item S<Mac OS> 3725 3726 =item VMS 3727 3728 =item VOS 3729 3730 =item EBCDIC Platforms 3731 3732 =item Acorn RISC OS 3733 3734 =item Other perls 3735 3736 =back 3737 3738 =item FUNCTION IMPLEMENTATIONS 3739 3740 =over 4 3741 3742 =item Alphabetical Listing of Perl Functions 3743 3744 -I<X>, atan2, binmode, chmod, chown, chroot, crypt, dbmclose, dbmopen, 3745 dump, exec, exit, fcntl, flock, fork, getlogin, getpgrp, getppid, 3746 getpriority, getpwnam, getgrnam, getnetbyname, getpwuid, getgrgid, 3747 getnetbyaddr, getprotobynumber, getservbyport, getpwent, getgrent, 3748 gethostbyname, gethostent, getnetent, getprotoent, getservent, sethostent, 3749 setnetent, setprotoent, setservent, endpwent, endgrent, endhostent, 3750 endnetent, endprotoent, endservent, getsockopt SOCKET,LEVEL,OPTNAME, glob, 3751 gmtime, ioctl FILEHANDLE,FUNCTION,SCALAR, kill, link, localtime, lstat, 3752 msgctl, msgget, msgsnd, msgrcv, open, pipe, readlink, rename, select, 3753 semctl, semget, semop, setgrent, setpgrp, setpriority, setpwent, 3754 setsockopt, shmctl, shmget, shmread, shmwrite, sockatmark, socketpair, 3755 stat, symlink, syscall, sysopen, system, times, truncate, umask, utime, 3756 wait, waitpid 3757 3758 =back 3759 3760 =item Supported Platforms 3761 3762 =item SEE ALSO 3763 3764 =item AUTHORS / CONTRIBUTORS 3765 3766 =back 3767 3768 =head2 perllocale - Perl locale handling (internationalization and 3769 localization) 3770 3771 =over 4 3772 3773 =item DESCRIPTION 3774 3775 =item PREPARING TO USE LOCALES 3776 3777 =item USING LOCALES 3778 3779 =over 4 3780 3781 =item The use locale pragma 3782 3783 =item The setlocale function 3784 3785 =item Finding locales 3786 3787 =item LOCALE PROBLEMS 3788 3789 =item Temporarily fixing locale problems 3790 3791 =item Permanently fixing locale problems 3792 3793 =item Permanently fixing your system's locale configuration 3794 3795 =item Fixing system locale configuration 3796 3797 =item The localeconv function 3798 3799 =item I18N::Langinfo 3800 3801 =back 3802 3803 =item LOCALE CATEGORIES 3804 3805 =over 4 3806 3807 =item Category LC_COLLATE: Collation 3808 3809 =item Category LC_CTYPE: Character Types 3810 3811 =item Category LC_NUMERIC: Numeric Formatting 3812 3813 =item Category LC_MONETARY: Formatting of monetary amounts 3814 3815 =item LC_TIME 3816 3817 =item Other categories 3818 3819 =back 3820 3821 =item SECURITY 3822 3823 =item ENVIRONMENT 3824 3825 PERL_BADLANG, LC_ALL, LANGUAGE, LC_CTYPE, LC_COLLATE, LC_MONETARY, 3826 LC_NUMERIC, LC_TIME, LANG 3827 3828 =over 4 3829 3830 =item Examples 3831 3832 =back 3833 3834 =item NOTES 3835 3836 =over 4 3837 3838 =item Backward compatibility 3839 3840 =item I18N:Collate obsolete 3841 3842 =item Sort speed and memory use impacts 3843 3844 =item write() and LC_NUMERIC 3845 3846 =item Freely available locale definitions 3847 3848 =item I18n and l10n 3849 3850 =item An imperfect standard 3851 3852 =back 3853 3854 =item Unicode and UTF-8 3855 3856 =item BUGS 3857 3858 =over 4 3859 3860 =item Broken systems 3861 3862 =back 3863 3864 =item SEE ALSO 3865 3866 =item HISTORY 3867 3868 =back 3869 3870 =head2 perluniintro - Perl Unicode introduction 3871 3872 =over 4 3873 3874 =item DESCRIPTION 3875 3876 =over 4 3877 3878 =item Unicode 3879 3880 =item Perl's Unicode Support 3881 3882 =item Perl's Unicode Model 3883 3884 =item Unicode and EBCDIC 3885 3886 =item Creating Unicode 3887 3888 =item Handling Unicode 3889 3890 =item Legacy Encodings 3891 3892 =item Unicode I/O 3893 3894 =item Displaying Unicode As Text 3895 3896 =item Special Cases 3897 3898 =item Advanced Topics 3899 3900 =item Miscellaneous 3901 3902 =item Questions With Answers 3903 3904 =item Hexadecimal Notation 3905 3906 =item Further Resources 3907 3908 =back 3909 3910 =item UNICODE IN OLDER PERLS 3911 3912 =item SEE ALSO 3913 3914 =item ACKNOWLEDGMENTS 3915 3916 =item AUTHOR, COPYRIGHT, AND LICENSE 3917 3918 =back 3919 3920 =head2 perlunicode - Unicode support in Perl 3921 3922 =over 4 3923 3924 =item DESCRIPTION 3925 3926 =over 4 3927 3928 =item Important Caveats 3929 3930 Input and Output Layers, Regular Expressions, C<use utf8> still needed to 3931 enable UTF-8/UTF-EBCDIC in scripts, BOM-marked scripts and UTF-16 scripts 3932 autodetected, C<use encoding> needed to upgrade non-Latin-1 byte strings 3933 3934 =item Byte and Character Semantics 3935 3936 =item Effects of Character Semantics 3937 3938 =item Unicode Character Properties 3939 3940 General Category, Bidirectional Character Types, Scripts, Extended property 3941 classes, Use of "Is" Prefix, Blocks 3942 3943 =item User-Defined Character Properties 3944 3945 =item User-Defined Case Mappings 3946 3947 =item Character Encodings for Input and Output 3948 3949 =item Unicode Regular Expression Support Level 3950 3951 =item Unicode Encodings 3952 3953 =item Security Implications of Unicode 3954 3955 =item Unicode in Perl on EBCDIC 3956 3957 =item Locales 3958 3959 =item When Unicode Does Not Happen 3960 3961 =item Forcing Unicode in Perl (Or Unforcing Unicode in Perl) 3962 3963 =item Using Unicode in XS 3964 3965 =back 3966 3967 =item BUGS 3968 3969 =over 4 3970 3971 =item Interaction with Locales 3972 3973 =item Interaction with Extensions 3974 3975 =item Speed 3976 3977 =item Porting code from perl-5.6.X 3978 3979 =back 3980 3981 =item SEE ALSO 3982 3983 =back 3984 3985 =head2 perlunifaq - Perl Unicode FAQ 3986 3987 =over 4 3988 3989 =item Q and A 3990 3991 =over 4 3992 3993 =item perlunitut isn't really a Unicode tutorial, is it? 3994 3995 =item What character encodings does Perl support? 3996 3997 =item Which version of perl should I use? 3998 3999 =item What about binary data, like images? 4000 4001 =item When should I decode or encode? 4002 4003 =item What if I don't decode? 4004 4005 =item What if I don't encode? 4006 4007 =item Is there a way to automatically decode or encode? 4008 4009 =item What if I don't know which encoding was used? 4010 4011 =item Can I use Unicode in my Perl sources? 4012 4013 =item Data::Dumper doesn't restore the UTF8 flag; is it broken? 4014 4015 =item Why do regex character classes sometimes match only in the ASCII 4016 range? 4017 4018 =item Why do some characters not uppercase or lowercase correctly? 4019 4020 =item How can I determine if a string is a text string or a binary string? 4021 4022 =item How do I convert from encoding FOO to encoding BAR? 4023 4024 =item What are C<decode_utf8> and C<encode_utf8>? 4025 4026 =item What is a "wide character"? 4027 4028 =back 4029 4030 =item INTERNALS 4031 4032 =over 4 4033 4034 =item What is "the UTF8 flag"? 4035 4036 =item What about the C<use bytes> pragma? 4037 4038 =item What about the C<use encoding> pragma? 4039 4040 =item What is the difference between C<:encoding> and C<:utf8>? 4041 4042 =item What's the difference between C<UTF-8> and C<utf8>? 4043 4044 =item I lost track; what encoding is the internal format really? 4045 4046 =back 4047 4048 =item AUTHOR 4049 4050 =item SEE ALSO 4051 4052 =back 4053 4054 =head2 perlunitut - Perl Unicode Tutorial 4055 4056 =over 4 4057 4058 =item DESCRIPTION 4059 4060 =over 4 4061 4062 =item Definitions 4063 4064 =item Your new toolkit 4065 4066 =item I/O flow (the actual 5 minute tutorial) 4067 4068 =back 4069 4070 =item SUMMARY 4071 4072 =item Q and A (or FAQ) 4073 4074 =item ACKNOWLEDGEMENTS 4075 4076 =item AUTHOR 4077 4078 =item SEE ALSO 4079 4080 =back 4081 4082 =head2 perlebcdic - Considerations for running Perl on EBCDIC platforms 4083 4084 =over 4 4085 4086 =item DESCRIPTION 4087 4088 =item COMMON CHARACTER CODE SETS 4089 4090 =over 4 4091 4092 =item ASCII 4093 4094 =item ISO 8859 4095 4096 =item Latin 1 (ISO 8859-1) 4097 4098 =item EBCDIC 4099 4100 =item 13 variant characters 4101 4102 =item 0037 4103 4104 =item 1047 4105 4106 =item POSIX-BC 4107 4108 =item Unicode code points versus EBCDIC code points 4109 4110 =item Remaining Perl Unicode problems in EBCDIC 4111 4112 =item Unicode and UTF 4113 4114 =item Using Encode 4115 4116 =back 4117 4118 =item SINGLE OCTET TABLES 4119 4120 recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 4121 4122 =item IDENTIFYING CHARACTER CODE SETS 4123 4124 =item CONVERSIONS 4125 4126 =over 4 4127 4128 =item tr/// 4129 4130 =item iconv 4131 4132 =item C RTL 4133 4134 =back 4135 4136 =item OPERATOR DIFFERENCES 4137 4138 =item FUNCTION DIFFERENCES 4139 4140 chr(), ord(), pack(), print(), printf(), sort(), sprintf(), unpack() 4141 4142 =item REGULAR EXPRESSION DIFFERENCES 4143 4144 =item SOCKETS 4145 4146 =item SORTING 4147 4148 =over 4 4149 4150 =item Ignore ASCII vs. EBCDIC sort differences. 4151 4152 =item MONO CASE then sort data. 4153 4154 =item Convert, sort data, then re convert. 4155 4156 =item Perform sorting on one type of machine only. 4157 4158 =back 4159 4160 =item TRANSFORMATION FORMATS 4161 4162 =over 4 4163 4164 =item URL decoding and encoding 4165 4166 =item uu encoding and decoding 4167 4168 =item Quoted-Printable encoding and decoding 4169 4170 =item Caesarian ciphers 4171 4172 =back 4173 4174 =item Hashing order and checksums 4175 4176 =item I18N AND L10N 4177 4178 =item MULTI OCTET CHARACTER SETS 4179 4180 =item OS ISSUES 4181 4182 =over 4 4183 4184 =item OS/400 4185 4186 PASE, IFS access 4187 4188 =item OS/390, z/OS 4189 4190 chcp, dataset access, OS/390, z/OS iconv, locales 4191 4192 =item VM/ESA? 4193 4194 =item POSIX-BC? 4195 4196 =back 4197 4198 =item BUGS 4199 4200 =item SEE ALSO 4201 4202 =item REFERENCES 4203 4204 =item HISTORY 4205 4206 =item AUTHOR 4207 4208 =back 4209 4210 =head2 perlsec - Perl security 4211 4212 =over 4 4213 4214 =item DESCRIPTION 4215 4216 =over 4 4217 4218 =item Laundering and Detecting Tainted Data 4219 4220 =item Switches On the "#!" Line 4221 4222 =item Taint mode and @INC 4223 4224 =item Cleaning Up Your Path 4225 4226 =item Security Bugs 4227 4228 =item Protecting Your Programs 4229 4230 =item Unicode 4231 4232 =item Algorithmic Complexity Attacks 4233 4234 =back 4235 4236 =item SEE ALSO 4237 4238 =back 4239 4240 =head2 perlmod - Perl modules (packages and symbol tables) 4241 4242 =over 4 4243 4244 =item DESCRIPTION 4245 4246 =over 4 4247 4248 =item Packages 4249 X<package> X<namespace> X<variable, global> X<global variable> X<global> 4250 4251 =item Symbol Tables 4252 X<symbol table> X<stash> X<%::> X<%main::> X<typeglob> X<glob> X<alias> 4253 4254 =item BEGIN, UNITCHECK, CHECK, INIT and END 4255 X<BEGIN> X<UNITCHECK> X<CHECK> X<INIT> X<END> 4256 4257 =item Perl Classes 4258 X<class> X<@ISA> 4259 4260 =item Perl Modules 4261 X<module> 4262 4263 =item Making your module threadsafe 4264 X<threadsafe> X<thread safe> 4265 X<module, threadsafe> X<module, thread safe> 4266 X<CLONE> X<CLONE_SKIP> X<thread> X<threads> X<ithread> 4267 4268 =back 4269 4270 =item SEE ALSO 4271 4272 =back 4273 4274 =head2 perlmodlib - constructing new Perl modules and finding existing ones 4275 4276 =over 4 4277 4278 =item THE PERL MODULE LIBRARY 4279 4280 =over 4 4281 4282 =item Pragmatic Modules 4283 4284 attributes, attrs, autouse, base, bigint, bignum, bigrat, blib, bytes, 4285 charnames, constant, diagnostics, encoding, encoding::warnings, feature, 4286 fields, filetest, if, integer, less, lib, locale, mro, open, ops, overload, 4287 re, sigtrap, sort, strict, subs, threads, threads::shared, utf8, vars, 4288 version, vmsish, warnings, warnings::register 4289 4290 =item Standard Modules 4291 4292 AnyDBM_File, Archive::Extract, Archive::Tar, Archive::Tar::File, 4293 Attribute::Handlers, AutoLoader, AutoSplit, B, B::Concise, B::Debug, 4294 B::Deparse, B::Lint, B::Showlex, B::Terse, B::Xref, Benchmark, CGI, 4295 CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push, 4296 CGI::Switch, CGI::Util, CORE, CPAN, CPAN::API::HOWTO, CPAN::FirstTime, 4297 CPAN::Kwalify, CPAN::Nox, CPAN::Version, CPANPLUS, CPANPLUS::Dist::Base, 4298 CPANPLUS::Dist::Sample, CPANPLUS::Shell::Classic, 4299 CPANPLUS::Shell::Default::Plugins::HOWTO, Carp, Carp::Heavy, Class::ISA, 4300 Class::Struct, Compress::Raw::Zlib, Compress::Zlib, Config, Cwd, DB, 4301 DBM_Filter, DBM_Filter::compress, DBM_Filter::encode, DBM_Filter::int32, 4302 DBM_Filter::null, DBM_Filter::utf8, DB_File, Data::Dumper, Devel::DProf, 4303 Devel::InnerPackage, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5, 4304 Digest::SHA, Digest::base, Digest::file, DirHandle, Dumpvalue, DynaLoader, 4305 Encode, Encode::Alias, Encode::Byte, Encode::CJKConstants, Encode::CN, 4306 Encode::CN::HZ, Encode::Config, Encode::EBCDIC, Encode::Encoder, 4307 Encode::Encoding, Encode::GSM0338, Encode::Guess, Encode::JP, 4308 Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR, 4309 Encode::MIME::Header, Encode::MIME::Name, Encode::PerlIO, 4310 Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode, 4311 Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy, 4312 ExtUtils::CBuilder, ExtUtils::CBuilder::Platform::Windows, 4313 ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, 4314 ExtUtils::Constant::Base, ExtUtils::Constant::Utils, 4315 ExtUtils::Constant::XS, ExtUtils::Embed, ExtUtils::Install, 4316 ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_AIX, 4317 ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS, 4318 ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_QNX, 4319 ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_VOS, 4320 ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, 4321 ExtUtils::MakeMaker::Config, ExtUtils::MakeMaker::FAQ, 4322 ExtUtils::MakeMaker::Tutorial, ExtUtils::MakeMaker::bytes, 4323 ExtUtils::MakeMaker::vmsish, ExtUtils::Manifest, ExtUtils::Mkbootstrap, 4324 ExtUtils::Mksymlists, ExtUtils::Packlist, ExtUtils::ParseXS, 4325 ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::CheckTree, 4326 File::Compare, File::Copy, File::DosGlob, File::Fetch, File::Find, 4327 File::Glob, File::GlobMapper, File::Path, File::Spec, File::Spec::Cygwin, 4328 File::Spec::Epoc, File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, 4329 File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, File::Temp, 4330 File::stat, FileCache, FileHandle, Filter::Simple, Filter::Util::Call, 4331 FindBin, GDBM_File, Getopt::Long, Getopt::Std, Hash::Util, 4332 Hash::Util::FieldHash, I18N::Collate, I18N::LangTags, 4333 I18N::LangTags::Detect, I18N::LangTags::List, I18N::Langinfo, IO, 4334 IO::Compress::Base, IO::Compress::Deflate, IO::Compress::Gzip, 4335 IO::Compress::RawDeflate, IO::Compress::Zip, IO::Dir, IO::File, IO::Handle, 4336 IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, 4337 IO::Socket::UNIX, IO::Uncompress::AnyInflate, 4338 IO::Uncompress::AnyUncompress, IO::Uncompress::Base, 4339 IO::Uncompress::Gunzip, IO::Uncompress::Inflate, 4340 IO::Uncompress::RawInflate, IO::Uncompress::Unzip, IO::Zlib, IPC::Cmd, 4341 IPC::Open2, IPC::Open3, IPC::SysV, IPC::SysV::Msg, IPC::SysV::Semaphore, 4342 List::Util, Locale::Constants, Locale::Country, Locale::Currency, 4343 Locale::Language, Locale::Maketext, Locale::Maketext::Simple, 4344 Locale::Maketext::TPJ13, Locale::Script, Log::Message, 4345 Log::Message::Config, Log::Message::Handlers, Log::Message::Item, 4346 MIME::Base64, MIME::QuotedPrint, Math::BigFloat, Math::BigInt, 4347 Math::BigInt::Calc, Math::BigInt::CalcEmu, Math::BigInt::FastCalc, 4348 Math::BigRat, Math::Complex, Math::Trig, Memoize, Memoize::AnyDBM_File, 4349 Memoize::Expire, Memoize::ExpireFile, Memoize::ExpireTest, 4350 Memoize::NDBM_File, Memoize::SDBM_File, Memoize::Storable, Module::Build, 4351 Module::Build::API, Module::Build::Authoring, Module::Build::Base, 4352 Module::Build::Compat, Module::Build::ConfigData, Module::Build::Cookbook, 4353 Module::Build::ModuleInfo, Module::Build::Notes, Module::Build::PPMMaker, 4354 Module::Build::Platform::Amiga, Module::Build::Platform::Default, 4355 Module::Build::Platform::EBCDIC, Module::Build::Platform::MPEiX, 4356 Module::Build::Platform::MacOS, Module::Build::Platform::RiscOS, 4357 Module::Build::Platform::Unix, Module::Build::Platform::VMS, 4358 Module::Build::Platform::VOS, Module::Build::Platform::Windows, 4359 Module::Build::Platform::aix, Module::Build::Platform::cygwin, 4360 Module::Build::Platform::darwin, Module::Build::Platform::os2, 4361 Module::Build::YAML, Module::CoreList, Module::Load, 4362 Module::Load::Conditional, Module::Loaded, Module::Pluggable, 4363 Module::Pluggable::Object, NDBM_File, NEXT, Net::Cmd, Net::Config, 4364 Net::Domain, Net::FTP, Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, 4365 Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent, 4366 Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, 4367 Package::Constants, Params::Check, PerlIO, PerlIO::encoding, 4368 PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint, Pod::Checker, 4369 Pod::Escapes, Pod::Find, Pod::Functions, Pod::Html, Pod::InputObjects, 4370 Pod::LaTeX, Pod::Man, Pod::ParseLink, Pod::ParseUtils, Pod::Parser, 4371 Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, 4372 Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToText, 4373 Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::PlainText, Pod::Plainer, 4374 Pod::Select, Pod::Simple, Pod::Simple::Checker, Pod::Simple::Debug, 4375 Pod::Simple::DumpAsText, Pod::Simple::DumpAsXML, Pod::Simple::HTML, 4376 Pod::Simple::HTMLBatch, Pod::Simple::LinkSection, Pod::Simple::Methody, 4377 Pod::Simple::PullParser, Pod::Simple::PullParserEndToken, 4378 Pod::Simple::PullParserStartToken, Pod::Simple::PullParserTextToken, 4379 Pod::Simple::PullParserToken, Pod::Simple::RTF, Pod::Simple::Search, 4380 Pod::Simple::SimpleTree, Pod::Simple::Subclassing, Pod::Simple::Text, 4381 Pod::Simple::TextContent, Pod::Simple::XMLOutStream, Pod::Text, 4382 Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, 4383 SDBM_File, Safe, Scalar::Util, Search::Dict, SelectSaver, SelfLoader, 4384 Shell, Socket, Storable, Switch, Symbol, Sys::Hostname, Sys::Syslog, 4385 Sys::Syslog::win32::Win32, Term::ANSIColor, Term::Cap, Term::Complete, 4386 Term::ReadLine, Term::UI, Test, Test::Builder, Test::Builder::Module, 4387 Test::Builder::Tester, Test::Builder::Tester::Color, Test::Harness, 4388 Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Point, 4389 Test::Harness::Results, Test::Harness::Straps, Test::Harness::TAP, 4390 Test::Harness::Util, Test::More, Test::Simple, Test::Tutorial, 4391 Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs, 4392 Text::Wrap, Thread, Thread::Queue, Thread::Semaphore, Tie::Array, 4393 Tie::File, Tie::Handle, Tie::Hash, Tie::Hash::NamedCapture, Tie::Memoize, 4394 Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, 4395 Time::Piece, Time::Piece::Seconds, Time::gmtime, Time::localtime, Time::tm, 4396 UNIVERSAL, Unicode::Collate, Unicode::Normalize, Unicode::UCD, User::grent, 4397 User::pwent, Win32, Win32API::File, Win32CORE, XS::APItest, XS::Typemap, 4398 XSLoader 4399 4400 =item Extension Modules 4401 4402 =back 4403 4404 =item CPAN 4405 4406 =over 4 4407 4408 =item Africa 4409 4410 South Africa 4411 4412 =item Asia 4413 4414 China, Indonesia, Israel, Japan, Malaysia, Russian Federation, Saudi 4415 Arabia, Singapore, South Korea, Taiwan, Thailand 4416 4417 =item Central America 4418 4419 Costa Rica 4420 4421 =item Europe 4422 4423 Austria, Belgium, Bosnia and Herzegovina, Bulgaria, Croatia, Czech 4424 Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, 4425 Iceland, Ireland, Italy, Latvia, Lithuania, Netherlands, Norway, Poland, 4426 Portugal, Romania, Russia, Slovakia, Slovenia, Spain, Sweden, Switzerland, 4427 Turkey, Ukraine, United Kingdom 4428 4429 =item North America 4430 4431 Canada, Alberta, Manitoba, Nova Scotia, Ontario, Mexico, United States, 4432 Alabama, California, Colorado, Delaware, District of Columbia, Florida, 4433 Indiana, Kentucky, Massachusetts, Michigan, Nevada, New Jersey, New York, 4434 North Carolina, Oklahoma, Oregon, Pennsylvania, Tennessee, Texas, Utah, 4435 Virginia, Washington, Wisconsin 4436 4437 =item Oceania 4438 4439 Australia, New Zealand, United States 4440 4441 =item South America 4442 4443 Argentina, Brazil, Chile 4444 4445 =item RSYNC Mirrors 4446 4447 =back 4448 4449 =item Modules: Creation, Use, and Abuse 4450 4451 =over 4 4452 4453 =item Guidelines for Module Creation 4454 4455 =item Guidelines for Converting Perl 4 Library Scripts into Modules 4456 4457 =item Guidelines for Reusing Application Code 4458 4459 =back 4460 4461 =item NOTE 4462 4463 =back 4464 4465 =head2 perlmodstyle - Perl module style guide 4466 4467 =over 4 4468 4469 =item INTRODUCTION 4470 4471 =item QUICK CHECKLIST 4472 4473 =over 4 4474 4475 =item Before you start 4476 4477 =item The API 4478 4479 =item Stability 4480 4481 =item Documentation 4482 4483 =item Release considerations 4484 4485 =back 4486 4487 =item BEFORE YOU START WRITING A MODULE 4488 4489 =over 4 4490 4491 =item Has it been done before? 4492 4493 =item Do one thing and do it well 4494 4495 =item What's in a name? 4496 4497 =back 4498 4499 =item DESIGNING AND WRITING YOUR MODULE 4500 4501 =over 4 4502 4503 =item To OO or not to OO? 4504 4505 =item Designing your API 4506 4507 Write simple routines to do simple things, Separate functionality from 4508 output, Provide sensible shortcuts and defaults, Naming conventions, 4509 Parameter passing 4510 4511 =item Strictness and warnings 4512 4513 =item Backwards compatibility 4514 4515 =item Error handling and messages 4516 4517 =back 4518 4519 =item DOCUMENTING YOUR MODULE 4520 4521 =over 4 4522 4523 =item POD 4524 4525 =item README, INSTALL, release notes, changelogs 4526 4527 perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, 4528 perl Build test, perl Build install 4529 4530 =back 4531 4532 =item RELEASE CONSIDERATIONS 4533 4534 =over 4 4535 4536 =item Version numbering 4537 4538 =item Pre-requisites 4539 4540 =item Testing 4541 4542 =item Packaging 4543 4544 =item Licensing 4545 4546 =back 4547 4548 =item COMMON PITFALLS 4549 4550 =over 4 4551 4552 =item Reinventing the wheel 4553 4554 =item Trying to do too much 4555 4556 =item Inappropriate documentation 4557 4558 =back 4559 4560 =item SEE ALSO 4561 4562 L<perlstyle>, L<perlnewmod>, L<perlpod>, L<podchecker>, Packaging Tools, 4563 Testing tools, http://pause.perl.org/, Any good book on software 4564 engineering 4565 4566 =item AUTHOR 4567 4568 =back 4569 4570 =head2 perlmodinstall - Installing CPAN Modules 4571 4572 =over 4 4573 4574 =item DESCRIPTION 4575 4576 =over 4 4577 4578 =item PREAMBLE 4579 4580 B<DECOMPRESS> the file, B<UNPACK> the file into a directory, B<BUILD> the 4581 module (sometimes unnecessary), B<INSTALL> the module 4582 4583 =back 4584 4585 =item PORTABILITY 4586 4587 =item HEY 4588 4589 =item AUTHOR 4590 4591 =item COPYRIGHT 4592 4593 =back 4594 4595 =head2 perlnewmod - preparing a new module for distribution 4596 4597 =over 4 4598 4599 =item DESCRIPTION 4600 4601 =over 4 4602 4603 =item Warning 4604 4605 =item What should I make into a module? 4606 4607 =item Step-by-step: Preparing the ground 4608 4609 Look around, Check it's new, Discuss the need, Choose a name, Check again 4610 4611 =item Step-by-step: Making the module 4612 4613 Start with F<module-starter> or F<h2xs>, Use L<strict|strict> and 4614 L<warnings|warnings>, Use L<Carp|Carp>, Use L<Exporter|Exporter> - wisely!, 4615 Use L<plain old documentation|perlpod>, Write tests, Write the README 4616 4617 =item Step-by-step: Distributing your module 4618 4619 Get a CPAN user ID, C<perl Makefile.PL; make test; make dist>, Upload the 4620 tarball, Announce to the modules list, Announce to clpa, Fix bugs! 4621 4622 =back 4623 4624 =item AUTHOR 4625 4626 =item SEE ALSO 4627 4628 =back 4629 4630 =head2 perlpragma - how to write a user pragma 4631 4632 =over 4 4633 4634 =item DESCRIPTION 4635 4636 =item A basic example 4637 4638 =item Implementation details 4639 4640 =back 4641 4642 =head2 perlutil - utilities packaged with the Perl distribution 4643 4644 =over 4 4645 4646 =item DESCRIPTION 4647 4648 =item LIST OF UTILITIES 4649 4650 =over 4 4651 4652 =item Documentation 4653 4654 L<perldoc|perldoc>, L<pod2man|pod2man> and L<pod2text|pod2text>, 4655 L<pod2html|pod2html> and L<pod2latex|pod2latex>, L<pod2usage|pod2usage>, 4656 L<podselect|podselect>, L<podchecker|podchecker>, L<splain|splain>, 4657 L<roffitall|roffitall> 4658 4659 =item Convertors 4660 4661 L<a2p|a2p>, L<s2p|s2p> and L<psed>, L<find2perl|find2perl> 4662 4663 =item Administration 4664 4665 L<config_data|config_data>, L<libnetcfg|libnetcfg>, L<perlivp> 4666 4667 =item Development 4668 4669 L<perlbug|perlbug>, L<h2ph|h2ph>, L<c2ph|c2ph> and L<pstruct|pstruct>, 4670 L<h2xs|h2xs>, L<enc2xs>, L<xsubpp>, L<dprofpp|dprofpp>, L<prove>, 4671 L<corelist> 4672 4673 =item General tools 4674 4675 L<piconv>, L<ptar>, L<ptardiff>, L<shasum> 4676 4677 =item Installation 4678 4679 L<cpan>, L<cpanp>, L<cpan2dist>, L<instmodsh> 4680 4681 =back 4682 4683 =item SEE ALSO 4684 4685 =back 4686 4687 =head2 perlcompile - Introduction to the Perl Compiler-Translator 4688 4689 =over 4 4690 4691 =item DESCRIPTION 4692 4693 =over 4 4694 4695 =item Layout 4696 4697 B::Lint, B::Deparse, B::Xref 4698 4699 =back 4700 4701 =item Using The Back Ends 4702 4703 =over 4 4704 4705 =item The Cross Referencing Back End 4706 4707 i, &, s, r 4708 4709 =item The Decompiling Back End 4710 4711 =item The Lint Back End 4712 4713 =back 4714 4715 =item Module List for the Compiler Suite 4716 4717 B, O, B::Concise, B::Debug, B::Deparse, B::Lint, B::Showlex, B::Terse, 4718 B::Xref 4719 4720 =item KNOWN PROBLEMS 4721 4722 =item AUTHOR 4723 4724 =back 4725 4726 =head2 perlfilter - Source Filters 4727 4728 =over 4 4729 4730 =item DESCRIPTION 4731 4732 =item CONCEPTS 4733 4734 =item USING FILTERS 4735 4736 =item WRITING A SOURCE FILTER 4737 4738 =item WRITING A SOURCE FILTER IN C 4739 4740 B<Decryption Filters> 4741 4742 =item CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE 4743 4744 =item WRITING A SOURCE FILTER IN PERL 4745 4746 =item USING CONTEXT: THE DEBUG FILTER 4747 4748 =item CONCLUSION 4749 4750 =item THINGS TO LOOK OUT FOR 4751 4752 Some Filters Clobber the C<DATA> Handle 4753 4754 =item REQUIREMENTS 4755 4756 =item AUTHOR 4757 4758 =item Copyrights 4759 4760 =back 4761 4762 =head2 perlglossary - Perl Glossary 4763 4764 =over 4 4765 4766 =item DESCRIPTION 4767 4768 =over 4 4769 4770 =item A 4771 4772 accessor methods, actual arguments, address operator, algorithm, alias, 4773 alternatives, anonymous, architecture, argument, ARGV, arithmetical 4774 operator, array, array context, ASCII, assertion, assignment, assignment 4775 operator, associative array, associativity, asynchronous, atom, atomic 4776 operation, attribute, autogeneration, autoincrement, autoload, autosplit, 4777 autovivification, AV, awk 4778 4779 =item B 4780 4781 backreference, backtracking, backward compatibility, bareword, base class, 4782 big-endian, binary, binary operator, bind, bit, bit shift, bit string, 4783 bless, block, BLOCK, block buffering, Boolean, Boolean context, breakpoint, 4784 broadcast, BSD, bucket, buffer, built-in, bundle, byte, bytecode 4785 4786 =item C 4787 4788 C, C preprocessor, call by reference, call by value, callback, canonical, 4789 capturing, character, character class, character property, circumfix 4790 operator, class, class method, client, cloister, closure, cluster, CODE, 4791 code generator, code subpattern, collating sequence, command, command 4792 buffering, command name, command-line arguments, comment, compilation unit, 4793 compile phase, compile time, compiler, composer, concatenation, 4794 conditional, connection, construct, constructor, context, continuation, 4795 core dump, CPAN, cracker, current package, current working directory, 4796 currently selected output channel, CV 4797 4798 =item D 4799 4800 dangling statement, data structure, data type, datagram, DBM, declaration, 4801 decrement, default, defined, delimiter, deprecated modules and features, 4802 dereference, derived class, descriptor, destroy, destructor, device, 4803 directive, directory, directory handle, dispatch, distribution, (to be) 4804 dropped modules, dweomer, dwimmer, dynamic scoping 4805 4806 =item E 4807 4808 eclectic, element, embedding, empty subclass test, en passant, 4809 encapsulation, endian, environment, environment variable, EOF, errno, 4810 error, escape sequence, exception, exception handling, exec, executable 4811 file, execute, execute bit, exit status, export, expression, extension 4812 4813 =item F 4814 4815 false, FAQ, fatal error, field, FIFO, file, file descriptor, file test 4816 operator, fileglob, filehandle, filename, filesystem, filter, flag, 4817 floating point, flush, FMTEYEWTK, fork, formal arguments, format, freely 4818 available, freely redistributable, freeware, function, funny character, 4819 garbage collection 4820 4821 =item G 4822 4823 GID, glob, global, global destruction, glue language, granularity, greedy, 4824 grep, group, GV 4825 4826 =item H 4827 4828 hacker, handler, hard reference, hash, hash table, header file, here 4829 document, hexadecimal, home directory, host, hubris, HV 4830 4831 =item I 4832 4833 identifier, impatience, implementation, import, increment, indexing, 4834 indirect filehandle, indirect object, indirect object slot, indirection, 4835 infix, inheritance, instance, instance variable, integer, interface, 4836 interpolation, interpreter, invocant, invocation, I/O, IO, IP, IPC, is-a, 4837 iteration, iterator, IV 4838 4839 =item J 4840 4841 JAPH 4842 4843 =item K 4844 4845 key, keyword 4846 4847 =item L 4848 4849 label, laziness, left shift, leftmost longest, lexeme, lexer, lexical 4850 analysis, lexical scoping, lexical variable, library, LIFO, line, line 4851 buffering, line number, link, LIST, list, list context, list operator, list 4852 value, literal, little-endian, local, logical operator, lookahead, 4853 lookbehind, loop, loop control statement, loop label, lvaluable, lvalue, 4854 lvalue modifier 4855 4856 =item M 4857 4858 magic, magical increment, magical variables, Makefile, man, manpage, 4859 matching, member data, memory, metacharacter, metasymbol, method, 4860 minimalism, mode, modifier, module, modulus, monger, mortal, 4861 multidimensional array, multiple inheritance 4862 4863 =item N 4864 4865 named pipe, namespace, network address, newline, NFS, null character, null 4866 list, null string, numeric context, NV, nybble 4867 4868 =item O 4869 4870 object, octal, offset, one-liner, open source software, operand, operating 4871 system, operator, operator overloading, options, overloading, overriding, 4872 owner 4873 4874 =item P 4875 4876 package, pad, parameter, parent class, parse tree, parsing, patch, PATH, 4877 pathname, pattern, pattern matching, permission bits, Pern, pipe, pipeline, 4878 platform, pod, pointer, polymorphism, port, portable, porter, POSIX, 4879 postfix, pp, pragma, precedence, prefix, preprocessing, procedure, process, 4880 program generator, progressive matching, property, protocol, prototype, 4881 pseudofunction, pseudohash, pseudoliteral, public domain, pumpkin, 4882 pumpking, PV 4883 4884 =item Q 4885 4886 qualified, quantifier 4887 4888 =item R 4889 4890 readable, reaping, record, recursion, reference, referent, regex, regular 4891 expression, regular expression modifier, regular file, relational operator, 4892 reserved words, return value, RFC, right shift, root, RTFM, run phase, run 4893 time, run-time pattern, RV, rvalue 4894 4895 =item S 4896 4897 scalar, scalar context, scalar literal, scalar value, scalar variable, 4898 scope, scratchpad, script, script kiddie, sed, semaphore, separator, 4899 serialization, server, service, setgid, setuid, shared memory, shebang, 4900 shell, side effects, signal, signal handler, single inheritance, slice, 4901 slurp, socket, soft reference, source filter, stack, standard, standard 4902 error, standard I/O, standard input, standard output, stat structure, 4903 statement, statement modifier, static, static method, static scoping, 4904 static variable, status, STDERR, STDIN, STDIO, STDOUT, stream, string, 4905 string context, stringification, struct, structure, subclass, subpattern, 4906 subroutine, subscript, substitution, substring, superclass, superuser, SV, 4907 switch, switch cluster, switch statement, symbol, symbol table, symbolic 4908 debugger, symbolic link, symbolic reference, synchronous, syntactic sugar, 4909 syntax, syntax tree, syscall 4910 4911 =item T 4912 4913 tainted, TCP, term, terminator, ternary, text, thread, tie, TMTOWTDI, 4914 token, tokener, tokenizing, toolbox approach, transliterate, trigger, 4915 trinary, troff, true, truncating, type, type casting, typed lexical, 4916 typedef, typeglob, typemap 4917 4918 =item U 4919 4920 UDP, UID, umask, unary operator, Unicode, Unix 4921 4922 =item V 4923 4924 value, variable, variable interpolation, variadic, vector, virtual, void 4925 context, v-string 4926 4927 =item W 4928 4929 warning, watch expression, whitespace, word, working directory, wrapper, 4930 WYSIWYG 4931 4932 =item X 4933 4934 XS, XSUB 4935 4936 =item Y 4937 4938 yacc 4939 4940 =item Z 4941 4942 zero width, zombie 4943 4944 =back 4945 4946 =item AUTHOR AND COPYRIGHT 4947 4948 =back 4949 4950 =head2 perlembed - how to embed perl in your C program 4951 4952 =over 4 4953 4954 =item DESCRIPTION 4955 4956 =over 4 4957 4958 =item PREAMBLE 4959 4960 B<Use C from Perl?>, B<Use a Unix program from Perl?>, B<Use Perl from 4961 Perl?>, B<Use C from C?>, B<Use Perl from C?> 4962 4963 =item ROADMAP 4964 4965 =item Compiling your C program 4966 4967 =item Adding a Perl interpreter to your C program 4968 4969 =item Calling a Perl subroutine from your C program 4970 4971 =item Evaluating a Perl statement from your C program 4972 4973 =item Performing Perl pattern matches and substitutions from your C program 4974 4975 =item Fiddling with the Perl stack from your C program 4976 4977 =item Maintaining a persistent interpreter 4978 4979 =item Execution of END blocks 4980 4981 =item $0 assignments 4982 4983 =item Maintaining multiple interpreter instances 4984 4985 =item Using Perl modules, which themselves use C libraries, from your C 4986 program 4987 4988 =back 4989 4990 =item Embedding Perl under Win32 4991 4992 =item Hiding Perl_ 4993 4994 =item MORAL 4995 4996 =item AUTHOR 4997 4998 =item COPYRIGHT 4999 5000 =back 5001 5002 =head2 perldebguts - Guts of Perl debugging 5003 5004 =over 4 5005 5006 =item DESCRIPTION 5007 5008 =item Debugger Internals 5009 5010 =over 4 5011 5012 =item Writing Your Own Debugger 5013 5014 =back 5015 5016 =item Frame Listing Output Examples 5017 5018 =item Debugging regular expressions 5019 5020 =over 4 5021 5022 =item Compile-time output 5023 5024 C<anchored> I<STRING> C<at> I<POS>, C<floating> I<STRING> C<at> 5025 I<POS1..POS2>, C<matching floating/anchored>, C<minlen>, C<stclass> 5026 I<TYPE>, C<noscan>, C<isall>, C<GPOS>, C<plus>, C<implicit>, C<with eval>, 5027 C<anchored(TYPE)> 5028 5029 =item Types of nodes 5030 5031 =item Run-time output 5032 5033 =back 5034 5035 =item Debugging Perl memory usage 5036 5037 =over 4 5038 5039 =item Using C<$ENV{PERL_DEBUG_MSTATS}> 5040 5041 C<buckets SMALLEST(APPROX)..GREATEST(APPROX)>, Free/Used, C<Total sbrk(): 5042 SBRKed/SBRKs:CONTINUOUS>, C<pad: 0>, C<heads: 2192>, C<chain: 0>, C<tail: 5043 6144> 5044 5045 =back 5046 5047 =item SEE ALSO 5048 5049 =back 5050 5051 =head2 perlxstut, perlXStut - Tutorial for writing XSUBs 5052 5053 =over 4 5054 5055 =item DESCRIPTION 5056 5057 =item SPECIAL NOTES 5058 5059 =over 4 5060 5061 =item make 5062 5063 =item Version caveat 5064 5065 =item Dynamic Loading versus Static Loading 5066 5067 =back 5068 5069 =item TUTORIAL 5070 5071 =over 4 5072 5073 =item EXAMPLE 1 5074 5075 =item EXAMPLE 2 5076 5077 =item What has gone on? 5078 5079 =item Writing good test scripts 5080 5081 =item EXAMPLE 3 5082 5083 =item What's new here? 5084 5085 =item Input and Output Parameters 5086 5087 =item The XSUBPP Program 5088 5089 =item The TYPEMAP file 5090 5091 =item Warning about Output Arguments 5092 5093 =item EXAMPLE 4 5094 5095 =item What has happened here? 5096 5097 =item Anatomy of .xs file 5098 5099 =item Getting the fat out of XSUBs 5100 5101 =item More about XSUB arguments 5102 5103 =item The Argument Stack 5104 5105 =item Extending your Extension 5106 5107 =item Documenting your Extension 5108 5109 =item Installing your Extension 5110 5111 =item EXAMPLE 5 5112 5113 =item New Things in this Example 5114 5115 =item EXAMPLE 6 5116 5117 =item New Things in this Example 5118 5119 =item EXAMPLE 7 (Coming Soon) 5120 5121 =item EXAMPLE 8 (Coming Soon) 5122 5123 =item EXAMPLE 9 Passing open files to XSes 5124 5125 =item Troubleshooting these Examples 5126 5127 =back 5128 5129 =item See also 5130 5131 =item Author 5132 5133 =over 4 5134 5135 =item Last Changed 5136 5137 =back 5138 5139 =back 5140 5141 =head2 perlxs - XS language reference manual 5142 5143 =over 4 5144 5145 =item DESCRIPTION 5146 5147 =over 4 5148 5149 =item Introduction 5150 5151 =item On The Road 5152 5153 =item The Anatomy of an XSUB 5154 5155 =item The Argument Stack 5156 5157 =item The RETVAL Variable 5158 5159 =item Returning SVs, AVs and HVs through RETVAL 5160 5161 =item The MODULE Keyword 5162 5163 =item The PACKAGE Keyword 5164 5165 =item The PREFIX Keyword 5166 5167 =item The OUTPUT: Keyword 5168 5169 =item The NO_OUTPUT Keyword 5170 5171 =item The CODE: Keyword 5172 5173 =item The INIT: Keyword 5174 5175 =item The NO_INIT Keyword 5176 5177 =item Initializing Function Parameters 5178 5179 =item Default Parameter Values 5180 5181 =item The PREINIT: Keyword 5182 5183 =item The SCOPE: Keyword 5184 5185 =item The INPUT: Keyword 5186 5187 =item The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords 5188 5189 =item The C<length(NAME)> Keyword 5190 5191 =item Variable-length Parameter Lists 5192 5193 =item The C_ARGS: Keyword 5194 5195 =item The PPCODE: Keyword 5196 5197 =item Returning Undef And Empty Lists 5198 5199 =item The REQUIRE: Keyword 5200 5201 =item The CLEANUP: Keyword 5202 5203 =item The POSTCALL: Keyword 5204 5205 =item The BOOT: Keyword 5206 5207 =item The VERSIONCHECK: Keyword 5208 5209 =item The PROTOTYPES: Keyword 5210 5211 =item The PROTOTYPE: Keyword 5212 5213 =item The ALIAS: Keyword 5214 5215 =item The OVERLOAD: Keyword 5216 5217 =item The FALLBACK: Keyword 5218 5219 =item The INTERFACE: Keyword 5220 5221 =item The INTERFACE_MACRO: Keyword 5222 5223 =item The INCLUDE: Keyword 5224 5225 =item The CASE: Keyword 5226 5227 =item The & Unary Operator 5228 5229 =item Inserting POD, Comments and C Preprocessor Directives 5230 5231 =item Using XS With C++ 5232 5233 =item Interface Strategy 5234 5235 =item Perl Objects And C Structures 5236 5237 =item The Typemap 5238 5239 =item Safely Storing Static Data in XS 5240 5241 MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT, 5242 aMY_CXT/pMY_CXT, MY_CXT_CLONE, MY_CXT_INIT_INTERP(my_perl), 5243 dMY_CXT_INTERP(my_perl) 5244 5245 =item Thread-aware system interfaces 5246 5247 =back 5248 5249 =item EXAMPLES 5250 5251 =item XS VERSION 5252 5253 =item AUTHOR 5254 5255 =back 5256 5257 =head2 perlclib - Internal replacements for standard C library functions 5258 5259 =over 4 5260 5261 =item DESCRIPTION 5262 5263 =over 4 5264 5265 =item Conventions 5266 5267 C<t>, C<p>, C<n>, C<s> 5268 5269 =item File Operations 5270 5271 =item File Input and Output 5272 5273 =item File Positioning 5274 5275 =item Memory Management and String Handling 5276 5277 =item Character Class Tests 5278 5279 =item F<stdlib.h> functions 5280 5281 =item Miscellaneous functions 5282 5283 =back 5284 5285 =item SEE ALSO 5286 5287 =back 5288 5289 =head2 perlguts - Introduction to the Perl API 5290 5291 =over 4 5292 5293 =item DESCRIPTION 5294 5295 =item Variables 5296 5297 =over 4 5298 5299 =item Datatypes 5300 5301 =item What is an "IV"? 5302 5303 =item Working with SVs 5304 5305 =item Offsets 5306 5307 =item What's Really Stored in an SV? 5308 5309 =item Working with AVs 5310 5311 =item Working with HVs 5312 5313 =item Hash API Extensions 5314 5315 =item AVs, HVs and undefined values 5316 5317 =item References 5318 5319 =item Blessed References and Class Objects 5320 5321 =item Creating New Variables 5322 5323 GV_ADDMULTI, GV_ADDWARN 5324 5325 =item Reference Counts and Mortality 5326 5327 =item Stashes and Globs 5328 5329 =item Double-Typed SVs 5330 5331 =item Magic Variables 5332 5333 =item Assigning Magic 5334 5335 =item Magic Virtual Tables 5336 5337 =item Finding Magic 5338 5339 =item Understanding the Magic of Tied Hashes and Arrays 5340 5341 =item Localizing changes 5342 5343 C<SAVEINT(int i)>, C<SAVEIV(IV i)>, C<SAVEI32(I32 i)>, C<SAVELONG(long i)>, 5344 C<SAVESPTR(s)>, C<SAVEPPTR(p)>, C<SAVEFREESV(SV *sv)>, C<SAVEMORTALIZESV(SV 5345 *sv)>, C<SAVEFREEOP(OP *op)>, C<SAVEFREEPV(p)>, C<SAVECLEARSV(SV *sv)>, 5346 C<SAVEDELETE(HV *hv, char *key, I32 length)>, 5347 C<SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)>, 5348 C<SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)>, C<SAVESTACK_POS()>, C<SV* 5349 save_scalar(GV *gv)>, C<AV* save_ary(GV *gv)>, C<HV* save_hash(GV *gv)>, 5350 C<void save_item(SV *item)>, C<void save_list(SV **sarg, I32 maxsarg)>, 5351 C<SV* save_svref(SV **sptr)>, C<void save_aptr(AV **aptr)>, C<void 5352 save_hptr(HV **hptr)> 5353 5354 =back 5355 5356 =item Subroutines 5357 5358 =over 4 5359 5360 =item XSUBs and the Argument Stack 5361 5362 =item Calling Perl Routines from within C Programs 5363 5364 =item Memory Allocation 5365 5366 =item PerlIO 5367 5368 =item Putting a C value on Perl stack 5369 5370 =item Scratchpads 5371 5372 =item Scratchpads and recursion 5373 5374 =back 5375 5376 =item Compiled code 5377 5378 =over 4 5379 5380 =item Code tree 5381 5382 =item Examining the tree 5383 5384 =item Compile pass 1: check routines 5385 5386 =item Compile pass 1a: constant folding 5387 5388 =item Compile pass 2: context propagation 5389 5390 =item Compile pass 3: peephole optimization 5391 5392 =item Pluggable runops 5393 5394 =back 5395 5396 =item Examining internal data structures with the C<dump> functions 5397 5398 =item How multiple interpreters and concurrency are supported 5399 5400 =over 4 5401 5402 =item Background and PERL_IMPLICIT_CONTEXT 5403 5404 =item So what happened to dTHR? 5405 5406 =item How do I use all this in extensions? 5407 5408 =item Should I do anything special if I call perl from multiple threads? 5409 5410 =item Future Plans and PERL_IMPLICIT_SYS 5411 5412 =back 5413 5414 =item Internal Functions 5415 5416 A, p, d, s, n, r, f, M, o, x, m, X, E, b, others 5417 5418 =over 4 5419 5420 =item Formatted Printing of IVs, UVs, and NVs 5421 5422 =item Pointer-To-Integer and Integer-To-Pointer 5423 5424 =item Exception Handling 5425 5426 =item Source Documentation 5427 5428 =item Backwards compatibility 5429 5430 =back 5431 5432 =item Unicode Support 5433 5434 =over 4 5435 5436 =item What B<is> Unicode, anyway? 5437 5438 =item How can I recognise a UTF-8 string? 5439 5440 =item How does UTF-8 represent Unicode characters? 5441 5442 =item How does Perl store UTF-8 strings? 5443 5444 =item How do I convert a string to UTF-8? 5445 5446 =item Is there anything else I need to know? 5447 5448 =back 5449 5450 =item Custom Operators 5451 5452 =item AUTHORS 5453 5454 =item SEE ALSO 5455 5456 =back 5457 5458 =head2 perlcall - Perl calling conventions from C 5459 5460 =over 4 5461 5462 =item DESCRIPTION 5463 5464 An Error Handler, An Event Driven Program 5465 5466 =item THE CALL_ FUNCTIONS 5467 5468 call_sv, call_pv, call_method, call_argv 5469 5470 =item FLAG VALUES 5471 5472 =over 4 5473 5474 =item G_VOID 5475 5476 =item G_SCALAR 5477 5478 =item G_ARRAY 5479 5480 =item G_DISCARD 5481 5482 =item G_NOARGS 5483 5484 =item G_EVAL 5485 5486 =item G_KEEPERR 5487 5488 =item Determining the Context 5489 5490 =back 5491 5492 =item EXAMPLES 5493 5494 =over 4 5495 5496 =item No Parameters, Nothing returned 5497 5498 =item Passing Parameters 5499 5500 =item Returning a Scalar 5501 5502 =item Returning a list of values 5503 5504 =item Returning a list in a scalar context 5505 5506 =item Returning Data from Perl via the parameter list 5507 5508 =item Using G_EVAL 5509 5510 =item Using G_KEEPERR 5511 5512 =item Using call_sv 5513 5514 =item Using call_argv 5515 5516 =item Using call_method 5517 5518 =item Using GIMME_V 5519 5520 =item Using Perl to dispose of temporaries 5521 5522 =item Strategies for storing Callback Context Information 5523 5524 1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of 5525 callbacks - hard wired limit, 3. Use a parameter to map to the Perl 5526 callback 5527 5528 =item Alternate Stack Manipulation 5529 5530 =item Creating and calling an anonymous subroutine in C 5531 5532 =back 5533 5534 =item LIGHTWEIGHT CALLBACKS 5535 5536 =item SEE ALSO 5537 5538 =item AUTHOR 5539 5540 =item DATE 5541 5542 =back 5543 5544 =head2 perlreapi - perl regular expression plugin interface 5545 5546 =over 4 5547 5548 =item DESCRIPTION 5549 5550 =item Callbacks 5551 5552 =over 4 5553 5554 =item comp 5555 5556 C</m> - RXf_PMf_MULTILINE, C</s> - RXf_PMf_SINGLELINE, C</i> - 5557 RXf_PMf_FOLD, C</x> - RXf_PMf_EXTENDED, C</p> - RXf_PMf_KEEPCOPY, 5558 RXf_PMf_LOCALE, RXf_UTF8, RXf_SPLIT, RXf_SKIPWHITE, RXf_START_ONLY, 5559 RXf_WHITE, RXf_NULL 5560 5561 =item exec 5562 5563 =item intuit 5564 5565 =item checkstr 5566 5567 =item free 5568 5569 =item Numbered capture callbacks 5570 5571 =item Named capture callbacks 5572 5573 =item qr_package 5574 5575 =item dupe 5576 5577 =back 5578 5579 =item The REGEXP structure 5580 5581 =over 4 5582 5583 =item C<engine> 5584 5585 =item C<mother_re> 5586 5587 =item C<extflags> 5588 5589 =item C<minlen> C<minlenret> 5590 5591 =item C<gofs> 5592 5593 =item C<substrs> 5594 5595 =item C<nparens>, C<lasparen>, and C<lastcloseparen> 5596 5597 =item C<intflags> 5598 5599 =item C<pprivate> 5600 5601 =item C<swap> 5602 5603 =item C<offs> 5604 5605 =item C<precomp> C<prelen> 5606 5607 =item C<paren_names> 5608 5609 =item C<substrs> 5610 5611 =item C<subbeg> C<sublen> C<saved_copy> 5612 5613 =item C<wrapped> C<wraplen> 5614 5615 =item C<seen_evals> 5616 5617 =item C<refcnt> 5618 5619 =back 5620 5621 =item HISTORY 5622 5623 =item AUTHORS 5624 5625 =item LICENSE 5626 5627 =back 5628 5629 =head2 perlreguts - Description of the Perl regular expression engine. 5630 5631 =over 4 5632 5633 =item DESCRIPTION 5634 5635 =item OVERVIEW 5636 5637 =over 4 5638 5639 =item A quick note on terms 5640 5641 =item What is a regular expression engine? 5642 5643 =item Structure of a Regexp Program 5644 5645 C<regnode_1>, C<regnode_2>, C<regnode_string>, C<regnode_charclass>, 5646 C<regnode_charclass_class> 5647 5648 =back 5649 5650 =item Process Overview 5651 5652 A. Compilation, 1. Parsing for size, 2. Parsing for construction, 3. 5653 Peep-hole optimisation and analysis, B. Execution, 4. Start position and 5654 no-match optimisations, 5. Program execution 5655 5656 =over 4 5657 5658 =item Compilation 5659 5660 anchored fixed strings, floating fixed strings, minimum and maximum length 5661 requirements, start class, Beginning/End of line positions 5662 5663 =item Execution 5664 5665 =back 5666 5667 =item MISCELLANEOUS 5668 5669 =over 4 5670 5671 =item Unicode and Localisation Support 5672 5673 =item Base Structures 5674 5675 C<swap>, C<offsets>, C<regstclass>, C<data>, C<program> 5676 5677 =back 5678 5679 =item SEE ALSO 5680 5681 =item AUTHOR 5682 5683 =item LICENCE 5684 5685 =item REFERENCES 5686 5687 =back 5688 5689 =head2 perlapi - autogenerated documentation for the perl public API 5690 5691 =over 4 5692 5693 =item DESCRIPTION 5694 X<Perl API> X<API> X<api> 5695 5696 =item "Gimme" Values 5697 5698 GIMME X<GIMME>, GIMME_V X<GIMME_V>, G_ARRAY X<G_ARRAY>, G_DISCARD 5699 X<G_DISCARD>, G_EVAL X<G_EVAL>, G_NOARGS X<G_NOARGS>, G_SCALAR X<G_SCALAR>, 5700 G_VOID X<G_VOID> 5701 5702 =item Array Manipulation Functions 5703 5704 AvFILL X<AvFILL>, av_clear X<av_clear>, av_create_and_push 5705 X<av_create_and_push>, av_create_and_unshift_one 5706 X<av_create_and_unshift_one>, av_delete X<av_delete>, av_exists 5707 X<av_exists>, av_extend X<av_extend>, av_fetch X<av_fetch>, av_fill 5708 X<av_fill>, av_len X<av_len>, av_make X<av_make>, av_pop X<av_pop>, av_push 5709 X<av_push>, av_shift X<av_shift>, av_store X<av_store>, av_undef 5710 X<av_undef>, av_unshift X<av_unshift>, get_av X<get_av>, newAV X<newAV>, 5711 sortsv X<sortsv>, sortsv_flags X<sortsv_flags> 5712 5713 =item Callback Functions 5714 5715 call_argv X<call_argv>, call_method X<call_method>, call_pv X<call_pv>, 5716 call_sv X<call_sv>, ENTER X<ENTER>, eval_pv X<eval_pv>, eval_sv X<eval_sv>, 5717 FREETMPS X<FREETMPS>, LEAVE X<LEAVE>, SAVETMPS X<SAVETMPS> 5718 5719 =item Character classes 5720 5721 isALNUM X<isALNUM>, isALPHA X<isALPHA>, isDIGIT X<isDIGIT>, isLOWER 5722 X<isLOWER>, isSPACE X<isSPACE>, isUPPER X<isUPPER>, toLOWER X<toLOWER>, 5723 toUPPER X<toUPPER> 5724 5725 =item Cloning an interpreter 5726 5727 perl_clone X<perl_clone> 5728 5729 =item CV Manipulation Functions 5730 5731 CvSTASH X<CvSTASH>, get_cv X<get_cv>, get_cvn_flags X<get_cvn_flags> 5732 5733 =item Embedding Functions 5734 5735 cv_undef X<cv_undef>, load_module X<load_module>, nothreadhook 5736 X<nothreadhook>, perl_alloc X<perl_alloc>, perl_construct 5737 X<perl_construct>, perl_destruct X<perl_destruct>, perl_free X<perl_free>, 5738 perl_parse X<perl_parse>, perl_run X<perl_run>, require_pv X<require_pv> 5739 5740 =item Functions in file dump.c 5741 5742 pv_display X<pv_display>, pv_escape X<pv_escape>, pv_pretty X<pv_pretty> 5743 5744 =item Functions in file mathoms.c 5745 5746 gv_fetchmethod X<gv_fetchmethod>, pack_cat X<pack_cat>, sv_2pvbyte_nolen 5747 X<sv_2pvbyte_nolen>, sv_2pvutf8_nolen X<sv_2pvutf8_nolen>, sv_2pv_nolen 5748 X<sv_2pv_nolen>, sv_catpvn_mg X<sv_catpvn_mg>, sv_catsv_mg X<sv_catsv_mg>, 5749 sv_force_normal X<sv_force_normal>, sv_iv X<sv_iv>, sv_nolocking 5750 X<sv_nolocking>, sv_nounlocking X<sv_nounlocking>, sv_nv X<sv_nv>, sv_pv 5751 X<sv_pv>, sv_pvbyte X<sv_pvbyte>, sv_pvbyten X<sv_pvbyten>, sv_pvn 5752 X<sv_pvn>, sv_pvutf8 X<sv_pvutf8>, sv_pvutf8n X<sv_pvutf8n>, sv_taint 5753 X<sv_taint>, sv_unref X<sv_unref>, sv_usepvn X<sv_usepvn>, sv_usepvn_mg 5754 X<sv_usepvn_mg>, sv_uv X<sv_uv>, unpack_str X<unpack_str> 5755 5756 =item Functions in file pp_ctl.c 5757 5758 find_runcv X<find_runcv> 5759 5760 =item Functions in file pp_pack.c 5761 5762 packlist X<packlist>, unpackstring X<unpackstring> 5763 5764 =item GV Functions 5765 5766 GvSV X<GvSV>, gv_const_sv X<gv_const_sv>, gv_fetchmeth X<gv_fetchmeth>, 5767 gv_fetchmethod_autoload X<gv_fetchmethod_autoload>, gv_fetchmeth_autoload 5768 X<gv_fetchmeth_autoload>, gv_stashpv X<gv_stashpv>, gv_stashpvn 5769 X<gv_stashpvn>, gv_stashpvs X<gv_stashpvs>, gv_stashsv X<gv_stashsv> 5770 5771 =item Handy Values 5772 5773 Nullav X<Nullav>, Nullch X<Nullch>, Nullcv X<Nullcv>, Nullhv X<Nullhv>, 5774 Nullsv X<Nullsv> 5775 5776 =item Hash Manipulation Functions 5777 5778 get_hv X<get_hv>, HEf_SVKEY X<HEf_SVKEY>, HeHASH X<HeHASH>, HeKEY X<HeKEY>, 5779 HeKLEN X<HeKLEN>, HePV X<HePV>, HeSVKEY X<HeSVKEY>, HeSVKEY_force 5780 X<HeSVKEY_force>, HeSVKEY_set X<HeSVKEY_set>, HeVAL X<HeVAL>, HvNAME 5781 X<HvNAME>, hv_assert X<hv_assert>, hv_clear X<hv_clear>, 5782 hv_clear_placeholders X<hv_clear_placeholders>, hv_delete X<hv_delete>, 5783 hv_delete_ent X<hv_delete_ent>, hv_exists X<hv_exists>, hv_exists_ent 5784 X<hv_exists_ent>, hv_fetch X<hv_fetch>, hv_fetchs X<hv_fetchs>, 5785 hv_fetch_ent X<hv_fetch_ent>, hv_iterinit X<hv_iterinit>, hv_iterkey 5786 X<hv_iterkey>, hv_iterkeysv X<hv_iterkeysv>, hv_iternext X<hv_iternext>, 5787 hv_iternextsv X<hv_iternextsv>, hv_iternext_flags X<hv_iternext_flags>, 5788 hv_iterval X<hv_iterval>, hv_magic X<hv_magic>, hv_scalar X<hv_scalar>, 5789 hv_store X<hv_store>, hv_stores X<hv_stores>, hv_store_ent X<hv_store_ent>, 5790 hv_undef X<hv_undef>, newHV X<newHV> 5791 5792 =item Magical Functions 5793 5794 mg_clear X<mg_clear>, mg_copy X<mg_copy>, mg_find X<mg_find>, mg_free 5795 X<mg_free>, mg_get X<mg_get>, mg_length X<mg_length>, mg_magical 5796 X<mg_magical>, mg_set X<mg_set>, SvGETMAGIC X<SvGETMAGIC>, SvLOCK 5797 X<SvLOCK>, SvSETMAGIC X<SvSETMAGIC>, SvSetMagicSV X<SvSetMagicSV>, 5798 SvSetMagicSV_nosteal X<SvSetMagicSV_nosteal>, SvSetSV X<SvSetSV>, 5799 SvSetSV_nosteal X<SvSetSV_nosteal>, SvSHARE X<SvSHARE>, SvUNLOCK 5800 X<SvUNLOCK> 5801 5802 =item Memory Management 5803 5804 Copy X<Copy>, CopyD X<CopyD>, Move X<Move>, MoveD X<MoveD>, Newx X<Newx>, 5805 Newxc X<Newxc>, Newxz X<Newxz>, Poison X<Poison>, PoisonFree X<PoisonFree>, 5806 PoisonNew X<PoisonNew>, PoisonWith X<PoisonWith>, Renew X<Renew>, Renewc 5807 X<Renewc>, Safefree X<Safefree>, savepv X<savepv>, savepvn X<savepvn>, 5808 savepvs X<savepvs>, savesharedpv X<savesharedpv>, savesharedpvn 5809 X<savesharedpvn>, savesvpv X<savesvpv>, StructCopy X<StructCopy>, Zero 5810 X<Zero>, ZeroD X<ZeroD> 5811 5812 =item Miscellaneous Functions 5813 5814 fbm_compile X<fbm_compile>, fbm_instr X<fbm_instr>, form X<form>, getcwd_sv 5815 X<getcwd_sv>, my_snprintf X<my_snprintf>, my_sprintf X<my_sprintf>, 5816 my_vsnprintf X<my_vsnprintf>, new_version X<new_version>, scan_version 5817 X<scan_version>, strEQ X<strEQ>, strGE X<strGE>, strGT X<strGT>, strLE 5818 X<strLE>, strLT X<strLT>, strNE X<strNE>, strnEQ X<strnEQ>, strnNE 5819 X<strnNE>, sv_destroyable X<sv_destroyable>, sv_nosharing X<sv_nosharing>, 5820 upg_version X<upg_version>, vcmp X<vcmp>, vnormal X<vnormal>, vnumify 5821 X<vnumify>, vstringify X<vstringify>, vverify X<vverify> 5822 5823 =item MRO Functions 5824 5825 mro_get_linear_isa X<mro_get_linear_isa>, mro_method_changed_in 5826 X<mro_method_changed_in> 5827 5828 =item Multicall Functions 5829 5830 dMULTICALL X<dMULTICALL>, MULTICALL X<MULTICALL>, POP_MULTICALL 5831 X<POP_MULTICALL>, PUSH_MULTICALL X<PUSH_MULTICALL> 5832 5833 =item Numeric functions 5834 5835 grok_bin X<grok_bin>, grok_hex X<grok_hex>, grok_number X<grok_number>, 5836 grok_numeric_radix X<grok_numeric_radix>, grok_oct X<grok_oct>, 5837 Perl_signbit X<Perl_signbit>, scan_bin X<scan_bin>, scan_hex X<scan_hex>, 5838 scan_oct X<scan_oct> 5839 5840 =item Optree Manipulation Functions 5841 5842 cv_const_sv X<cv_const_sv>, newCONSTSUB X<newCONSTSUB>, newXS X<newXS> 5843 5844 =item Pad Data Structures 5845 5846 pad_sv X<pad_sv> 5847 5848 =item Per-Interpreter Variables 5849 5850 PL_modglobal X<PL_modglobal>, PL_na X<PL_na>, PL_sv_no X<PL_sv_no>, 5851 PL_sv_undef X<PL_sv_undef>, PL_sv_yes X<PL_sv_yes> 5852 5853 =item REGEXP Functions 5854 5855 SvRX X<SvRX>, SvRXOK X<SvRXOK> 5856 5857 =item Simple Exception Handling Macros 5858 5859 dXCPT X<dXCPT>, XCPT_CATCH X<XCPT_CATCH>, XCPT_RETHROW X<XCPT_RETHROW>, 5860 XCPT_TRY_END X<XCPT_TRY_END>, XCPT_TRY_START X<XCPT_TRY_START> 5861 5862 =item Stack Manipulation Macros 5863 5864 dMARK X<dMARK>, dORIGMARK X<dORIGMARK>, dSP X<dSP>, EXTEND X<EXTEND>, MARK 5865 X<MARK>, mPUSHi X<mPUSHi>, mPUSHn X<mPUSHn>, mPUSHp X<mPUSHp>, mPUSHu 5866 X<mPUSHu>, mXPUSHi X<mXPUSHi>, mXPUSHn X<mXPUSHn>, mXPUSHp X<mXPUSHp>, 5867 mXPUSHu X<mXPUSHu>, ORIGMARK X<ORIGMARK>, POPi X<POPi>, POPl X<POPl>, POPn 5868 X<POPn>, POPp X<POPp>, POPpbytex X<POPpbytex>, POPpx X<POPpx>, POPs 5869 X<POPs>, PUSHi X<PUSHi>, PUSHMARK X<PUSHMARK>, PUSHmortal X<PUSHmortal>, 5870 PUSHn X<PUSHn>, PUSHp X<PUSHp>, PUSHs X<PUSHs>, PUSHu X<PUSHu>, PUTBACK 5871 X<PUTBACK>, SP X<SP>, SPAGAIN X<SPAGAIN>, XPUSHi X<XPUSHi>, XPUSHmortal 5872 X<XPUSHmortal>, XPUSHn X<XPUSHn>, XPUSHp X<XPUSHp>, XPUSHs X<XPUSHs>, 5873 XPUSHu X<XPUSHu>, XSRETURN X<XSRETURN>, XSRETURN_EMPTY X<XSRETURN_EMPTY>, 5874 XSRETURN_IV X<XSRETURN_IV>, XSRETURN_NO X<XSRETURN_NO>, XSRETURN_NV 5875 X<XSRETURN_NV>, XSRETURN_PV X<XSRETURN_PV>, XSRETURN_UNDEF 5876 X<XSRETURN_UNDEF>, XSRETURN_UV X<XSRETURN_UV>, XSRETURN_YES 5877 X<XSRETURN_YES>, XST_mIV X<XST_mIV>, XST_mNO X<XST_mNO>, XST_mNV 5878 X<XST_mNV>, XST_mPV X<XST_mPV>, XST_mUNDEF X<XST_mUNDEF>, XST_mYES 5879 X<XST_mYES> 5880 5881 =item SV Flags 5882 5883 svtype X<svtype>, SVt_IV X<SVt_IV>, SVt_NV X<SVt_NV>, SVt_PV X<SVt_PV>, 5884 SVt_PVAV X<SVt_PVAV>, SVt_PVCV X<SVt_PVCV>, SVt_PVHV X<SVt_PVHV>, SVt_PVMG 5885 X<SVt_PVMG> 5886 5887 =item SV Manipulation Functions 5888 5889 get_sv X<get_sv>, newRV_inc X<newRV_inc>, SvCUR X<SvCUR>, SvCUR_set 5890 X<SvCUR_set>, SvEND X<SvEND>, SvGAMAGIC X<SvGAMAGIC>, SvGROW X<SvGROW>, 5891 SvIOK X<SvIOK>, SvIOKp X<SvIOKp>, SvIOK_notUV X<SvIOK_notUV>, SvIOK_off 5892 X<SvIOK_off>, SvIOK_on X<SvIOK_on>, SvIOK_only X<SvIOK_only>, SvIOK_only_UV 5893 X<SvIOK_only_UV>, SvIOK_UV X<SvIOK_UV>, SvIsCOW X<SvIsCOW>, 5894 SvIsCOW_shared_hash X<SvIsCOW_shared_hash>, SvIV X<SvIV>, SvIVX X<SvIVX>, 5895 SvIVx X<SvIVx>, SvIV_nomg X<SvIV_nomg>, SvIV_set X<SvIV_set>, SvLEN 5896 X<SvLEN>, SvLEN_set X<SvLEN_set>, SvMAGIC_set X<SvMAGIC_set>, SvNIOK 5897 X<SvNIOK>, SvNIOKp X<SvNIOKp>, SvNIOK_off X<SvNIOK_off>, SvNOK X<SvNOK>, 5898 SvNOKp X<SvNOKp>, SvNOK_off X<SvNOK_off>, SvNOK_on X<SvNOK_on>, SvNOK_only 5899 X<SvNOK_only>, SvNV X<SvNV>, SvNVX X<SvNVX>, SvNVx X<SvNVx>, SvNV_set 5900 X<SvNV_set>, SvOK X<SvOK>, SvOOK X<SvOOK>, SvPOK X<SvPOK>, SvPOKp 5901 X<SvPOKp>, SvPOK_off X<SvPOK_off>, SvPOK_on X<SvPOK_on>, SvPOK_only 5902 X<SvPOK_only>, SvPOK_only_UTF8 X<SvPOK_only_UTF8>, SvPV X<SvPV>, SvPVbyte 5903 X<SvPVbyte>, SvPVbytex X<SvPVbytex>, SvPVbytex_force X<SvPVbytex_force>, 5904 SvPVbyte_force X<SvPVbyte_force>, SvPVbyte_nolen X<SvPVbyte_nolen>, 5905 SvPVutf8 X<SvPVutf8>, SvPVutf8x X<SvPVutf8x>, SvPVutf8x_force 5906 X<SvPVutf8x_force>, SvPVutf8_force X<SvPVutf8_force>, SvPVutf8_nolen 5907 X<SvPVutf8_nolen>, SvPVX X<SvPVX>, SvPVx X<SvPVx>, SvPV_force 5908 X<SvPV_force>, SvPV_force_nomg X<SvPV_force_nomg>, SvPV_nolen 5909 X<SvPV_nolen>, SvPV_nomg X<SvPV_nomg>, SvPV_set X<SvPV_set>, SvREFCNT 5910 X<SvREFCNT>, SvREFCNT_dec X<SvREFCNT_dec>, SvREFCNT_inc X<SvREFCNT_inc>, 5911 SvREFCNT_inc_NN X<SvREFCNT_inc_NN>, SvREFCNT_inc_simple 5912 X<SvREFCNT_inc_simple>, SvREFCNT_inc_simple_NN X<SvREFCNT_inc_simple_NN>, 5913 SvREFCNT_inc_simple_void X<SvREFCNT_inc_simple_void>, 5914 SvREFCNT_inc_simple_void_NN X<SvREFCNT_inc_simple_void_NN>, 5915 SvREFCNT_inc_void X<SvREFCNT_inc_void>, SvREFCNT_inc_void_NN 5916 X<SvREFCNT_inc_void_NN>, SvROK X<SvROK>, SvROK_off X<SvROK_off>, SvROK_on 5917 X<SvROK_on>, SvRV X<SvRV>, SvRV_set X<SvRV_set>, SvSTASH X<SvSTASH>, 5918 SvSTASH_set X<SvSTASH_set>, SvTAINT X<SvTAINT>, SvTAINTED X<SvTAINTED>, 5919 SvTAINTED_off X<SvTAINTED_off>, SvTAINTED_on X<SvTAINTED_on>, SvTRUE 5920 X<SvTRUE>, SvTYPE X<SvTYPE>, SvUOK X<SvUOK>, SvUPGRADE X<SvUPGRADE>, SvUTF8 5921 X<SvUTF8>, SvUTF8_off X<SvUTF8_off>, SvUTF8_on X<SvUTF8_on>, SvUV X<SvUV>, 5922 SvUVX X<SvUVX>, SvUVx X<SvUVx>, SvUV_nomg X<SvUV_nomg>, SvUV_set 5923 X<SvUV_set>, SvVOK X<SvVOK>, sv_catpvn_nomg X<sv_catpvn_nomg>, 5924 sv_catsv_nomg X<sv_catsv_nomg>, sv_derived_from X<sv_derived_from>, sv_does 5925 X<sv_does>, sv_report_used X<sv_report_used>, sv_setsv_nomg 5926 X<sv_setsv_nomg> 5927 5928 =item SV-Body Allocation 5929 5930 looks_like_number X<looks_like_number>, newRV_noinc X<newRV_noinc>, newSV 5931 X<newSV>, newSVhek X<newSVhek>, newSViv X<newSViv>, newSVnv X<newSVnv>, 5932 newSVpv X<newSVpv>, newSVpvf X<newSVpvf>, newSVpvn X<newSVpvn>, 5933 newSVpvn_share X<newSVpvn_share>, newSVpvs X<newSVpvs>, newSVpvs_share 5934 X<newSVpvs_share>, newSVrv X<newSVrv>, newSVsv X<newSVsv>, newSVuv 5935 X<newSVuv>, newSV_type X<newSV_type>, sv_2bool X<sv_2bool>, sv_2cv 5936 X<sv_2cv>, sv_2io X<sv_2io>, sv_2iv_flags X<sv_2iv_flags>, sv_2mortal 5937 X<sv_2mortal>, sv_2nv X<sv_2nv>, sv_2pvbyte X<sv_2pvbyte>, sv_2pvutf8 5938 X<sv_2pvutf8>, sv_2pv_flags X<sv_2pv_flags>, sv_2uv_flags X<sv_2uv_flags>, 5939 sv_backoff X<sv_backoff>, sv_bless X<sv_bless>, sv_catpv X<sv_catpv>, 5940 sv_catpvf X<sv_catpvf>, sv_catpvf_mg X<sv_catpvf_mg>, sv_catpvn 5941 X<sv_catpvn>, sv_catpvn_flags X<sv_catpvn_flags>, sv_catpvs X<sv_catpvs>, 5942 sv_catpv_mg X<sv_catpv_mg>, sv_catsv X<sv_catsv>, sv_catsv_flags 5943 X<sv_catsv_flags>, sv_chop X<sv_chop>, sv_clear X<sv_clear>, sv_cmp 5944 X<sv_cmp>, sv_cmp_locale X<sv_cmp_locale>, sv_collxfrm X<sv_collxfrm>, 5945 sv_copypv X<sv_copypv>, sv_dec X<sv_dec>, sv_eq X<sv_eq>, 5946 sv_force_normal_flags X<sv_force_normal_flags>, sv_free X<sv_free>, sv_gets 5947 X<sv_gets>, sv_grow X<sv_grow>, sv_inc X<sv_inc>, sv_insert X<sv_insert>, 5948 sv_isa X<sv_isa>, sv_isobject X<sv_isobject>, sv_len X<sv_len>, sv_len_utf8 5949 X<sv_len_utf8>, sv_magic X<sv_magic>, sv_magicext X<sv_magicext>, 5950 sv_mortalcopy X<sv_mortalcopy>, sv_newmortal X<sv_newmortal>, sv_newref 5951 X<sv_newref>, sv_pos_b2u X<sv_pos_b2u>, sv_pos_u2b X<sv_pos_u2b>, 5952 sv_pvbyten_force X<sv_pvbyten_force>, sv_pvn_force X<sv_pvn_force>, 5953 sv_pvn_force_flags X<sv_pvn_force_flags>, sv_pvutf8n_force 5954 X<sv_pvutf8n_force>, sv_reftype X<sv_reftype>, sv_replace X<sv_replace>, 5955 sv_reset X<sv_reset>, sv_rvweaken X<sv_rvweaken>, sv_setiv X<sv_setiv>, 5956 sv_setiv_mg X<sv_setiv_mg>, sv_setnv X<sv_setnv>, sv_setnv_mg 5957 X<sv_setnv_mg>, sv_setpv X<sv_setpv>, sv_setpvf X<sv_setpvf>, sv_setpvf_mg 5958 X<sv_setpvf_mg>, sv_setpviv X<sv_setpviv>, sv_setpviv_mg X<sv_setpviv_mg>, 5959 sv_setpvn X<sv_setpvn>, sv_setpvn_mg X<sv_setpvn_mg>, sv_setpvs 5960 X<sv_setpvs>, sv_setpv_mg X<sv_setpv_mg>, sv_setref_iv X<sv_setref_iv>, 5961 sv_setref_nv X<sv_setref_nv>, sv_setref_pv X<sv_setref_pv>, sv_setref_pvn 5962 X<sv_setref_pvn>, sv_setref_uv X<sv_setref_uv>, sv_setsv X<sv_setsv>, 5963 sv_setsv_flags X<sv_setsv_flags>, sv_setsv_mg X<sv_setsv_mg>, sv_setuv 5964 X<sv_setuv>, sv_setuv_mg X<sv_setuv_mg>, sv_tainted X<sv_tainted>, sv_true 5965 X<sv_true>, sv_unmagic X<sv_unmagic>, sv_unref_flags X<sv_unref_flags>, 5966 sv_untaint X<sv_untaint>, sv_upgrade X<sv_upgrade>, sv_usepvn_flags 5967 X<sv_usepvn_flags>, sv_utf8_decode X<sv_utf8_decode>, sv_utf8_downgrade 5968 X<sv_utf8_downgrade>, sv_utf8_encode X<sv_utf8_encode>, sv_utf8_upgrade 5969 X<sv_utf8_upgrade>, sv_utf8_upgrade_flags X<sv_utf8_upgrade_flags>, 5970 sv_vcatpvf X<sv_vcatpvf>, sv_vcatpvfn X<sv_vcatpvfn>, sv_vcatpvf_mg 5971 X<sv_vcatpvf_mg>, sv_vsetpvf X<sv_vsetpvf>, sv_vsetpvfn X<sv_vsetpvfn>, 5972 sv_vsetpvf_mg X<sv_vsetpvf_mg> 5973 5974 =item Unicode Support 5975 5976 bytes_from_utf8 X<bytes_from_utf8>, bytes_to_utf8 X<bytes_to_utf8>, 5977 ibcmp_utf8 X<ibcmp_utf8>, is_utf8_char X<is_utf8_char>, is_utf8_string 5978 X<is_utf8_string>, is_utf8_string_loc X<is_utf8_string_loc>, 5979 is_utf8_string_loclen X<is_utf8_string_loclen>, pv_uni_display 5980 X<pv_uni_display>, sv_cat_decode X<sv_cat_decode>, sv_recode_to_utf8 5981 X<sv_recode_to_utf8>, sv_uni_display X<sv_uni_display>, to_utf8_case 5982 X<to_utf8_case>, to_utf8_fold X<to_utf8_fold>, to_utf8_lower 5983 X<to_utf8_lower>, to_utf8_title X<to_utf8_title>, to_utf8_upper 5984 X<to_utf8_upper>, utf8n_to_uvchr X<utf8n_to_uvchr>, utf8n_to_uvuni 5985 X<utf8n_to_uvuni>, utf8_distance X<utf8_distance>, utf8_hop X<utf8_hop>, 5986 utf8_length X<utf8_length>, utf8_to_bytes X<utf8_to_bytes>, utf8_to_uvchr 5987 X<utf8_to_uvchr>, utf8_to_uvuni X<utf8_to_uvuni>, uvchr_to_utf8 5988 X<uvchr_to_utf8>, uvuni_to_utf8_flags X<uvuni_to_utf8_flags> 5989 5990 =item Variables created by C<xsubpp> and C<xsubpp> internal functions 5991 5992 ax X<ax>, CLASS X<CLASS>, dAX X<dAX>, dAXMARK X<dAXMARK>, dITEMS X<dITEMS>, 5993 dUNDERBAR X<dUNDERBAR>, dXSARGS X<dXSARGS>, dXSI32 X<dXSI32>, items 5994 X<items>, ix X<ix>, newXSproto X<newXSproto>, RETVAL X<RETVAL>, ST X<ST>, 5995 THIS X<THIS>, UNDERBAR X<UNDERBAR>, XS X<XS>, XS_VERSION X<XS_VERSION>, 5996 XS_VERSION_BOOTCHECK X<XS_VERSION_BOOTCHECK> 5997 5998 =item Warning and Dieing 5999 6000 croak X<croak>, warn X<warn> 6001 6002 =item AUTHORS 6003 6004 =item SEE ALSO 6005 6006 =back 6007 6008 =head2 perlintern - autogenerated documentation of purely B<internal> 6009 Perl functions 6010 6011 =over 4 6012 6013 =item DESCRIPTION 6014 X<internal Perl functions> X<interpreter functions> 6015 6016 =item CV reference counts and CvOUTSIDE 6017 6018 CvWEAKOUTSIDE X<CvWEAKOUTSIDE> 6019 6020 =item Functions in file pad.h 6021 6022 CX_CURPAD_SAVE X<CX_CURPAD_SAVE>, CX_CURPAD_SV X<CX_CURPAD_SV>, PAD_BASE_SV 6023 X<PAD_BASE_SV>, PAD_CLONE_VARS X<PAD_CLONE_VARS>, PAD_COMPNAME_FLAGS 6024 X<PAD_COMPNAME_FLAGS>, PAD_COMPNAME_GEN X<PAD_COMPNAME_GEN>, 6025 PAD_COMPNAME_GEN_set X<PAD_COMPNAME_GEN_set>, PAD_COMPNAME_OURSTASH 6026 X<PAD_COMPNAME_OURSTASH>, PAD_COMPNAME_PV X<PAD_COMPNAME_PV>, 6027 PAD_COMPNAME_TYPE X<PAD_COMPNAME_TYPE>, PAD_DUP X<PAD_DUP>, 6028 PAD_RESTORE_LOCAL X<PAD_RESTORE_LOCAL>, PAD_SAVE_LOCAL X<PAD_SAVE_LOCAL>, 6029 PAD_SAVE_SETNULLPAD X<PAD_SAVE_SETNULLPAD>, PAD_SETSV X<PAD_SETSV>, 6030 PAD_SET_CUR X<PAD_SET_CUR>, PAD_SET_CUR_NOSAVE X<PAD_SET_CUR_NOSAVE>, 6031 PAD_SV X<PAD_SV>, PAD_SVl X<PAD_SVl>, SAVECLEARSV X<SAVECLEARSV>, 6032 SAVECOMPPAD X<SAVECOMPPAD>, SAVEPADSV X<SAVEPADSV> 6033 6034 =item GV Functions 6035 6036 is_gv_magical X<is_gv_magical>, is_gv_magical_sv X<is_gv_magical_sv> 6037 6038 =item Hash Manipulation Functions 6039 6040 refcounted_he_chain_2hv X<refcounted_he_chain_2hv>, refcounted_he_free 6041 X<refcounted_he_free>, refcounted_he_new X<refcounted_he_new> 6042 6043 =item IO Functions 6044 6045 start_glob X<start_glob> 6046 6047 =item Magical Functions 6048 6049 magic_sethint X<magic_sethint>, mg_localize X<mg_localize> 6050 6051 =item MRO Functions 6052 6053 mro_get_linear_isa_c3 X<mro_get_linear_isa_c3>, mro_get_linear_isa_dfs 6054 X<mro_get_linear_isa_dfs>, mro_isa_changed_in X<mro_isa_changed_in> 6055 6056 =item Pad Data Structures 6057 6058 CvPADLIST X<CvPADLIST>, cv_clone X<cv_clone>, cv_dump X<cv_dump>, 6059 do_dump_pad X<do_dump_pad>, intro_my X<intro_my>, pad_add_anon 6060 X<pad_add_anon>, pad_add_name X<pad_add_name>, pad_alloc X<pad_alloc>, 6061 pad_block_start X<pad_block_start>, pad_check_dup X<pad_check_dup>, 6062 pad_findlex X<pad_findlex>, pad_findmy X<pad_findmy>, pad_fixup_inner_anons 6063 X<pad_fixup_inner_anons>, pad_free X<pad_free>, pad_leavemy X<pad_leavemy>, 6064 pad_new X<pad_new>, pad_push X<pad_push>, pad_reset X<pad_reset>, pad_setsv 6065 X<pad_setsv>, pad_swipe X<pad_swipe>, pad_tidy X<pad_tidy>, pad_undef 6066 X<pad_undef> 6067 6068 =item Per-Interpreter Variables 6069 6070 PL_DBsingle X<PL_DBsingle>, PL_DBsub X<PL_DBsub>, PL_DBtrace X<PL_DBtrace>, 6071 PL_dowarn X<PL_dowarn>, PL_last_in_gv X<PL_last_in_gv>, PL_ofs_sv 6072 X<PL_ofs_sv>, PL_rs X<PL_rs> 6073 6074 =item Stack Manipulation Macros 6075 6076 djSP X<djSP>, LVRET X<LVRET> 6077 6078 =item SV Manipulation Functions 6079 6080 sv_add_arena X<sv_add_arena>, sv_clean_all X<sv_clean_all>, sv_clean_objs 6081 X<sv_clean_objs>, sv_free_arenas X<sv_free_arenas> 6082 6083 =item SV-Body Allocation 6084 6085 sv_2num X<sv_2num> 6086 6087 =item Unicode Support 6088 6089 find_uninit_var X<find_uninit_var>, report_uninit X<report_uninit> 6090 6091 =item AUTHORS 6092 6093 =item SEE ALSO 6094 6095 =back 6096 6097 =head2 perliol - C API for Perl's implementation of IO in Layers. 6098 6099 =over 4 6100 6101 =item SYNOPSIS 6102 6103 =item DESCRIPTION 6104 6105 =over 4 6106 6107 =item History and Background 6108 6109 =item Basic Structure 6110 6111 =item Layers vs Disciplines 6112 6113 =item Data Structures 6114 6115 =item Functions and Attributes 6116 6117 =item Per-instance Data 6118 6119 =item Layers in action. 6120 6121 =item Per-instance flag bits 6122 6123 PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR, 6124 PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8, 6125 PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF, 6126 PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS 6127 6128 =item Methods in Detail 6129 6130 fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF, 6131 PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode, 6132 Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof, 6133 Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, 6134 Set_ptrcnt 6135 6136 =item Utilities 6137 6138 =item Implementing PerlIO Layers 6139 6140 C implementations, Perl implementations 6141 6142 =item Core Layers 6143 6144 "unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8" 6145 6146 =item Extension Layers 6147 6148 ":encoding", ":scalar", ":via" 6149 6150 =back 6151 6152 =item TODO 6153 6154 =back 6155 6156 =head2 perlapio - perl's IO abstraction interface. 6157 6158 =over 4 6159 6160 =item SYNOPSIS 6161 6162 =item DESCRIPTION 6163 6164 1. USE_STDIO, 2. USE_SFIO, 3. USE_PERLIO, B<PerlIO_stdin()>, 6165 B<PerlIO_stdout()>, B<PerlIO_stderr()>, B<PerlIO_open(path, mode)>, 6166 B<PerlIO_fdopen(fd,mode)>, B<PerlIO_reopen(path,mode,f)>, 6167 B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>, 6168 B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>, 6169 B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(f,s)>, 6170 B<PerlIO_putc(f,c)>, B<PerlIO_ungetc(f,c)>, B<PerlIO_getc(f)>, 6171 B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>, 6172 B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_seek(f,offset,whence)>, 6173 B<PerlIO_tell(f)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>, 6174 B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>, B<PerlIO_setlinebuf(f)> 6175 6176 =over 4 6177 6178 =item Co-existence with stdio 6179 6180 B<PerlIO_importFILE(f,mode)>, B<PerlIO_exportFILE(f,mode)>, 6181 B<PerlIO_releaseFILE(p,f)>, B<PerlIO_findFILE(f)> 6182 6183 =item "Fast gets" Functions 6184 6185 B<PerlIO_fast_gets(f)>, B<PerlIO_has_cntptr(f)>, B<PerlIO_get_cnt(f)>, 6186 B<PerlIO_get_ptr(f)>, B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_canset_cnt(f)>, 6187 B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>, B<PerlIO_get_base(f)>, 6188 B<PerlIO_get_bufsiz(f)> 6189 6190 =item Other Functions 6191 6192 PerlIO_apply_layers(f,mode,layers), PerlIO_binmode(f,ptype,imode,layers), 6193 'E<lt>' read, 'E<gt>' write, '+' read/write, PerlIO_debug(fmt,...) 6194 6195 =back 6196 6197 =back 6198 6199 =head2 perlhack - How to hack at the Perl internals 6200 6201 =over 4 6202 6203 =item DESCRIPTION 6204 6205 Does concept match the general goals of Perl?, Where is the 6206 implementation?, Backwards compatibility, Could it be a module instead?, Is 6207 the feature generic enough?, Does it potentially introduce new bugs?, Does 6208 it preclude other desirable features?, Is the implementation robust?, Is 6209 the implementation generic enough to be portable?, Is the implementation 6210 tested?, Is there enough documentation?, Is there another way to do it?, 6211 Does it create too much work?, Patches speak louder than words 6212 6213 =over 4 6214 6215 =item Keeping in sync 6216 6217 rsync'ing the source tree, Using rsync over the LAN, Using pushing over the 6218 NFS, rsync'ing the patches 6219 6220 =item Why rsync the source tree 6221 6222 It's easier to rsync the source tree, It's more reliable 6223 6224 =item Why rsync the patches 6225 6226 It's easier to rsync the patches, It's a good reference, Finding a start 6227 point, Finding how to fix a bug, Finding the source of misbehaviour 6228 6229 =item Working with the source 6230 6231 =item Perlbug administration 6232 6233 =item Submitting patches 6234 6235 L<perlguts>, L<perlxstut> and L<perlxs>, L<perlapi>, 6236 F<Porting/pumpkin.pod>, The perl5-porters FAQ 6237 6238 =item Finding Your Way Around 6239 6240 Core modules, Tests, Documentation, Configure, Interpreter 6241 6242 =item Elements of the interpreter 6243 6244 Startup, Parsing, Optimization, Running, Exception handing 6245 6246 =item Internal Variable Types 6247 6248 =item Op Trees 6249 6250 =item Stacks 6251 6252 Argument stack, Mark stack, Save stack 6253 6254 =item Millions of Macros 6255 6256 =item The .i Targets 6257 6258 =back 6259 6260 =item SOURCE CODE STATIC ANALYSIS 6261 6262 =over 4 6263 6264 =item lint, splint 6265 6266 =item Coverity 6267 6268 =item cpd (cut-and-paste detector) 6269 6270 =item gcc warnings 6271 6272 =item Warnings of other C compilers 6273 6274 =item DEBUGGING 6275 6276 =item Poking at Perl 6277 6278 =item Using a source-level debugger 6279 6280 run [args], break function_name, break source.c:xxx, step, next, continue, 6281 finish, 'enter', print 6282 6283 =item gdb macro support 6284 6285 =item Dumping Perl Data Structures 6286 6287 =item Patching 6288 6289 =item Patching a core module 6290 6291 =item Adding a new function to the core 6292 6293 =item Writing a test 6294 6295 F<t/base/>, F<t/cmd/>, F<t/comp/>, F<t/io/>, F<t/lib/>, F<t/mro/>, 6296 F<t/op/>, F<t/pod/>, F<t/run/>, F<t/uni/>, F<t/win32/>, F<t/x2p>, t/base 6297 t/comp, t/cmd t/run t/io t/op, t/lib ext lib 6298 6299 =item Special Make Test Targets 6300 6301 coretest, test.deparse, test.taintwarn, minitest, test.valgrind 6302 check.valgrind utest.valgrind ucheck.valgrind, test.third check.third 6303 utest.third ucheck.third, test.torture torturetest, utest ucheck test.utf8 6304 check.utf8, minitest.utf16 test.utf16, test_harness, test-notty test_notty 6305 6306 =item Running tests by hand 6307 6308 -v, -torture, -re=PATTERN, -re LIST OF PATTERNS, PERL_CORE=1, 6309 PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST, PERL_TEST_Net_Ping, 6310 PERL_TEST_NOVREXX, PERL_TEST_NUMCONVERTS 6311 6312 =item Common problems when patching Perl source code 6313 6314 =item Perl environment problems 6315 6316 =item Portability problems 6317 6318 =item Problematic System Interfaces 6319 6320 =item Security problems 6321 6322 =back 6323 6324 =item EXTERNAL TOOLS FOR DEBUGGING PERL 6325 6326 =over 4 6327 6328 =item Rational Software's Purify 6329 6330 =item Purify on Unix 6331 6332 -Accflags=-DPURIFY, -Doptimize='-g', -Uusemymalloc, -Dusemultiplicity 6333 6334 =item Purify on NT 6335 6336 DEFINES, USE_MULTI = define, #PERL_MALLOC = define, CFG = Debug 6337 6338 =item valgrind 6339 6340 =item Compaq's/Digital's/HP's Third Degree 6341 6342 =item PERL_DESTRUCT_LEVEL 6343 6344 =item PERL_MEM_LOG 6345 6346 =item Profiling 6347 6348 =item Gprof Profiling 6349 6350 -a, -b, -e routine, -f routine, -s, -z 6351 6352 =item GCC gcov Profiling 6353 6354 =item Pixie Profiling 6355 6356 -h, -l, -p[rocedures], -h[eavy], -i[nvocations], -l[ines], -testcoverage, 6357 -z[ero] 6358 6359 =item Miscellaneous tricks 6360 6361 =back 6362 6363 =item CONCLUSION 6364 6365 I<The Road goes ever on and on, down from the door where it began.> 6366 6367 =item AUTHOR 6368 6369 =back 6370 6371 =head2 perlbook - Perl book information 6372 6373 =over 4 6374 6375 =item DESCRIPTION 6376 6377 =back 6378 6379 =head2 perlcommunity - a brief overview of the Perl community 6380 6381 =over 4 6382 6383 =item DESCRIPTION 6384 6385 =over 4 6386 6387 =item Where to find the community 6388 6389 =item Mailing lists and Newsgroups 6390 6391 =item IRC 6392 6393 =item Websites 6394 6395 L<http://perl.com/>, L<http://use.perl.org/>, L<http://www.perlmonks.org/> 6396 6397 =item User Groups 6398 6399 =item Workshops 6400 6401 =item Hackathons 6402 6403 =item Conventions 6404 6405 =item Calendar of Perl Events 6406 6407 =back 6408 6409 =item AUTHOR 6410 6411 =back 6412 6413 =head2 perltodo - Perl TO-DO List 6414 6415 =over 4 6416 6417 =item DESCRIPTION 6418 6419 =item Tasks that only need Perl knowledge 6420 6421 =over 4 6422 6423 =item Remove duplication of test setup. 6424 6425 =item merge common code in installperl and installman 6426 6427 =item common test code for timed bail out 6428 6429 =item POD -E<gt> HTML conversion in the core still sucks 6430 6431 =item merge checkpods and podchecker 6432 6433 =item perlmodlib.PL rewrite 6434 6435 =item Parallel testing 6436 6437 =item Make Schwern poorer 6438 6439 =item Improve the coverage of the core tests 6440 6441 =item test B 6442 6443 =item Deparse inlined constants 6444 6445 =item A decent benchmark 6446 6447 =item fix tainting bugs 6448 6449 =item Dual life everything 6450 6451 =item Improving C<threads::shared> 6452 6453 =item POSIX memory footprint 6454 6455 =item embed.pl/makedef.pl 6456 6457 =item use strict; and AutoLoad 6458 6459 =back 6460 6461 =item Tasks that need a little sysadmin-type knowledge 6462 6463 =over 4 6464 6465 =item make HTML install work 6466 6467 =item compressed man pages 6468 6469 =item Add a code coverage target to the Makefile 6470 6471 =item Make Config.pm cope with differences between built and installed perl 6472 6473 =item linker specification files 6474 6475 =item Cross-compile support 6476 6477 =item roffitall 6478 6479 =back 6480 6481 =item Tasks that need a little C knowledge 6482 6483 =over 4 6484 6485 =item Exterminate PL_na! 6486 6487 =item Modernize the order of directories in @INC 6488 6489 =item -Duse32bit* 6490 6491 =item Make it clear from -v if this is the exact official release 6492 6493 =item Profile Perl - am I hot or not? 6494 6495 =item Allocate OPs from arenas 6496 6497 =item Improve win32/wince.c 6498 6499 =item Use secure CRT functions when building with VC8 on Win32 6500 6501 =item strcat(), strcpy(), strncat(), strncpy(), sprintf(), vsprintf() 6502 6503 =item -D_FORTIFY_SOURCE=2, -fstack-protector 6504 6505 =back 6506 6507 =item Tasks that need a knowledge of XS 6508 6509 =over 4 6510 6511 =item autovivification 6512 6513 =item Unicode in Filenames 6514 6515 =item Unicode in %ENV 6516 6517 =item Unicode and glob() 6518 6519 =item Unicode and lc/uc operators 6520 6521 =item use less 'memory' 6522 6523 =item Re-implement C<:unique> in a way that is actually thread-safe 6524 6525 =item Make tainting consistent 6526 6527 =item readpipe(LIST) 6528 6529 =item Audit the code for destruction ordering assumptions 6530 6531 =item Extend PerlIO and PerlIO::Scalar 6532 6533 =item -C on the #! line 6534 6535 =item Propagate const outwards from Perl_moreswitches() 6536 6537 =item Duplicate logic in S_method_common() and 6538 Perl_gv_fetchmethod_autoload() 6539 6540 =item Organize error messages 6541 6542 =back 6543 6544 =item Tasks that need a knowledge of the interpreter 6545 6546 =over 4 6547 6548 =item state variable initialization in list context 6549 6550 =item Implement $value ~~ 0 .. $range 6551 6552 =item A does() built-in 6553 6554 =item Tied filehandles and write() don't mix 6555 6556 =item Attach/detach debugger from running program 6557 6558 =item Optimize away empty destructors 6559 6560 =item LVALUE functions for lists 6561 6562 =item LVALUE functions in the debugger 6563 6564 =item regexp optimiser optional 6565 6566 =item delete &function 6567 6568 =item C</w> regex modifier 6569 6570 =item optional optimizer 6571 6572 =item You WANT *how* many 6573 6574 =item lexical aliases 6575 6576 =item entersub XS vs Perl 6577 6578 =item Self-ties 6579 6580 =item Optimize away @_ 6581 6582 =item Properly Unicode safe tokeniser and pads. 6583 6584 =item The yada yada yada operators 6585 6586 =item Virtualize operating system access 6587 6588 =item Investigate PADTMP hash pessimisation 6589 6590 =back 6591 6592 =item Big projects 6593 6594 =over 4 6595 6596 =item make ithreads more robust 6597 6598 =item iCOW 6599 6600 =item (?{...}) closures in regexps 6601 6602 =item A re-entrant regexp engine 6603 6604 =item Add class set operations to regexp engine 6605 6606 =back 6607 6608 =back 6609 6610 =head2 perldoc - Look up Perl documentation in Pod format. 6611 6612 =over 4 6613 6614 =item SYNOPSIS 6615 6616 =item DESCRIPTION 6617 6618 =item OPTIONS 6619 6620 B<-h>, B<-v>, B<-t>, B<-u>, B<-m> I<module>, B<-l>, B<-F>, B<-f> 6621 I<perlfunc>, B<-q> I<perlfaq-search-regexp>, B<-T>, B<-d> 6622 I<destination-filename>, B<-o> I<output-formatname>, B<-M> I<module-name>, 6623 B<-w> I<option:value> or B<-w> I<option>, B<-X>, B<-L> I<language_code>, 6624 B<PageName|ModuleName|ProgramName>, B<-n> I<some-formatter>, B<-r>, B<-i>, 6625 B<-V> 6626 6627 =item SECURITY 6628 6629 =item ENVIRONMENT 6630 6631 =item AUTHOR 6632 6633 =back 6634 6635 =head2 perlhist - the Perl history records 6636 6637 =over 4 6638 6639 =item DESCRIPTION 6640 6641 =item INTRODUCTION 6642 6643 =item THE KEEPERS OF THE PUMPKIN 6644 6645 =over 4 6646 6647 =item PUMPKIN? 6648 6649 =back 6650 6651 =item THE RECORDS 6652 6653 =over 4 6654 6655 =item SELECTED RELEASE SIZES 6656 6657 =item SELECTED PATCH SIZES 6658 6659 =back 6660 6661 =item THE KEEPERS OF THE RECORDS 6662 6663 =back 6664 6665 =head2 perldelta - what is new for perl 5.10.0 6666 6667 =over 4 6668 6669 =item DESCRIPTION 6670 6671 =item Core Enhancements 6672 6673 =over 4 6674 6675 =item The C<feature> pragma 6676 6677 =item New B<-E> command-line switch 6678 6679 =item Defined-or operator 6680 6681 =item Switch and Smart Match operator 6682 6683 =item Regular expressions 6684 6685 Recursive Patterns, Named Capture Buffers, Possessive Quantifiers, 6686 Backtracking control verbs, Relative backreferences, C<\K> escape, Vertical 6687 and horizontal whitespace, and linebreak 6688 6689 =item C<say()> 6690 6691 =item Lexical C<$_> 6692 6693 =item The C<_> prototype 6694 6695 =item UNITCHECK blocks 6696 6697 =item New Pragma, C<mro> 6698 6699 =item readdir() may return a "short filename" on Windows 6700 6701 =item readpipe() is now overridable 6702 6703 =item Default argument for readline() 6704 6705 =item state() variables 6706 6707 =item Stacked filetest operators 6708 6709 =item UNIVERSAL::DOES() 6710 6711 =item Formats 6712 6713 =item Byte-order modifiers for pack() and unpack() 6714 6715 =item C<no VERSION> 6716 6717 =item C<chdir>, C<chmod> and C<chown> on filehandles 6718 6719 =item OS groups 6720 6721 =item Recursive sort subs 6722 6723 =item Exceptions in constant folding 6724 6725 =item Source filters in @INC 6726 6727 =item New internal variables 6728 6729 C<${^RE_DEBUG_FLAGS}>, C<${^CHILD_ERROR_NATIVE}>, C<${^RE_TRIE_MAXBUF}>, 6730 C<${^WIN32_SLOPPY_STAT}> 6731 6732 =item Miscellaneous 6733 6734 =item UCD 5.0.0 6735 6736 =item MAD 6737 6738 =item kill() on Windows 6739 6740 =back 6741 6742 =item Incompatible Changes 6743 6744 =over 4 6745 6746 =item Packing and UTF-8 strings 6747 6748 =item Byte/character count feature in unpack() 6749 6750 =item The C<$*> and C<$#> variables have been removed 6751 6752 =item substr() lvalues are no longer fixed-length 6753 6754 =item Parsing of C<-f _> 6755 6756 =item C<:unique> 6757 6758 =item Effect of pragmas in eval 6759 6760 =item chdir FOO 6761 6762 =item Handling of .pmc files 6763 6764 =item $^V is now a C<version> object instead of a v-string 6765 6766 =item @- and @+ in patterns 6767 6768 =item $AUTOLOAD can now be tainted 6769 6770 =item Tainting and printf 6771 6772 =item undef and signal handlers 6773 6774 =item strictures and dereferencing in defined() 6775 6776 =item C<(?p{})> has been removed 6777 6778 =item Pseudo-hashes have been removed 6779 6780 =item Removal of the bytecode compiler and of perlcc 6781 6782 =item Removal of the JPL 6783 6784 =item Recursive inheritance detected earlier 6785 6786 =back 6787 6788 =item Modules and Pragmata 6789 6790 =over 4 6791 6792 =item Upgrading individual core modules 6793 6794 =item Pragmata Changes 6795 6796 C<feature>, C<mro>, Scoping of the C<sort> pragma, Scoping of C<bignum>, 6797 C<bigint>, C<bigrat>, C<base>, C<strict> and C<warnings>, C<version>, 6798 C<warnings>, C<less> 6799 6800 =item New modules 6801 6802 =item Selected Changes to Core Modules 6803 6804 C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread> 6805 6806 =back 6807 6808 =item Utility Changes 6809 6810 perl -d, ptar, ptardiff, shasum, corelist, h2ph and h2xs, perlivp, 6811 find2perl, config_data, cpanp, cpan2dist, pod2html 6812 6813 =item New Documentation 6814 6815 =item Performance Enhancements 6816 6817 =over 4 6818 6819 =item In-place sorting 6820 6821 =item Lexical array access 6822 6823 =item XS-assisted SWASHGET 6824 6825 =item Constant subroutines 6826 6827 =item C<PERL_DONT_CREATE_GVSV> 6828 6829 =item Weak references are cheaper 6830 6831 =item sort() enhancements 6832 6833 =item Memory optimisations 6834 6835 =item UTF-8 cache optimisation 6836 6837 =item Sloppy stat on Windows 6838 6839 =item Regular expressions optimisations 6840 6841 Engine de-recursivised, Single char char-classes treated as literals, Trie 6842 optimisation of literal string alternations, Aho-Corasick start-point 6843 optimisation 6844 6845 =back 6846 6847 =item Installation and Configuration Improvements 6848 6849 =over 4 6850 6851 =item Configuration improvements 6852 6853 C<-Dusesitecustomize>, Relocatable installations, strlcat() and strlcpy(), 6854 C<d_pseudofork> and C<d_printf_format_null>, Configure help 6855 6856 =item Compilation improvements 6857 6858 Parallel build, Borland's compilers support, Static build on Windows, 6859 ppport.h files, C++ compatibility, Support for Microsoft 64-bit compiler, 6860 Visual C++, Win32 builds 6861 6862 =item Installation improvements 6863 6864 Module auxiliary files 6865 6866 =item New Or Improved Platforms 6867 6868 =back 6869 6870 =item Selected Bug Fixes 6871 6872 strictures in regexp-eval blocks, Calling CORE::require(), Subscripts of 6873 slices, C<no warnings 'category'> works correctly with -w, threads 6874 improvements, chr() and negative values, PERL5SHELL and tainting, Using 6875 *FILE{IO}, Overloading and reblessing, Overloading and UTF-8, eval memory 6876 leaks fixed, Random device on Windows, PERLIO_DEBUG, PerlIO::scalar and 6877 read-only scalars, study() and UTF-8, Critical signals, @INC-hook fix, 6878 C<-t> switch fix, Duping UTF-8 filehandles, Localisation of hash elements 6879 6880 =item New or Changed Diagnostics 6881 6882 Use of uninitialized value, Deprecated use of my() in false conditional, 6883 !=~ should be !~, Newline in left-justified string, Too late for "-T" 6884 option, "%s" variable %s masks earlier declaration, 6885 readdir()/closedir()/etc. attempted on invalid dirhandle, Opening 6886 dirhandle/filehandle %s also as a file/directory, Use of -P is deprecated, 6887 v-string in use/require is non-portable, perl -V 6888 6889 =item Changed Internals 6890 6891 =over 4 6892 6893 =item Reordering of SVt_* constants 6894 6895 =item Elimination of SVt_PVBM 6896 6897 =item New type SVt_BIND 6898 6899 =item Removal of CPP symbols 6900 6901 =item Less space is used by ops 6902 6903 =item New parser 6904 6905 =item Use of C<const> 6906 6907 =item Mathoms 6908 6909 =item C<AvFLAGS> has been removed 6910 6911 =item C<av_*> changes 6912 6913 =item $^H and %^H 6914 6915 =item B:: modules inheritance changed 6916 6917 =item Anonymous hash and array constructors 6918 6919 =back 6920 6921 =item Known Problems 6922 6923 =item Platform Specific Problems 6924 6925 =item Reporting Bugs 6926 6927 =item SEE ALSO 6928 6929 =back 6930 6931 =head2 perl5100delta, perldelta - what is new for perl 5.10.0 6932 6933 =over 4 6934 6935 =item DESCRIPTION 6936 6937 =item Core Enhancements 6938 6939 =over 4 6940 6941 =item The C<feature> pragma 6942 6943 =item New B<-E> command-line switch 6944 6945 =item Defined-or operator 6946 6947 =item Switch and Smart Match operator 6948 6949 =item Regular expressions 6950 6951 Recursive Patterns, Named Capture Buffers, Possessive Quantifiers, 6952 Backtracking control verbs, Relative backreferences, C<\K> escape, Vertical 6953 and horizontal whitespace, and linebreak 6954 6955 =item C<say()> 6956 6957 =item Lexical C<$_> 6958 6959 =item The C<_> prototype 6960 6961 =item UNITCHECK blocks 6962 6963 =item New Pragma, C<mro> 6964 6965 =item readdir() may return a "short filename" on Windows 6966 6967 =item readpipe() is now overridable 6968 6969 =item Default argument for readline() 6970 6971 =item state() variables 6972 6973 =item Stacked filetest operators 6974 6975 =item UNIVERSAL::DOES() 6976 6977 =item Formats 6978 6979 =item Byte-order modifiers for pack() and unpack() 6980 6981 =item C<no VERSION> 6982 6983 =item C<chdir>, C<chmod> and C<chown> on filehandles 6984 6985 =item OS groups 6986 6987 =item Recursive sort subs 6988 6989 =item Exceptions in constant folding 6990 6991 =item Source filters in @INC 6992 6993 =item New internal variables 6994 6995 C<${^RE_DEBUG_FLAGS}>, C<${^CHILD_ERROR_NATIVE}>, C<${^RE_TRIE_MAXBUF}>, 6996 C<${^WIN32_SLOPPY_STAT}> 6997 6998 =item Miscellaneous 6999 7000 =item UCD 5.0.0 7001 7002 =item MAD 7003 7004 =item kill() on Windows 7005 7006 =back 7007 7008 =item Incompatible Changes 7009 7010 =over 4 7011 7012 =item Packing and UTF-8 strings 7013 7014 =item Byte/character count feature in unpack() 7015 7016 =item The C<$*> and C<$#> variables have been removed 7017 7018 =item substr() lvalues are no longer fixed-length 7019 7020 =item Parsing of C<-f _> 7021 7022 =item C<:unique> 7023 7024 =item Effect of pragmas in eval 7025 7026 =item chdir FOO 7027 7028 =item Handling of .pmc files 7029 7030 =item $^V is now a C<version> object instead of a v-string 7031 7032 =item @- and @+ in patterns 7033 7034 =item $AUTOLOAD can now be tainted 7035 7036 =item Tainting and printf 7037 7038 =item undef and signal handlers 7039 7040 =item strictures and dereferencing in defined() 7041 7042 =item C<(?p{})> has been removed 7043 7044 =item Pseudo-hashes have been removed 7045 7046 =item Removal of the bytecode compiler and of perlcc 7047 7048 =item Removal of the JPL 7049 7050 =item Recursive inheritance detected earlier 7051 7052 =back 7053 7054 =item Modules and Pragmata 7055 7056 =over 4 7057 7058 =item Upgrading individual core modules 7059 7060 =item Pragmata Changes 7061 7062 C<feature>, C<mro>, Scoping of the C<sort> pragma, Scoping of C<bignum>, 7063 C<bigint>, C<bigrat>, C<base>, C<strict> and C<warnings>, C<version>, 7064 C<warnings>, C<less> 7065 7066 =item New modules 7067 7068 =item Selected Changes to Core Modules 7069 7070 C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread> 7071 7072 =back 7073 7074 =item Utility Changes 7075 7076 perl -d, ptar, ptardiff, shasum, corelist, h2ph and h2xs, perlivp, 7077 find2perl, config_data, cpanp, cpan2dist, pod2html 7078 7079 =item New Documentation 7080 7081 =item Performance Enhancements 7082 7083 =over 4 7084 7085 =item In-place sorting 7086 7087 =item Lexical array access 7088 7089 =item XS-assisted SWASHGET 7090 7091 =item Constant subroutines 7092 7093 =item C<PERL_DONT_CREATE_GVSV> 7094 7095 =item Weak references are cheaper 7096 7097 =item sort() enhancements 7098 7099 =item Memory optimisations 7100 7101 =item UTF-8 cache optimisation 7102 7103 =item Sloppy stat on Windows 7104 7105 =item Regular expressions optimisations 7106 7107 Engine de-recursivised, Single char char-classes treated as literals, Trie 7108 optimisation of literal string alternations, Aho-Corasick start-point 7109 optimisation 7110 7111 =back 7112 7113 =item Installation and Configuration Improvements 7114 7115 =over 4 7116 7117 =item Configuration improvements 7118 7119 C<-Dusesitecustomize>, Relocatable installations, strlcat() and strlcpy(), 7120 C<d_pseudofork> and C<d_printf_format_null>, Configure help 7121 7122 =item Compilation improvements 7123 7124 Parallel build, Borland's compilers support, Static build on Windows, 7125 ppport.h files, C++ compatibility, Support for Microsoft 64-bit compiler, 7126 Visual C++, Win32 builds 7127 7128 =item Installation improvements 7129 7130 Module auxiliary files 7131 7132 =item New Or Improved Platforms 7133 7134 =back 7135 7136 =item Selected Bug Fixes 7137 7138 strictures in regexp-eval blocks, Calling CORE::require(), Subscripts of 7139 slices, C<no warnings 'category'> works correctly with -w, threads 7140 improvements, chr() and negative values, PERL5SHELL and tainting, Using 7141 *FILE{IO}, Overloading and reblessing, Overloading and UTF-8, eval memory 7142 leaks fixed, Random device on Windows, PERLIO_DEBUG, PerlIO::scalar and 7143 read-only scalars, study() and UTF-8, Critical signals, @INC-hook fix, 7144 C<-t> switch fix, Duping UTF-8 filehandles, Localisation of hash elements 7145 7146 =item New or Changed Diagnostics 7147 7148 Use of uninitialized value, Deprecated use of my() in false conditional, 7149 !=~ should be !~, Newline in left-justified string, Too late for "-T" 7150 option, "%s" variable %s masks earlier declaration, 7151 readdir()/closedir()/etc. attempted on invalid dirhandle, Opening 7152 dirhandle/filehandle %s also as a file/directory, Use of -P is deprecated, 7153 v-string in use/require is non-portable, perl -V 7154 7155 =item Changed Internals 7156 7157 =over 4 7158 7159 =item Reordering of SVt_* constants 7160 7161 =item Elimination of SVt_PVBM 7162 7163 =item New type SVt_BIND 7164 7165 =item Removal of CPP symbols 7166 7167 =item Less space is used by ops 7168 7169 =item New parser 7170 7171 =item Use of C<const> 7172 7173 =item Mathoms 7174 7175 =item C<AvFLAGS> has been removed 7176 7177 =item C<av_*> changes 7178 7179 =item $^H and %^H 7180 7181 =item B:: modules inheritance changed 7182 7183 =item Anonymous hash and array constructors 7184 7185 =back 7186 7187 =item Known Problems 7188 7189 =item Platform Specific Problems 7190 7191 =item Reporting Bugs 7192 7193 =item SEE ALSO 7194 7195 =back 7196 7197 =head2 perl595delta - what is new for perl v5.9.5 7198 7199 =over 4 7200 7201 =item DESCRIPTION 7202 7203 =item Incompatible Changes 7204 7205 =over 4 7206 7207 =item Tainting and printf 7208 7209 =item undef and signal handlers 7210 7211 =item strictures and array/hash dereferencing in defined() 7212 7213 =item C<(?p{})> has been removed 7214 7215 =item Pseudo-hashes have been removed 7216 7217 =item Removal of the bytecode compiler and of perlcc 7218 7219 =item Removal of the JPL 7220 7221 =item Recursive inheritance detected earlier 7222 7223 =back 7224 7225 =item Core Enhancements 7226 7227 =over 4 7228 7229 =item Regular expressions 7230 7231 Recursive Patterns, Named Capture Buffers, Possessive Quantifiers, 7232 Backtracking control verbs, Relative backreferences, C<\K> escape, Vertical 7233 and horizontal whitespace, and linebreak 7234 7235 =item The C<_> prototype 7236 7237 =item UNITCHECK blocks 7238 7239 =item readpipe() is now overridable 7240 7241 =item default argument for readline() 7242 7243 =item UCD 5.0.0 7244 7245 =item Smart match 7246 7247 =item Implicit loading of C<feature> 7248 7249 =back 7250 7251 =item Modules and Pragmas 7252 7253 =over 4 7254 7255 =item New Pragma, C<mro> 7256 7257 =item bignum, bigint, bigrat 7258 7259 =item Math::BigInt/Math::BigFloat 7260 7261 config(), import(), roundmode common, bpi(), bcos(), bsin(), batan(), 7262 batan2(), bmuladd(), bexp(), bnok(), from_hex(), from_oct(), and 7263 from_bin(), as_oct() 7264 7265 =item New Core Modules 7266 7267 =item Module changes 7268 7269 C<assertions>, C<base>, C<strict> and C<warnings>, C<warnings>, C<less>, 7270 C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread> 7271 7272 =back 7273 7274 =item Utility Changes 7275 7276 =over 4 7277 7278 =item C<cpanp> 7279 7280 =item C<cpan2dist> 7281 7282 =item C<pod2html> 7283 7284 =back 7285 7286 =item Documentation 7287 7288 =over 4 7289 7290 =item New manpage, perlunifaq 7291 7292 =back 7293 7294 =item Performance Enhancements 7295 7296 =item Installation and Configuration Improvements 7297 7298 =over 4 7299 7300 =item C++ compatibility 7301 7302 =item Visual C++ 7303 7304 =item Static build on Win32 7305 7306 =item win32 builds 7307 7308 =item C<d_pseudofork> and C<d_printf_format_null> 7309 7310 =item Help 7311 7312 =item 64bit systems 7313 7314 =item Ports 7315 7316 =back 7317 7318 =item Selected Bug Fixes 7319 7320 =item New or Changed Diagnostics 7321 7322 =over 4 7323 7324 =item Deprecations 7325 7326 =back 7327 7328 =item Changed Internals 7329 7330 =item Known Problems 7331 7332 =over 4 7333 7334 =item Platform Specific Problems 7335 7336 =back 7337 7338 =item Reporting Bugs 7339 7340 =item SEE ALSO 7341 7342 =back 7343 7344 =head2 perl594delta - what is new for perl v5.9.4 7345 7346 =over 4 7347 7348 =item DESCRIPTION 7349 7350 =item Incompatible Changes 7351 7352 =over 4 7353 7354 =item chdir FOO 7355 7356 =item Handling of pmc files 7357 7358 =item @- and @+ in patterns 7359 7360 =item $AUTOLOAD can now be tainted 7361 7362 =back 7363 7364 =item Core Enhancements 7365 7366 =over 4 7367 7368 =item state() variables 7369 7370 =item UNIVERSAL::DOES() 7371 7372 =item Exceptions in constant folding 7373 7374 =item Source filters in @INC 7375 7376 =item MAD 7377 7378 =back 7379 7380 =item Modules and Pragmas 7381 7382 =over 4 7383 7384 =item New Core Modules 7385 7386 =back 7387 7388 =item Utility Changes 7389 7390 =over 4 7391 7392 =item config_data 7393 7394 =back 7395 7396 =item Documentation 7397 7398 =over 4 7399 7400 =item New manpage, perlpragma 7401 7402 =item New manpage, perlreguts 7403 7404 =item New manpage, perlunitut 7405 7406 =back 7407 7408 =item Performance Enhancements 7409 7410 =over 4 7411 7412 =item Memory optimisations 7413 7414 =item UTF-8 cache optimisation 7415 7416 =item Regular expressions 7417 7418 Engine de-recursivised, Single char char-classes treated as literals, Trie 7419 optimisation of literal string alternations, Aho-Corasick start-point 7420 optimisation 7421 7422 =item Sloppy stat on Windows 7423 7424 =back 7425 7426 =item Installation and Configuration Improvements 7427 7428 =over 4 7429 7430 =item Relocatable installations 7431 7432 =item Ports 7433 7434 =item Compilation improvements 7435 7436 =item New probes 7437 7438 =item Windows build improvements 7439 7440 Building XS extensions, Support for 64-bit compiler 7441 7442 =back 7443 7444 =item Selected Bug Fixes 7445 7446 =over 4 7447 7448 =item PERL5SHELL and tainting 7449 7450 =item Using *FILE{IO} 7451 7452 =item Overloading and reblessing 7453 7454 =item Overloading and UTF-8 7455 7456 =item eval memory leaks fixed 7457 7458 =item Random device on Windows 7459 7460 =back 7461 7462 =item New or Changed Diagnostics 7463 7464 State variable %s will be reinitialized 7465 7466 =item Changed Internals 7467 7468 =item Known Problems 7469 7470 =item Reporting Bugs 7471 7472 =item SEE ALSO 7473 7474 =back 7475 7476 =head2 perl593delta - what is new for perl v5.9.3 7477 7478 =over 4 7479 7480 =item DESCRIPTION 7481 7482 =item Incompatible Changes 7483 7484 =over 4 7485 7486 =item Parsing of C<-f _> 7487 7488 =item C<mkdir()> 7489 7490 =item Magic goto and eval 7491 7492 =item C<$#> has been removed 7493 7494 =item C<:unique> 7495 7496 =item Scoping of the C<sort> pragma 7497 7498 =back 7499 7500 =item Core Enhancements 7501 7502 =over 4 7503 7504 =item The C<feature> pragma 7505 7506 =item Switch and Smart Match operator 7507 7508 =item C<say()> 7509 7510 =item C<CLONE_SKIP()> 7511 7512 =item C<${^CHILD_ERROR_NATIVE}> 7513 7514 =item Assertions 7515 7516 =item Unicode Character Database 4.1.0 7517 7518 =item C<no VERSION> 7519 7520 =item Recursive sort subs 7521 7522 =item Effect of pragmas in eval 7523 7524 =item New B<-E> command-line switch 7525 7526 =item C<chdir>, C<chmod> and C<chown> on filehandles 7527 7528 =item OS groups 7529 7530 =back 7531 7532 =item Modules and Pragmata 7533 7534 =over 4 7535 7536 =item New Core Modules 7537 7538 =back 7539 7540 =item Utility Changes 7541 7542 =over 4 7543 7544 =item C<ptar> 7545 7546 =item C<ptardiff> 7547 7548 =item C<shasum> 7549 7550 =item C<h2xs> enhancements 7551 7552 =item C<perlivp> enhancements 7553 7554 =back 7555 7556 =item Documentation 7557 7558 =over 4 7559 7560 =item Perl Glossary 7561 7562 =back 7563 7564 =item Performance Enhancements 7565 7566 =over 4 7567 7568 =item XS-assisted SWASHGET 7569 7570 =item Constant subroutines 7571 7572 =item C<PERL_DONT_CREATE_GVSV> 7573 7574 =item Weak references are cheaper 7575 7576 =item sort() enhancements 7577 7578 =back 7579 7580 =item Installation and Configuration Improvements 7581 7582 =over 4 7583 7584 =item Compilation improvements 7585 7586 =item New Or Improved Platforms 7587 7588 =item New probes 7589 7590 =item Module auxiliary files 7591 7592 =back 7593 7594 =item Selected Bug Fixes 7595 7596 =over 4 7597 7598 =item C<defined $$x> 7599 7600 =item Calling CORE::require() 7601 7602 =item Subscripts of slices 7603 7604 =item Remove over-optimisation 7605 7606 =item sprintf() fixes 7607 7608 =item no warnings 'category' works correctly with -w 7609 7610 =item Smaller fixes 7611 7612 =item More Unicode Fixes 7613 7614 =back 7615 7616 =item New or Changed Diagnostics 7617 7618 =over 4 7619 7620 =item Attempt to set length of freed array 7621 7622 =item Non-string passed as bitmask 7623 7624 =item Search pattern not terminated or ternary operator parsed as search 7625 pattern 7626 7627 =item "%s" variable %s masks earlier declaration 7628 7629 =item readdir()/closedir()/etc. attempted on invalid dirhandle 7630 7631 =back 7632 7633 =item Changed Internals 7634 7635 =over 4 7636 7637 =item B:: modules inheritance changed 7638 7639 =back 7640 7641 =item Reporting Bugs 7642 7643 =item SEE ALSO 7644 7645 =back 7646 7647 =head2 perl592delta - what is new for perl v5.9.2 7648 7649 =over 4 7650 7651 =item DESCRIPTION 7652 7653 =item Incompatible Changes 7654 7655 =over 4 7656 7657 =item Packing and UTF-8 strings 7658 7659 =item Miscellaneous 7660 7661 =back 7662 7663 =item Core Enhancements 7664 7665 =over 4 7666 7667 =item Malloc wrapping 7668 7669 =item Unicode Character Database 4.0.1 7670 7671 =item suidperl less insecure 7672 7673 =item PERLIO_DEBUG 7674 7675 =item Formats 7676 7677 =item Unicode Character Classes 7678 7679 =item Byte-order modifiers for pack() and unpack() 7680 7681 =item Byte count feature in pack() 7682 7683 =item New variables 7684 7685 =back 7686 7687 =item Modules and Pragmata 7688 7689 =over 4 7690 7691 =item New modules 7692 7693 =item Updated And Improved Modules and Pragmata 7694 7695 B::Concise, Socket, Sys::Syslog, threads 7696 7697 =back 7698 7699 =item Utility Changes 7700 7701 =item Performance Enhancements 7702 7703 =item Installation and Configuration Improvements 7704 7705 =item Selected Bug Fixes 7706 7707 =item New or Changed Diagnostics 7708 7709 =item Changed Internals 7710 7711 =item Known Problems 7712 7713 =item Plans for the next release 7714 7715 =item Reporting Bugs 7716 7717 =item SEE ALSO 7718 7719 =back 7720 7721 =head2 perl591delta - what is new for perl v5.9.1 7722 7723 =over 4 7724 7725 =item DESCRIPTION 7726 7727 =item Incompatible Changes 7728 7729 =over 4 7730 7731 =item substr() lvalues are no longer fixed-length 7732 7733 =item The C<:unique> attribute is only meaningful for globals 7734 7735 =back 7736 7737 =item Core Enhancements 7738 7739 =over 4 7740 7741 =item Lexical C<$_> 7742 7743 =item Tied hashes in scalar context 7744 7745 =item Formats 7746 7747 =item Stacked filetest operators 7748 7749 =back 7750 7751 =item Modules and Pragmata 7752 7753 Benchmark, Carp, Exporter, FindBin, List::Util, threads::shared 7754 7755 =item Utility Changes 7756 7757 =item Documentation 7758 7759 =item Performance Enhancements 7760 7761 =item Selected Bug Fixes 7762 7763 =over 4 7764 7765 =item UTF-8 bugs 7766 7767 =item Threading bugs 7768 7769 =item More bugs 7770 7771 =back 7772 7773 =item New or Changed Diagnostics 7774 7775 =item Changed Internals 7776 7777 =over 4 7778 7779 =item Reordering of SVt_* constants 7780 7781 =item Removal of CPP symbols 7782 7783 =item Less space is used by ops 7784 7785 =item New parser 7786 7787 =back 7788 7789 =item Configuration and Building 7790 7791 =item Known Problems 7792 7793 =over 4 7794 7795 =item Platform Specific Problems 7796 7797 =back 7798 7799 =item To-do for perl 5.10.0 7800 7801 =item Reporting Bugs 7802 7803 =item SEE ALSO 7804 7805 =back 7806 7807 =head2 perl590delta - what is new for perl v5.9.0 7808 7809 =over 4 7810 7811 =item DESCRIPTION 7812 7813 =item Incompatible Changes 7814 7815 =over 4 7816 7817 =item Hash Randomisation 7818 7819 =item UTF-8 On Filehandles No Longer Activated By Locale 7820 7821 =item Single-number v-strings are no longer v-strings before "=>" 7822 7823 =item (Win32) The -C Switch Has Been Repurposed 7824 7825 =item (Win32) The /d Switch Of cmd.exe 7826 7827 =item The C<$*> variable has been removed 7828 7829 =back 7830 7831 =item Core Enhancements 7832 7833 =over 4 7834 7835 =item Assertions 7836 7837 =item Defined-or operators 7838 7839 =item UTF-8 no longer default under UTF-8 locales 7840 7841 =item Unsafe signals again available 7842 7843 =item Tied Arrays with Negative Array Indices 7844 7845 =item local ${$x} 7846 7847 =item Unicode Character Database 4.0.0 7848 7849 =item Miscellaneous Enhancements 7850 7851 =back 7852 7853 =item Modules and Pragmata 7854 7855 =over 4 7856 7857 =item Updated Modules And Pragmata 7858 7859 base, B::Bytecode, B::Concise, B::Deparse, Benchmark, ByteLoader, bytes, 7860 CGI, charnames, CPAN, Data::Dumper, DB_File, Devel::PPPort, Digest::MD5, 7861 Encode, fields, libnet, Math::BigInt, MIME::Base64, NEXT, Net::Ping, 7862 PerlIO::scalar, podlators, Pod::LaTeX, PodParsers, Pod::Perldoc, 7863 Scalar::Util, Storable, strict, Term::ANSIcolor, Test::Harness, Test::More, 7864 Test::Simple, Text::Balanced, Time::HiRes, threads, threads::shared, 7865 Unicode::Collate, Unicode::Normalize, Win32::GetFolderPath, 7866 Win32::GetOSVersion 7867 7868 =back 7869 7870 =item Utility Changes 7871 7872 =item New Documentation 7873 7874 =item Performance Enhancements 7875 7876 =item Installation and Configuration Improvements 7877 7878 =over 4 7879 7880 =item Platform-specific enhancements 7881 7882 =back 7883 7884 =item Selected Bug Fixes 7885 7886 =over 4 7887 7888 =item Closures, eval and lexicals 7889 7890 =item Generic fixes 7891 7892 =item Platform-specific fixes 7893 7894 =back 7895 7896 =item New or Changed Diagnostics 7897 7898 =over 4 7899 7900 =item Changed "A thread exited while %d threads were running" 7901 7902 =item Removed "Attempt to clear a restricted hash" 7903 7904 =item New "Illegal declaration of anonymous subroutine" 7905 7906 =item Changed "Invalid range "%s" in transliteration operator" 7907 7908 =item New "Missing control char name in \c" 7909 7910 =item New "Newline in left-justified string for %s" 7911 7912 =item New "Possible precedence problem on bitwise %c operator" 7913 7914 =item New "read() on %s filehandle %s" 7915 7916 =item New "Tied variable freed while still in use" 7917 7918 =item New "To%s: illegal mapping '%s'" 7919 7920 =item New "Use of freed value in iteration" 7921 7922 =back 7923 7924 =item Changed Internals 7925 7926 =item New Tests 7927 7928 =item Known Problems 7929 7930 =over 4 7931 7932 =item Tied hashes in scalar context 7933 7934 =item Net::Ping 450_service and 510_ping_udp failures 7935 7936 =item B::C 7937 7938 =back 7939 7940 =item Platform Specific Problems 7941 7942 =over 4 7943 7944 =item EBCDIC Platforms 7945 7946 =item Cygwin 1.5 problems 7947 7948 =item HP-UX: HP cc warnings about sendfile and sendpath 7949 7950 =item IRIX: t/uni/tr_7jis.t falsely failing 7951 7952 =item Mac OS X: no usemymalloc 7953 7954 =item Tru64: No threaded builds with GNU cc (gcc) 7955 7956 =item Win32: sysopen, sysread, syswrite 7957 7958 =back 7959 7960 =item TODO 7961 7962 =item Reporting Bugs 7963 7964 =item SEE ALSO 7965 7966 =back 7967 7968 =head2 perl588delta - what is new for perl v5.8.8 7969 7970 =over 4 7971 7972 =item DESCRIPTION 7973 7974 =item Incompatible Changes 7975 7976 =item Core Enhancements 7977 7978 =item Modules and Pragmata 7979 7980 =item Utility Changes 7981 7982 =over 4 7983 7984 =item C<h2xs> enhancements 7985 7986 =item C<perlivp> enhancements 7987 7988 =back 7989 7990 =item New Documentation 7991 7992 =item Performance Enhancements 7993 7994 =item Installation and Configuration Improvements 7995 7996 =item Selected Bug Fixes 7997 7998 =over 4 7999 8000 =item no warnings 'category' works correctly with -w 8001 8002 =item Remove over-optimisation 8003 8004 =item sprintf() fixes 8005 8006 =item Debugger and Unicode slowdown 8007 8008 =item Smaller fixes 8009 8010 =back 8011 8012 =item New or Changed Diagnostics 8013 8014 =over 4 8015 8016 =item Attempt to set length of freed array 8017 8018 =item Non-string passed as bitmask 8019 8020 =item Search pattern not terminated or ternary operator parsed as search 8021 pattern 8022 8023 =back 8024 8025 =item Changed Internals 8026 8027 =item Platform Specific Problems 8028 8029 =item Reporting Bugs 8030 8031 =item SEE ALSO 8032 8033 =back 8034 8035 =head2 perl587delta - what is new for perl v5.8.7 8036 8037 =over 4 8038 8039 =item DESCRIPTION 8040 8041 =item Incompatible Changes 8042 8043 =item Core Enhancements 8044 8045 =over 4 8046 8047 =item Unicode Character Database 4.1.0 8048 8049 =item suidperl less insecure 8050 8051 =item Optional site customization script 8052 8053 =item C<Config.pm> is now much smaller. 8054 8055 =back 8056 8057 =item Modules and Pragmata 8058 8059 =item Utility Changes 8060 8061 =over 4 8062 8063 =item find2perl enhancements 8064 8065 =back 8066 8067 =item Performance Enhancements 8068 8069 =item Installation and Configuration Improvements 8070 8071 =item Selected Bug Fixes 8072 8073 =item New or Changed Diagnostics 8074 8075 =item Changed Internals 8076 8077 =item Known Problems 8078 8079 =item Platform Specific Problems 8080 8081 =item Reporting Bugs 8082 8083 =item SEE ALSO 8084 8085 =back 8086 8087 =head2 perl586delta - what is new for perl v5.8.6 8088 8089 =over 4 8090 8091 =item DESCRIPTION 8092 8093 =item Incompatible Changes 8094 8095 =item Core Enhancements 8096 8097 =item Modules and Pragmata 8098 8099 =item Utility Changes 8100 8101 =item Performance Enhancements 8102 8103 =item Selected Bug Fixes 8104 8105 =item New or Changed Diagnostics 8106 8107 =item Changed Internals 8108 8109 =item New Tests 8110 8111 =item Reporting Bugs 8112 8113 =item SEE ALSO 8114 8115 =back 8116 8117 =head2 perl585delta - what is new for perl v5.8.5 8118 8119 =over 4 8120 8121 =item DESCRIPTION 8122 8123 =item Incompatible Changes 8124 8125 =item Core Enhancements 8126 8127 =item Modules and Pragmata 8128 8129 =item Utility Changes 8130 8131 =over 4 8132 8133 =item Perl's debugger 8134 8135 =item h2ph 8136 8137 =back 8138 8139 =item Installation and Configuration Improvements 8140 8141 =item Selected Bug Fixes 8142 8143 =item New or Changed Diagnostics 8144 8145 =item Changed Internals 8146 8147 =item Known Problems 8148 8149 =item Platform Specific Problems 8150 8151 =item Reporting Bugs 8152 8153 =item SEE ALSO 8154 8155 =back 8156 8157 =head2 perl584delta - what is new for perl v5.8.4 8158 8159 =over 4 8160 8161 =item DESCRIPTION 8162 8163 =item Incompatible Changes 8164 8165 =item Core Enhancements 8166 8167 =over 4 8168 8169 =item Malloc wrapping 8170 8171 =item Unicode Character Database 4.0.1 8172 8173 =item suidperl less insecure 8174 8175 =item format 8176 8177 =back 8178 8179 =item Modules and Pragmata 8180 8181 =over 4 8182 8183 =item Updated modules 8184 8185 Attribute::Handlers, B, Benchmark, CGI, Carp, Cwd, Exporter, File::Find, 8186 IO, IPC::Open3, Local::Maketext, Math::BigFloat, Math::BigInt, 8187 Math::BigRat, MIME::Base64, ODBM_File, POSIX, Shell, Socket, Storable, 8188 Switch, Sys::Syslog, Term::ANSIColor, Time::HiRes, Unicode::UCD, Win32, 8189 base, open, threads, utf8 8190 8191 =back 8192 8193 =item Performance Enhancements 8194 8195 =item Utility Changes 8196 8197 =item Installation and Configuration Improvements 8198 8199 =item Selected Bug Fixes 8200 8201 =item New or Changed Diagnostics 8202 8203 =item Changed Internals 8204 8205 =item Future Directions 8206 8207 =item Platform Specific Problems 8208 8209 =item Reporting Bugs 8210 8211 =item SEE ALSO 8212 8213 =back 8214 8215 =head2 perl583delta - what is new for perl v5.8.3 8216 8217 =over 4 8218 8219 =item DESCRIPTION 8220 8221 =item Incompatible Changes 8222 8223 =item Core Enhancements 8224 8225 =item Modules and Pragmata 8226 8227 CGI, Cwd, Digest, Digest::MD5, Encode, File::Spec, FindBin, List::Util, 8228 Math::BigInt, PodParser, Pod::Perldoc, POSIX, Unicode::Collate, 8229 Unicode::Normalize, Test::Harness, threads::shared 8230 8231 =item Utility Changes 8232 8233 =item New Documentation 8234 8235 =item Installation and Configuration Improvements 8236 8237 =item Selected Bug Fixes 8238 8239 =item New or Changed Diagnostics 8240 8241 =item Changed Internals 8242 8243 =item Configuration and Building 8244 8245 =item Platform Specific Problems 8246 8247 =item Known Problems 8248 8249 =item Future Directions 8250 8251 =item Obituary 8252 8253 =item Reporting Bugs 8254 8255 =item SEE ALSO 8256 8257 =back 8258 8259 =head2 perl582delta - what is new for perl v5.8.2 8260 8261 =over 4 8262 8263 =item DESCRIPTION 8264 8265 =item Incompatible Changes 8266 8267 =item Core Enhancements 8268 8269 =over 4 8270 8271 =item Hash Randomisation 8272 8273 =item Threading 8274 8275 =back 8276 8277 =item Modules and Pragmata 8278 8279 =over 4 8280 8281 =item Updated Modules And Pragmata 8282 8283 Devel::PPPort, Digest::MD5, I18N::LangTags, libnet, MIME::Base64, 8284 Pod::Perldoc, strict, Tie::Hash, Time::HiRes, Unicode::Collate, 8285 Unicode::Normalize, UNIVERSAL 8286 8287 =back 8288 8289 =item Selected Bug Fixes 8290 8291 =item Changed Internals 8292 8293 =item Platform Specific Problems 8294 8295 =item Future Directions 8296 8297 =item Reporting Bugs 8298 8299 =item SEE ALSO 8300 8301 =back 8302 8303 =head2 perl581delta - what is new for perl v5.8.1 8304 8305 =over 4 8306 8307 =item DESCRIPTION 8308 8309 =item Incompatible Changes 8310 8311 =over 4 8312 8313 =item Hash Randomisation 8314 8315 =item UTF-8 On Filehandles No Longer Activated By Locale 8316 8317 =item Single-number v-strings are no longer v-strings before "=>" 8318 8319 =item (Win32) The -C Switch Has Been Repurposed 8320 8321 =item (Win32) The /d Switch Of cmd.exe 8322 8323 =back 8324 8325 =item Core Enhancements 8326 8327 =over 4 8328 8329 =item UTF-8 no longer default under UTF-8 locales 8330 8331 =item Unsafe signals again available 8332 8333 =item Tied Arrays with Negative Array Indices 8334 8335 =item local ${$x} 8336 8337 =item Unicode Character Database 4.0.0 8338 8339 =item Deprecation Warnings 8340 8341 =item Miscellaneous Enhancements 8342 8343 =back 8344 8345 =item Modules and Pragmata 8346 8347 =over 4 8348 8349 =item Updated Modules And Pragmata 8350 8351 base, B::Bytecode, B::Concise, B::Deparse, Benchmark, ByteLoader, bytes, 8352 CGI, charnames, CPAN, Data::Dumper, DB_File, Devel::PPPort, Digest::MD5, 8353 Encode, fields, libnet, Math::BigInt, MIME::Base64, NEXT, Net::Ping, 8354 PerlIO::scalar, podlators, Pod::LaTeX, PodParsers, Pod::Perldoc, 8355 Scalar::Util, Storable, strict, Term::ANSIcolor, Test::Harness, Test::More, 8356 Test::Simple, Text::Balanced, Time::HiRes, threads, threads::shared, 8357 Unicode::Collate, Unicode::Normalize, Win32::GetFolderPath, 8358 Win32::GetOSVersion 8359 8360 =back 8361 8362 =item Utility Changes 8363 8364 =item New Documentation 8365 8366 =item Installation and Configuration Improvements 8367 8368 =over 4 8369 8370 =item Platform-specific enhancements 8371 8372 =back 8373 8374 =item Selected Bug Fixes 8375 8376 =over 4 8377 8378 =item Closures, eval and lexicals 8379 8380 =item Generic fixes 8381 8382 =item Platform-specific fixes 8383 8384 =back 8385 8386 =item New or Changed Diagnostics 8387 8388 =over 4 8389 8390 =item Changed "A thread exited while %d threads were running" 8391 8392 =item Removed "Attempt to clear a restricted hash" 8393 8394 =item New "Illegal declaration of anonymous subroutine" 8395 8396 =item Changed "Invalid range "%s" in transliteration operator" 8397 8398 =item New "Missing control char name in \c" 8399 8400 =item New "Newline in left-justified string for %s" 8401 8402 =item New "Possible precedence problem on bitwise %c operator" 8403 8404 =item New "Pseudo-hashes are deprecated" 8405 8406 =item New "read() on %s filehandle %s" 8407 8408 =item New "5.005 threads are deprecated" 8409 8410 =item New "Tied variable freed while still in use" 8411 8412 =item New "To%s: illegal mapping '%s'" 8413 8414 =item New "Use of freed value in iteration" 8415 8416 =back 8417 8418 =item Changed Internals 8419 8420 =item New Tests 8421 8422 =item Known Problems 8423 8424 =over 4 8425 8426 =item Tied hashes in scalar context 8427 8428 =item Net::Ping 450_service and 510_ping_udp failures 8429 8430 =item B::C 8431 8432 =back 8433 8434 =item Platform Specific Problems 8435 8436 =over 4 8437 8438 =item EBCDIC Platforms 8439 8440 =item Cygwin 1.5 problems 8441 8442 =item HP-UX: HP cc warnings about sendfile and sendpath 8443 8444 =item IRIX: t/uni/tr_7jis.t falsely failing 8445 8446 =item Mac OS X: no usemymalloc 8447 8448 =item Tru64: No threaded builds with GNU cc (gcc) 8449 8450 =item Win32: sysopen, sysread, syswrite 8451 8452 =back 8453 8454 =item Future Directions 8455 8456 =item Reporting Bugs 8457 8458 =item SEE ALSO 8459 8460 =back 8461 8462 =head2 perl58delta - what is new for perl v5.8.0 8463 8464 =over 4 8465 8466 =item DESCRIPTION 8467 8468 =item Highlights In 5.8.0 8469 8470 =item Incompatible Changes 8471 8472 =over 4 8473 8474 =item Binary Incompatibility 8475 8476 =item 64-bit platforms and malloc 8477 8478 =item AIX Dynaloading 8479 8480 =item Attributes for C<my> variables now handled at run-time 8481 8482 =item Socket Extension Dynamic in VMS 8483 8484 =item IEEE-format Floating Point Default on OpenVMS Alpha 8485 8486 =item New Unicode Semantics (no more C<use utf8>, almost) 8487 8488 =item New Unicode Properties 8489 8490 =item REF(...) Instead Of SCALAR(...) 8491 8492 =item pack/unpack D/F recycled 8493 8494 =item glob() now returns filenames in alphabetical order 8495 8496 =item Deprecations 8497 8498 =back 8499 8500 =item Core Enhancements 8501 8502 =over 4 8503 8504 =item Unicode Overhaul 8505 8506 =item PerlIO is Now The Default 8507 8508 =item ithreads 8509 8510 =item Restricted Hashes 8511 8512 =item Safe Signals 8513 8514 =item Understanding of Numbers 8515 8516 =item Arrays now always interpolate into double-quoted strings [561] 8517 8518 =item Miscellaneous Changes 8519 8520 =back 8521 8522 =item Modules and Pragmata 8523 8524 =over 4 8525 8526 =item New Modules and Pragmata 8527 8528 =item Updated And Improved Modules and Pragmata 8529 8530 =back 8531 8532 =item Utility Changes 8533 8534 =item New Documentation 8535 8536 =item Performance Enhancements 8537 8538 =item Installation and Configuration Improvements 8539 8540 =over 4 8541 8542 =item Generic Improvements 8543 8544 =item New Or Improved Platforms 8545 8546 =back 8547 8548 =item Selected Bug Fixes 8549 8550 =over 4 8551 8552 =item Platform Specific Changes and Fixes 8553 8554 =back 8555 8556 =item New or Changed Diagnostics 8557 8558 =item Changed Internals 8559 8560 =item Security Vulnerability Closed [561] 8561 8562 =item New Tests 8563 8564 =item Known Problems 8565 8566 =over 4 8567 8568 =item The Compiler Suite Is Still Very Experimental 8569 8570 =item Localising Tied Arrays and Hashes Is Broken 8571 8572 =item Building Extensions Can Fail Because Of Largefiles 8573 8574 =item Modifying $_ Inside for(..) 8575 8576 =item mod_perl 1.26 Doesn't Build With Threaded Perl 8577 8578 =item lib/ftmp-security tests warn 'system possibly insecure' 8579 8580 =item libwww-perl (LWP) fails base/date #51 8581 8582 =item PDL failing some tests 8583 8584 =item Perl_get_sv 8585 8586 =item Self-tying Problems 8587 8588 =item ext/threads/t/libc 8589 8590 =item Failure of Thread (5.005-style) tests 8591 8592 =item Timing problems 8593 8594 =item Tied/Magical Array/Hash Elements Do Not Autovivify 8595 8596 =item Unicode in package/class and subroutine names does not work 8597 8598 =back 8599 8600 =item Platform Specific Problems 8601 8602 =over 4 8603 8604 =item AIX 8605 8606 =item Alpha systems with old gccs fail several tests 8607 8608 =item AmigaOS 8609 8610 =item BeOS 8611 8612 =item Cygwin "unable to remap" 8613 8614 =item Cygwin ndbm tests fail on FAT 8615 8616 =item DJGPP Failures 8617 8618 =item FreeBSD built with ithreads coredumps reading large directories 8619 8620 =item FreeBSD Failing locale Test 117 For ISO 8859-15 Locales 8621 8622 =item IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5 8623 8624 =item HP-UX lib/posix Subtest 9 Fails When LP64-Configured 8625 8626 =item Linux with glibc 2.2.5 fails t/op/int subtest #6 with -Duse64bitint 8627 8628 =item Linux With Sfio Fails op/misc Test 48 8629 8630 =item Mac OS X 8631 8632 =item Mac OS X dyld undefined symbols 8633 8634 =item OS/2 Test Failures 8635 8636 =item op/sprintf tests 91, 129, and 130 8637 8638 =item SCO 8639 8640 =item Solaris 2.5 8641 8642 =item Solaris x86 Fails Tests With -Duse64bitint 8643 8644 =item SUPER-UX (NEC SX) 8645 8646 =item Term::ReadKey not working on Win32 8647 8648 =item UNICOS/mk 8649 8650 =item UTS 8651 8652 =item VOS (Stratus) 8653 8654 =item VMS 8655 8656 =item Win32 8657 8658 =item XML::Parser not working 8659 8660 =item z/OS (OS/390) 8661 8662 =item Unicode Support on EBCDIC Still Spotty 8663 8664 =item Seen In Perl 5.7 But Gone Now 8665 8666 =back 8667 8668 =item Reporting Bugs 8669 8670 =item SEE ALSO 8671 8672 =item HISTORY 8673 8674 =back 8675 8676 =head2 perl573delta - what's new for perl v5.7.3 8677 8678 =over 4 8679 8680 =item DESCRIPTION 8681 8682 =item Changes 8683 8684 =item Reporting Bugs 8685 8686 =item SEE ALSO 8687 8688 =item HISTORY 8689 8690 =back 8691 8692 =head2 perl572delta - what's new for perl v5.7.2 8693 8694 =over 4 8695 8696 =item DESCRIPTION 8697 8698 =item Security Vulnerability Closed 8699 8700 =item Incompatible Changes 8701 8702 =over 4 8703 8704 =item 64-bit platforms and malloc 8705 8706 =item AIX Dynaloading 8707 8708 =item Socket Extension Dynamic in VMS 8709 8710 =item Different Definition of the Unicode Character Classes \p{In...} 8711 8712 =item Deprecations 8713 8714 =back 8715 8716 =item Core Enhancements 8717 8718 =item Modules and Pragmata 8719 8720 =over 4 8721 8722 =item New Modules and Distributions 8723 8724 =item Updated And Improved Modules and Pragmata 8725 8726 =back 8727 8728 =item Utility Changes 8729 8730 =item New Documentation 8731 8732 =item Installation and Configuration Improvements 8733 8734 =over 4 8735 8736 =item New Or Improved Platforms 8737 8738 =item Generic Improvements 8739 8740 =back 8741 8742 =item Selected Bug Fixes 8743 8744 =over 4 8745 8746 =item Platform Specific Changes and Fixes 8747 8748 =back 8749 8750 =item New or Changed Diagnostics 8751 8752 =item Source Code Enhancements 8753 8754 =over 4 8755 8756 =item MAGIC constants 8757 8758 =item Better commented code 8759 8760 =item Regex pre-/post-compilation items matched up 8761 8762 =item gcc -Wall 8763 8764 =back 8765 8766 =item New Tests 8767 8768 =item Known Problems 8769 8770 =over 4 8771 8772 =item AIX 8773 8774 =item Amiga Perl Invoking Mystery 8775 8776 =item lib/ftmp-security tests warn 'system possibly insecure' 8777 8778 =item Cygwin intermittent failures of lib/Memoize/t/expire_file 11 and 12 8779 8780 =item HP-UX lib/io_multihomed Fails When LP64-Configured 8781 8782 =item HP-UX lib/posix Subtest 9 Fails When LP64-Configured 8783 8784 =item Linux With Sfio Fails op/misc Test 48 8785 8786 =item OS/390 8787 8788 =item op/sprintf tests 129 and 130 8789 8790 =item Failure of Thread tests 8791 8792 =item UNICOS 8793 8794 =item UTS 8795 8796 =item VMS 8797 8798 =item Win32 8799 8800 =item Localising a Tied Variable Leaks Memory 8801 8802 =item Self-tying of Arrays and Hashes Is Forbidden 8803 8804 =item Variable Attributes are not Currently Usable for Tieing 8805 8806 =item Building Extensions Can Fail Because Of Largefiles 8807 8808 =item The Compiler Suite Is Still Experimental 8809 8810 =item The Long Double Support is Still Experimental 8811 8812 =back 8813 8814 =item Reporting Bugs 8815 8816 =item SEE ALSO 8817 8818 =item HISTORY 8819 8820 =back 8821 8822 =head2 perl571delta - what's new for perl v5.7.1 8823 8824 =over 4 8825 8826 =item DESCRIPTION 8827 8828 =item Security Vulnerability Closed 8829 8830 =item Incompatible Changes 8831 8832 =item Core Enhancements 8833 8834 =over 4 8835 8836 =item AUTOLOAD Is Now Lvaluable 8837 8838 =item PerlIO is Now The Default 8839 8840 =item Signals Are Now Safe 8841 8842 =back 8843 8844 =item Modules and Pragmata 8845 8846 =over 4 8847 8848 =item New Modules 8849 8850 =item Updated And Improved Modules and Pragmata 8851 8852 =back 8853 8854 =item Performance Enhancements 8855 8856 =item Utility Changes 8857 8858 =item New Documentation 8859 8860 =over 4 8861 8862 =item perlclib 8863 8864 =item perliol 8865 8866 =item README.aix 8867 8868 =item README.bs2000 8869 8870 =item README.macos 8871 8872 =item README.mpeix 8873 8874 =item README.solaris 8875 8876 =item README.vos 8877 8878 =item Porting/repository.pod 8879 8880 =back 8881 8882 =item Installation and Configuration Improvements 8883 8884 =over 4 8885 8886 =item New Or Improved Platforms 8887 8888 =item Generic Improvements 8889 8890 d_cmsghdr, d_fcntl_can_lock, d_fsync, d_getitimer, d_getpagsz, d_msghdr_s, 8891 need_va_copy, d_readv, d_recvmsg, d_sendmsg, sig_size, d_sockatmark, 8892 d_strtoq, d_u32align, d_ualarm, d_usleep 8893 8894 =back 8895 8896 =item Selected Bug Fixes 8897 8898 =over 4 8899 8900 =item Platform Specific Changes and Fixes 8901 8902 =back 8903 8904 =item New or Changed Diagnostics 8905 8906 =item Changed Internals 8907 8908 =item New Tests 8909 8910 =item Known Problems 8911 8912 =over 4 8913 8914 =item AIX vac 5.0.0.0 May Produce Buggy Code For Perl 8915 8916 =item lib/ftmp-security tests warn 'system possibly insecure' 8917 8918 =item lib/io_multihomed Fails In LP64-Configured HP-UX 8919 8920 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX 8921 8922 =item lib/b test 19 8923 8924 =item Linux With Sfio Fails op/misc Test 48 8925 8926 =item sigaction test 13 in VMS 8927 8928 =item sprintf tests 129 and 130 8929 8930 =item Failure of Thread tests 8931 8932 =item Localising a Tied Variable Leaks Memory 8933 8934 =item Self-tying of Arrays and Hashes Is Forbidden 8935 8936 =item Building Extensions Can Fail Because Of Largefiles 8937 8938 =item The Compiler Suite Is Still Experimental 8939 8940 =back 8941 8942 =item Reporting Bugs 8943 8944 =item SEE ALSO 8945 8946 =item HISTORY 8947 8948 =back 8949 8950 =head2 perl570delta - what's new for perl v5.7.0 8951 8952 =over 4 8953 8954 =item DESCRIPTION 8955 8956 =item Security Vulnerability Closed 8957 8958 =item Incompatible Changes 8959 8960 =item Core Enhancements 8961 8962 =item Modules and Pragmata 8963 8964 =over 4 8965 8966 =item New Modules 8967 8968 =item Updated And Improved Modules and Pragmata 8969 8970 =back 8971 8972 =item Utility Changes 8973 8974 =item New Documentation 8975 8976 =item Performance Enhancements 8977 8978 =item Installation and Configuration Improvements 8979 8980 =over 4 8981 8982 =item Generic Improvements 8983 8984 =back 8985 8986 =item Selected Bug Fixes 8987 8988 =over 4 8989 8990 =item Platform Specific Changes and Fixes 8991 8992 =back 8993 8994 =item New or Changed Diagnostics 8995 8996 =item Changed Internals 8997 8998 =item Known Problems 8999 9000 =over 4 9001 9002 =item Unicode Support Still Far From Perfect 9003 9004 =item EBCDIC Still A Lost Platform 9005 9006 =item Building Extensions Can Fail Because Of Largefiles 9007 9008 =item ftmp-security tests warn 'system possibly insecure' 9009 9010 =item Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX 9011 9012 =item Long Doubles Still Don't Work In Solaris 9013 9014 =item Linux With Sfio Fails op/misc Test 48 9015 9016 =item Storable tests fail in some platforms 9017 9018 =item Threads Are Still Experimental 9019 9020 =item The Compiler Suite Is Still Experimental 9021 9022 =back 9023 9024 =item Reporting Bugs 9025 9026 =item SEE ALSO 9027 9028 =item HISTORY 9029 9030 =back 9031 9032 =head2 perl561delta - what's new for perl v5.6.x 9033 9034 =over 4 9035 9036 =item DESCRIPTION 9037 9038 =item Summary of changes between 5.6.0 and 5.6.1 9039 9040 =over 4 9041 9042 =item Security Issues 9043 9044 =item Core bug fixes 9045 9046 C<UNIVERSAL::isa()>, Memory leaks, Numeric conversions, qw(a\\b), caller(), 9047 Bugs in regular expressions, "slurp" mode, Autovivification of symbolic 9048 references to special variables, Lexical warnings, Spurious warnings and 9049 errors, glob(), Tainting, sort(), #line directives, Subroutine prototypes, 9050 map(), Debugger, PERL5OPT, chop(), Unicode support, 64-bit support, 9051 Compiler, Lvalue subroutines, IO::Socket, File::Find, xsubpp, C<no 9052 Module;>, Tests 9053 9054 =item Core features 9055 9056 =item Configuration issues 9057 9058 =item Documentation 9059 9060 =item Bundled modules 9061 9062 B::Concise, File::Temp, Pod::LaTeX, Pod::Text::Overstrike, CGI, CPAN, 9063 Class::Struct, DB_File, Devel::Peek, File::Find, Getopt::Long, IO::Poll, 9064 IPC::Open3, Math::BigFloat, Math::Complex, Net::Ping, Opcode, Pod::Parser, 9065 Pod::Text, SDBM_File, Sys::Syslog, Tie::RefHash, Tie::SubstrHash 9066 9067 =item Platform-specific improvements 9068 9069 NCR MP-RAS, NonStop-UX 9070 9071 =back 9072 9073 =item Core Enhancements 9074 9075 =over 4 9076 9077 =item Interpreter cloning, threads, and concurrency 9078 9079 =item Lexically scoped warning categories 9080 9081 =item Unicode and UTF-8 support 9082 9083 =item Support for interpolating named characters 9084 9085 =item "our" declarations 9086 9087 =item Support for strings represented as a vector of ordinals 9088 9089 =item Improved Perl version numbering system 9090 9091 =item New syntax for declaring subroutine attributes 9092 9093 =item File and directory handles can be autovivified 9094 9095 =item open() with more than two arguments 9096 9097 =item 64-bit support 9098 9099 =item Large file support 9100 9101 =item Long doubles 9102 9103 =item "more bits" 9104 9105 =item Enhanced support for sort() subroutines 9106 9107 =item C<sort $coderef @foo> allowed 9108 9109 =item File globbing implemented internally 9110 9111 =item Support for CHECK blocks 9112 9113 =item POSIX character class syntax [: :] supported 9114 9115 =item Better pseudo-random number generator 9116 9117 =item Improved C<qw//> operator 9118 9119 =item Better worst-case behavior of hashes 9120 9121 =item pack() format 'Z' supported 9122 9123 =item pack() format modifier '!' supported 9124 9125 =item pack() and unpack() support counted strings 9126 9127 =item Comments in pack() templates 9128 9129 =item Weak references 9130 9131 =item Binary numbers supported 9132 9133 =item Lvalue subroutines 9134 9135 =item Some arrows may be omitted in calls through references 9136 9137 =item Boolean assignment operators are legal lvalues 9138 9139 =item exists() is supported on subroutine names 9140 9141 =item exists() and delete() are supported on array elements 9142 9143 =item Pseudo-hashes work better 9144 9145 =item Automatic flushing of output buffers 9146 9147 =item Better diagnostics on meaningless filehandle operations 9148 9149 =item Where possible, buffered data discarded from duped input filehandle 9150 9151 =item eof() has the same old magic as <> 9152 9153 =item binmode() can be used to set :crlf and :raw modes 9154 9155 =item C<-T> filetest recognizes UTF-8 encoded files as "text" 9156 9157 =item system(), backticks and pipe open now reflect exec() failure 9158 9159 =item Improved diagnostics 9160 9161 =item Diagnostics follow STDERR 9162 9163 =item More consistent close-on-exec behavior 9164 9165 =item syswrite() ease-of-use 9166 9167 =item Better syntax checks on parenthesized unary operators 9168 9169 =item Bit operators support full native integer width 9170 9171 =item Improved security features 9172 9173 =item More functional bareword prototype (*) 9174 9175 =item C<require> and C<do> may be overridden 9176 9177 =item $^X variables may now have names longer than one character 9178 9179 =item New variable $^C reflects C<-c> switch 9180 9181 =item New variable $^V contains Perl version as a string 9182 9183 =item Optional Y2K warnings 9184 9185 =item Arrays now always interpolate into double-quoted strings 9186 9187 =item @- and @+ provide starting/ending offsets of regex submatches 9188 9189 =back 9190 9191 =item Modules and Pragmata 9192 9193 =over 4 9194 9195 =item Modules 9196 9197 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, 9198 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, 9199 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, 9200 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, 9201 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, 9202 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, 9203 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, 9204 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters 9205 9206 =item Pragmata 9207 9208 =back 9209 9210 =item Utility Changes 9211 9212 =over 4 9213 9214 =item dprofpp 9215 9216 =item find2perl 9217 9218 =item h2xs 9219 9220 =item perlcc 9221 9222 =item perldoc 9223 9224 =item The Perl Debugger 9225 9226 =back 9227 9228 =item Improved Documentation 9229 9230 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, 9231 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, 9232 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, 9233 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod 9234 9235 =item Performance enhancements 9236 9237 =over 4 9238 9239 =item Simple sort() using { $a <=> $b } and the like are optimized 9240 9241 =item Optimized assignments to lexical variables 9242 9243 =item Faster subroutine calls 9244 9245 =item delete(), each(), values() and hash iteration are faster 9246 9247 =back 9248 9249 =item Installation and Configuration Improvements 9250 9251 =over 4 9252 9253 =item -Dusethreads means something different 9254 9255 =item New Configure flags 9256 9257 =item Threadedness and 64-bitness now more daring 9258 9259 =item Long Doubles 9260 9261 =item -Dusemorebits 9262 9263 =item -Duselargefiles 9264 9265 =item installusrbinperl 9266 9267 =item SOCKS support 9268 9269 =item C<-A> flag 9270 9271 =item Enhanced Installation Directories 9272 9273 =item gcc automatically tried if 'cc' does not seem to be working 9274 9275 =back 9276 9277 =item Platform specific changes 9278 9279 =over 4 9280 9281 =item Supported platforms 9282 9283 =item DOS 9284 9285 =item OS390 (OpenEdition MVS) 9286 9287 =item VMS 9288 9289 =item Win32 9290 9291 =back 9292 9293 =item Significant bug fixes 9294 9295 =over 4 9296 9297 =item <HANDLE> on empty files 9298 9299 =item C<eval '...'> improvements 9300 9301 =item All compilation errors are true errors 9302 9303 =item Implicitly closed filehandles are safer 9304 9305 =item Behavior of list slices is more consistent 9306 9307 =item C<(\$)> prototype and C<$foo{a}> 9308 9309 =item C<goto &sub> and AUTOLOAD 9310 9311 =item C<-bareword> allowed under C<use integer> 9312 9313 =item Failures in DESTROY() 9314 9315 =item Locale bugs fixed 9316 9317 =item Memory leaks 9318 9319 =item Spurious subroutine stubs after failed subroutine calls 9320 9321 =item Taint failures under C<-U> 9322 9323 =item END blocks and the C<-c> switch 9324 9325 =item Potential to leak DATA filehandles 9326 9327 =back 9328 9329 =item New or Changed Diagnostics 9330 9331 "%s" variable %s masks earlier declaration in same %s, "my sub" not yet 9332 implemented, "our" variable %s redeclared, '!' allowed only after types %s, 9333 / cannot take a count, / must be followed by a, A or Z, / must be followed 9334 by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape 9335 \\%c passed through, /%s/: Unrecognized escape \\%c in character class 9336 passed through, /%s/ should probably be written as "%s", %s() called too 9337 early to check prototype, %s argument is not a HASH or ARRAY element, %s 9338 argument is not a HASH or ARRAY element or slice, %s argument is not a 9339 subroutine name, %s package attribute may clash with future reserved word: 9340 %s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled 9341 substitution pattern, Bad realloc() ignored, Bareword found in conditional, 9342 Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector 9343 size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check 9344 filesystem of script "%s", Can't declare class for non-scalar %s in "%s", 9345 Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default, 9346 Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't 9347 remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't 9348 weaken a nonreference, Character class [:%s:] unknown, Character class 9349 syntax [%s] belongs inside character classes, Constant is not %s reference, 9350 constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated, 9351 defined(%hash) is deprecated, Did not produce a valid header, (Did you mean 9352 "local" instead of "our"?), Document contains no data, entering effective 9353 %s failed, false [] range "%s" in regexp, Filehandle %s opened only for 9354 output, flock() on closed filehandle %s, Global symbol "%s" requires 9355 explicit package name, Hexadecimal number > 0xffffffff non-portable, 9356 Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: 9357 |%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal 9358 number of bits in vec, Integer overflow in %s number, Invalid %s attribute: 9359 %s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid 9360 separator character %s in attribute list, Invalid separator character %s in 9361 subroutine attribute list, leaving effective %s failed, Lvalue subs 9362 returning %s not implemented yet, Method %s not permitted, Missing 9363 %sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub", 9364 No %s specified for -%c, No package name allowed for variable %s in "our", 9365 No space allowed after -%c, no UTC offset information; assuming local time 9366 is UTC, Octal number > 037777777777 non-portable, panic: del_backref, 9367 panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing 9368 around "%s" list, Possible unintended interpolation of %s in string, 9369 Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS" 9370 instead, Premature end of script headers, Repeat count in pack overflows, 9371 Repeat count in unpack overflows, realloc() of freed memory ignored, 9372 Reference is already weak, setpgrp can't take arguments, Strange *+?{} on 9373 zero-length expression, switching effective %s is not implemented, This 9374 Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL 9375 environ elements (%s=%s), Too late to run %s block, Unknown open() mode 9376 '%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized 9377 escape \\%c passed through, Unterminated attribute parameter in attribute 9378 list, Unterminated attribute list, Unterminated attribute parameter in 9379 subroutine attribute list, Unterminated subroutine attribute list, Value of 9380 CLI symbol "%s" too long, Version number must be a constant number 9381 9382 =item New tests 9383 9384 =item Incompatible Changes 9385 9386 =over 4 9387 9388 =item Perl Source Incompatibilities 9389 9390 CHECK is a new keyword, Treatment of list slices of undef has changed, 9391 Format of $English::PERL_VERSION is different, Literals of the form 9392 C<1.2.3> parse differently, Possibly changed pseudo-random number 9393 generator, Hashing function for hash keys has changed, C<undef> fails on 9394 read only values, Close-on-exec bit may be set on pipe and socket handles, 9395 Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), each(), 9396 values() and C<\(%h)>, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, 9397 Text of some diagnostic output has changed, C<%@> has been removed, 9398 Parenthesized not() behaves like a list operator, Semantics of bareword 9399 prototype C<(*)> have changed, Semantics of bit operators may have changed 9400 on 64-bit platforms, More builtins taint their results 9401 9402 =item C Source Incompatibilities 9403 9404 C<PERL_POLLUTE>, C<PERL_IMPLICIT_CONTEXT>, C<PERL_POLLUTE_MALLOC> 9405 9406 =item Compatible C Source API Changes 9407 9408 C<PATCHLEVEL> is now C<PERL_VERSION> 9409 9410 =item Binary Incompatibilities 9411 9412 =back 9413 9414 =item Known Problems 9415 9416 =over 4 9417 9418 =item Localizing a tied hash element may leak memory 9419 9420 =item Known test failures 9421 9422 =item EBCDIC platforms not fully supported 9423 9424 =item UNICOS/mk CC failures during Configure run 9425 9426 =item Arrow operator and arrays 9427 9428 =item Experimental features 9429 9430 Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The 9431 pseudo-hash data type, The Compiler suite, Internal implementation of file 9432 globbing, The DB module, The regular expression code constructs: 9433 9434 =back 9435 9436 =item Obsolete Diagnostics 9437 9438 Character class syntax [: :] is reserved for future extensions, Ill-formed 9439 logical name |%s| in prime_env_iter, In string, @%s now must be written as 9440 \@%s, Probable precedence problem on %s, regexp too big, Use of "$$<digit>" 9441 to mean "${$}<digit>" is deprecated 9442 9443 =item Reporting Bugs 9444 9445 =item SEE ALSO 9446 9447 =item HISTORY 9448 9449 =back 9450 9451 =head2 perl56delta - what's new for perl v5.6.0 9452 9453 =over 4 9454 9455 =item DESCRIPTION 9456 9457 =item Core Enhancements 9458 9459 =over 4 9460 9461 =item Interpreter cloning, threads, and concurrency 9462 9463 =item Lexically scoped warning categories 9464 9465 =item Unicode and UTF-8 support 9466 9467 =item Support for interpolating named characters 9468 9469 =item "our" declarations 9470 9471 =item Support for strings represented as a vector of ordinals 9472 9473 =item Improved Perl version numbering system 9474 9475 =item New syntax for declaring subroutine attributes 9476 9477 =item File and directory handles can be autovivified 9478 9479 =item open() with more than two arguments 9480 9481 =item 64-bit support 9482 9483 =item Large file support 9484 9485 =item Long doubles 9486 9487 =item "more bits" 9488 9489 =item Enhanced support for sort() subroutines 9490 9491 =item C<sort $coderef @foo> allowed 9492 9493 =item File globbing implemented internally 9494 9495 =item Support for CHECK blocks 9496 9497 =item POSIX character class syntax [: :] supported 9498 9499 =item Better pseudo-random number generator 9500 9501 =item Improved C<qw//> operator 9502 9503 =item Better worst-case behavior of hashes 9504 9505 =item pack() format 'Z' supported 9506 9507 =item pack() format modifier '!' supported 9508 9509 =item pack() and unpack() support counted strings 9510 9511 =item Comments in pack() templates 9512 9513 =item Weak references 9514 9515 =item Binary numbers supported 9516 9517 =item Lvalue subroutines 9518 9519 =item Some arrows may be omitted in calls through references 9520 9521 =item Boolean assignment operators are legal lvalues 9522 9523 =item exists() is supported on subroutine names 9524 9525 =item exists() and delete() are supported on array elements 9526 9527 =item Pseudo-hashes work better 9528 9529 =item Automatic flushing of output buffers 9530 9531 =item Better diagnostics on meaningless filehandle operations 9532 9533 =item Where possible, buffered data discarded from duped input filehandle 9534 9535 =item eof() has the same old magic as <> 9536 9537 =item binmode() can be used to set :crlf and :raw modes 9538 9539 =item C<-T> filetest recognizes UTF-8 encoded files as "text" 9540 9541 =item system(), backticks and pipe open now reflect exec() failure 9542 9543 =item Improved diagnostics 9544 9545 =item Diagnostics follow STDERR 9546 9547 =item More consistent close-on-exec behavior 9548 9549 =item syswrite() ease-of-use 9550 9551 =item Better syntax checks on parenthesized unary operators 9552 9553 =item Bit operators support full native integer width 9554 9555 =item Improved security features 9556 9557 =item More functional bareword prototype (*) 9558 9559 =item C<require> and C<do> may be overridden 9560 9561 =item $^X variables may now have names longer than one character 9562 9563 =item New variable $^C reflects C<-c> switch 9564 9565 =item New variable $^V contains Perl version as a string 9566 9567 =item Optional Y2K warnings 9568 9569 =item Arrays now always interpolate into double-quoted strings 9570 9571 =item @- and @+ provide starting/ending offsets of regex matches 9572 9573 =back 9574 9575 =item Modules and Pragmata 9576 9577 =over 4 9578 9579 =item Modules 9580 9581 attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, 9582 DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, 9583 Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, 9584 File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, 9585 Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, 9586 podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, 9587 pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, 9588 Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters 9589 9590 =item Pragmata 9591 9592 =back 9593 9594 =item Utility Changes 9595 9596 =over 4 9597 9598 =item dprofpp 9599 9600 =item find2perl 9601 9602 =item h2xs 9603 9604 =item perlcc 9605 9606 =item perldoc 9607 9608 =item The Perl Debugger 9609 9610 =back 9611 9612 =item Improved Documentation 9613 9614 perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, 9615 perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, 9616 perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, 9617 perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod 9618 9619 =item Performance enhancements 9620 9621 =over 4 9622 9623 =item Simple sort() using { $a <=> $b } and the like are optimized 9624 9625 =item Optimized assignments to lexical variables 9626 9627 =item Faster subroutine calls 9628 9629 =item delete(), each(), values() and hash iteration are faster 9630 9631 =back 9632 9633 =item Installation and Configuration Improvements 9634 9635 =over 4 9636 9637 =item -Dusethreads means something different 9638 9639 =item New Configure flags 9640 9641 =item Threadedness and 64-bitness now more daring 9642 9643 =item Long Doubles 9644 9645 =item -Dusemorebits 9646 9647 =item -Duselargefiles 9648 9649 =item installusrbinperl 9650 9651 =item SOCKS support 9652 9653 =item C<-A> flag 9654 9655 =item Enhanced Installation Directories 9656 9657 =back 9658 9659 =item Platform specific changes 9660 9661 =over 4 9662 9663 =item Supported platforms 9664 9665 =item DOS 9666 9667 =item OS390 (OpenEdition MVS) 9668 9669 =item VMS 9670 9671 =item Win32 9672 9673 =back 9674 9675 =item Significant bug fixes 9676 9677 =over 4 9678 9679 =item <HANDLE> on empty files 9680 9681 =item C<eval '...'> improvements 9682 9683 =item All compilation errors are true errors 9684 9685 =item Implicitly closed filehandles are safer 9686 9687 =item Behavior of list slices is more consistent 9688 9689 =item C<(\$)> prototype and C<$foo{a}> 9690 9691 =item C<goto &sub> and AUTOLOAD 9692 9693 =item C<-bareword> allowed under C<use integer> 9694 9695 =item Failures in DESTROY() 9696 9697 =item Locale bugs fixed 9698 9699 =item Memory leaks 9700 9701 =item Spurious subroutine stubs after failed subroutine calls 9702 9703 =item Taint failures under C<-U> 9704 9705 =item END blocks and the C<-c> switch 9706 9707 =item Potential to leak DATA filehandles 9708 9709 =back 9710 9711 =item New or Changed Diagnostics 9712 9713 "%s" variable %s masks earlier declaration in same %s, "my sub" not yet 9714 implemented, "our" variable %s redeclared, '!' allowed only after types %s, 9715 / cannot take a count, / must be followed by a, A or Z, / must be followed 9716 by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape 9717 \\%c passed through, /%s/: Unrecognized escape \\%c in character class 9718 passed through, /%s/ should probably be written as "%s", %s() called too 9719 early to check prototype, %s argument is not a HASH or ARRAY element, %s 9720 argument is not a HASH or ARRAY element or slice, %s argument is not a 9721 subroutine name, %s package attribute may clash with future reserved word: 9722 %s, (in cleanup) %s, <> should be quotes, Attempt to join self, Bad evalled 9723 substitution pattern, Bad realloc() ignored, Bareword found in conditional, 9724 Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector 9725 size > 32 non-portable, Buffer overflow in prime_env_iter: %s, Can't check 9726 filesystem of script "%s", Can't declare class for non-scalar %s in "%s", 9727 Can't declare %s in "%s", Can't ignore signal CHLD, forcing to default, 9728 Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't 9729 remove %s: %s, skipping file, Can't return %s from lvalue subroutine, Can't 9730 weaken a nonreference, Character class [:%s:] unknown, Character class 9731 syntax [%s] belongs inside character classes, Constant is not %s reference, 9732 constant(%s): %s, CORE::%s is not a keyword, defined(@array) is deprecated, 9733 defined(%hash) is deprecated, Did not produce a valid header, (Did you mean 9734 "local" instead of "our"?), Document contains no data, entering effective 9735 %s failed, false [] range "%s" in regexp, Filehandle %s opened only for 9736 output, flock() on closed filehandle %s, Global symbol "%s" requires 9737 explicit package name, Hexadecimal number > 0xffffffff non-portable, 9738 Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: 9739 |%s|, Illegal binary digit %s, Illegal binary digit %s ignored, Illegal 9740 number of bits in vec, Integer overflow in %s number, Invalid %s attribute: 9741 %s, Invalid %s attributes: %s, invalid [] range "%s" in regexp, Invalid 9742 separator character %s in attribute list, Invalid separator character %s in 9743 subroutine attribute list, leaving effective %s failed, Lvalue subs 9744 returning %s not implemented yet, Method %s not permitted, Missing 9745 %sbrace%s on \N{}, Missing command in piped open, Missing name in "my sub", 9746 No %s specified for -%c, No package name allowed for variable %s in "our", 9747 No space allowed after -%c, no UTC offset information; assuming local time 9748 is UTC, Octal number > 037777777777 non-portable, panic: del_backref, 9749 panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing 9750 around "%s" list, Possible unintended interpolation of %s in string, 9751 Possible Y2K bug: %s, pragma "attrs" is deprecated, use "sub NAME : ATTRS" 9752 instead, Premature end of script headers, Repeat count in pack overflows, 9753 Repeat count in unpack overflows, realloc() of freed memory ignored, 9754 Reference is already weak, setpgrp can't take arguments, Strange *+?{} on 9755 zero-length expression, switching effective %s is not implemented, This 9756 Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL 9757 environ elements (%s=%s), Too late to run %s block, Unknown open() mode 9758 '%s', Unknown process %x sent message to prime_env_iter: %s, Unrecognized 9759 escape \\%c passed through, Unterminated attribute parameter in attribute 9760 list, Unterminated attribute list, Unterminated attribute parameter in 9761 subroutine attribute list, Unterminated subroutine attribute list, Value of 9762 CLI symbol "%s" too long, Version number must be a constant number 9763 9764 =item New tests 9765 9766 =item Incompatible Changes 9767 9768 =over 4 9769 9770 =item Perl Source Incompatibilities 9771 9772 CHECK is a new keyword, Treatment of list slices of undef has changed, 9773 Format of $English::PERL_VERSION is different, Literals of the form 9774 C<1.2.3> parse differently, Possibly changed pseudo-random number 9775 generator, Hashing function for hash keys has changed, C<undef> fails on 9776 read only values, Close-on-exec bit may be set on pipe and socket handles, 9777 Writing C<"$$1"> to mean C<"${$}1"> is unsupported, delete(), each(), 9778 values() and C<\(%h)>, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, 9779 Text of some diagnostic output has changed, C<%@> has been removed, 9780 Parenthesized not() behaves like a list operator, Semantics of bareword 9781 prototype C<(*)> have changed, Semantics of bit operators may have changed 9782 on 64-bit platforms, More builtins taint their results 9783 9784 =item C Source Incompatibilities 9785 9786 C<PERL_POLLUTE>, C<PERL_IMPLICIT_CONTEXT>, C<PERL_POLLUTE_MALLOC> 9787 9788 =item Compatible C Source API Changes 9789 9790 C<PATCHLEVEL> is now C<PERL_VERSION> 9791 9792 =item Binary Incompatibilities 9793 9794 =back 9795 9796 =item Known Problems 9797 9798 =over 4 9799 9800 =item Thread test failures 9801 9802 =item EBCDIC platforms not supported 9803 9804 =item In 64-bit HP-UX the lib/io_multihomed test may hang 9805 9806 =item NEXTSTEP 3.3 POSIX test failure 9807 9808 =item Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with 9809 gcc 9810 9811 =item UNICOS/mk CC failures during Configure run 9812 9813 =item Arrow operator and arrays 9814 9815 =item Experimental features 9816 9817 Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The 9818 pseudo-hash data type, The Compiler suite, Internal implementation of file 9819 globbing, The DB module, The regular expression code constructs: 9820 9821 =back 9822 9823 =item Obsolete Diagnostics 9824 9825 Character class syntax [: :] is reserved for future extensions, Ill-formed 9826 logical name |%s| in prime_env_iter, In string, @%s now must be written as 9827 \@%s, Probable precedence problem on %s, regexp too big, Use of "$$<digit>" 9828 to mean "${$}<digit>" is deprecated 9829 9830 =item Reporting Bugs 9831 9832 =item SEE ALSO 9833 9834 =item HISTORY 9835 9836 =back 9837 9838 =head2 perl5005delta - what's new for perl5.005 9839 9840 =over 4 9841 9842 =item DESCRIPTION 9843 9844 =item About the new versioning system 9845 9846 =item Incompatible Changes 9847 9848 =over 4 9849 9850 =item WARNING: This version is not binary compatible with Perl 5.004. 9851 9852 =item Default installation structure has changed 9853 9854 =item Perl Source Compatibility 9855 9856 =item C Source Compatibility 9857 9858 =item Binary Compatibility 9859 9860 =item Security fixes may affect compatibility 9861 9862 =item Relaxed new mandatory warnings introduced in 5.004 9863 9864 =item Licensing 9865 9866 =back 9867 9868 =item Core Changes 9869 9870 =over 4 9871 9872 =item Threads 9873 9874 =item Compiler 9875 9876 =item Regular Expressions 9877 9878 Many new and improved optimizations, Many bug fixes, New regular expression 9879 constructs, New operator for precompiled regular expressions, Other 9880 improvements, Incompatible changes 9881 9882 =item Improved malloc() 9883 9884 =item Quicksort is internally implemented 9885 9886 =item Reliable signals 9887 9888 =item Reliable stack pointers 9889 9890 =item More generous treatment of carriage returns 9891 9892 =item Memory leaks 9893 9894 =item Better support for multiple interpreters 9895 9896 =item Behavior of local() on array and hash elements is now well-defined 9897 9898 =item C<%!> is transparently tied to the L<Errno> module 9899 9900 =item Pseudo-hashes are supported 9901 9902 =item C<EXPR foreach EXPR> is supported 9903 9904 =item Keywords can be globally overridden 9905 9906 =item C<$^E> is meaningful on Win32 9907 9908 =item C<foreach (1..1000000)> optimized 9909 9910 =item C<Foo::> can be used as implicitly quoted package name 9911 9912 =item C<exists $Foo::{Bar::}> tests existence of a package 9913 9914 =item Better locale support 9915 9916 =item Experimental support for 64-bit platforms 9917 9918 =item prototype() returns useful results on builtins 9919 9920 =item Extended support for exception handling 9921 9922 =item Re-blessing in DESTROY() supported for chaining DESTROY() methods 9923 9924 =item All C<printf> format conversions are handled internally 9925 9926 =item New C<INIT> keyword 9927 9928 =item New C<lock> keyword 9929 9930 =item New C<qr//> operator 9931 9932 =item C<our> is now a reserved word 9933 9934 =item Tied arrays are now fully supported 9935 9936 =item Tied handles support is better 9937 9938 =item 4th argument to substr 9939 9940 =item Negative LENGTH argument to splice 9941 9942 =item Magic lvalues are now more magical 9943 9944 =item <> now reads in records 9945 9946 =back 9947 9948 =item Supported Platforms 9949 9950 =over 4 9951 9952 =item New Platforms 9953 9954 =item Changes in existing support 9955 9956 =back 9957 9958 =item Modules and Pragmata 9959 9960 =over 4 9961 9962 =item New Modules 9963 9964 B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, 9965 ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, 9966 Thread, attrs, fields, re 9967 9968 =item Changes in existing modules 9969 9970 Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File, 9971 MakeMaker, CPAN, Cwd 9972 9973 =back 9974 9975 =item Utility Changes 9976 9977 =item Documentation Changes 9978 9979 =item New Diagnostics 9980 9981 Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index 9982 while coercing array into hash, Bareword "%s" refers to nonexistent 9983 package, Can't call method "%s" on an undefined value, Can't check 9984 filesystem of script "%s" for nosuid, Can't coerce array into hash, Can't 9985 goto subroutine from an eval-string, Can't localize pseudo-hash element, 9986 Can't use %%! because Errno.pm is not available, Cannot find an opnumber 9987 for "%s", Character class syntax [. .] is reserved for future extensions, 9988 Character class syntax [: :] is reserved for future extensions, Character 9989 class syntax [= =] is reserved for future extensions, %s: Eval-group in 9990 insecure regular expression, %s: Eval-group not allowed, use re 'eval', %s: 9991 Eval-group not allowed at run time, Explicit blessing to '' (assuming 9992 package main), Illegal hex digit ignored, No such array field, No such 9993 field "%s" in variable %s of type %s, Out of memory during ridiculously 9994 large request, Range iterator outside integer range, Recursive inheritance 9995 detected while looking for method '%s' %s, Reference found where even-sized 9996 list expected, Undefined value assigned to typeglob, Use of reserved word 9997 "%s" is deprecated, perl: warning: Setting locale failed 9998 9999 =item Obsolete Diagnostics 10000 10001 Can't mktemp(), Can't write to temp file for B<-e>: %s, Cannot open 10002 temporary file, regexp too big 10003 10004 =item Configuration Changes 10005 10006 =item BUGS 10007 10008 =item SEE ALSO 10009 10010 =item HISTORY 10011 10012 =back 10013 10014 =head2 perl5004delta - what's new for perl5.004 10015 10016 =over 4 10017 10018 =item DESCRIPTION 10019 10020 =item Supported Environments 10021 10022 =item Core Changes 10023 10024 =over 4 10025 10026 =item List assignment to %ENV works 10027 10028 =item Change to "Can't locate Foo.pm in @INC" error 10029 10030 =item Compilation option: Binary compatibility with 5.003 10031 10032 =item $PERL5OPT environment variable 10033 10034 =item Limitations on B<-M>, B<-m>, and B<-T> options 10035 10036 =item More precise warnings 10037 10038 =item Deprecated: Inherited C<AUTOLOAD> for non-methods 10039 10040 =item Previously deprecated %OVERLOAD is no longer usable 10041 10042 =item Subroutine arguments created only when they're modified 10043 10044 =item Group vector changeable with C<$)> 10045 10046 =item Fixed parsing of $$<digit>, &$<digit>, etc. 10047 10048 =item Fixed localization of $<digit>, $&, etc. 10049 10050 =item No resetting of $. on implicit close 10051 10052 =item C<wantarray> may return undef 10053 10054 =item C<eval EXPR> determines value of EXPR in scalar context 10055 10056 =item Changes to tainting checks 10057 10058 No glob() or <*>, No spawning if tainted $CDPATH, $ENV, $BASH_ENV, No 10059 spawning if tainted $TERM doesn't look like a terminal name 10060 10061 =item New Opcode module and revised Safe module 10062 10063 =item Embedding improvements 10064 10065 =item Internal change: FileHandle class based on IO::* classes 10066 10067 =item Internal change: PerlIO abstraction interface 10068 10069 =item New and changed syntax 10070 10071 $coderef->(PARAMS) 10072 10073 =item New and changed builtin constants 10074 10075 __PACKAGE__ 10076 10077 =item New and changed builtin variables 10078 10079 $^E, $^H, $^M 10080 10081 =item New and changed builtin functions 10082 10083 delete on slices, flock, printf and sprintf, keys as an lvalue, my() in 10084 Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module 10085 VERSION LIST, prototype(FUNCTION), srand, $_ as Default, C<m//gc> does not 10086 reset search position on failure, C<m//x> ignores whitespace before ?*+{}, 10087 nested C<sub{}> closures work now, formats work right on changing lexicals 10088 10089 =item New builtin methods 10090 10091 isa(CLASS), can(METHOD), VERSION( [NEED] ) 10092 10093 =item TIEHANDLE now supported 10094 10095 TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this 10096 LIST, READLINE this, GETC this, DESTROY this 10097 10098 =item Malloc enhancements 10099 10100 -DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE 10101 10102 =item Miscellaneous efficiency enhancements 10103 10104 =back 10105 10106 =item Support for More Operating Systems 10107 10108 =over 4 10109 10110 =item Win32 10111 10112 =item Plan 9 10113 10114 =item QNX 10115 10116 =item AmigaOS 10117 10118 =back 10119 10120 =item Pragmata 10121 10122 use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use 10123 constant NAME => VALUE, use locale, use ops, use vmsish 10124 10125 =item Modules 10126 10127 =over 4 10128 10129 =item Required Updates 10130 10131 =item Installation directories 10132 10133 =item Module information summary 10134 10135 =item Fcntl 10136 10137 =item IO 10138 10139 =item Math::Complex 10140 10141 =item Math::Trig 10142 10143 =item DB_File 10144 10145 =item Net::Ping 10146 10147 =item Object-oriented overrides for builtin operators 10148 10149 =back 10150 10151 =item Utility Changes 10152 10153 =over 4 10154 10155 =item pod2html 10156 10157 Sends converted HTML to standard output 10158 10159 =item xsubpp 10160 10161 C<void> XSUBs now default to returning nothing 10162 10163 =back 10164 10165 =item C Language API Changes 10166 10167 C<gv_fetchmethod> and C<perl_call_sv>, C<perl_eval_pv>, Extended API for 10168 manipulating hashes 10169 10170 =item Documentation Changes 10171 10172 L<perldelta>, L<perlfaq>, L<perllocale>, L<perltoot>, L<perlapio>, 10173 L<perlmodlib>, L<perldebug>, L<perlsec> 10174 10175 =item New Diagnostics 10176 10177 "my" variable %s masks earlier declaration in same scope, %s argument is 10178 not a HASH element or slice, Allocation too large: %lx, Allocation too 10179 large, Applying %s to %s will act on scalar(%s), Attempt to free 10180 nonexistent shared string, Attempt to use reference as lvalue in substr, 10181 Bareword "%s" refers to nonexistent package, Can't redefine active sort 10182 subroutine %s, Can't use bareword ("%s") as %s ref while "strict refs" in 10183 use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant 10184 subroutine %s redefined, Constant subroutine %s undefined, Copy method did 10185 not return a reference, Died, Exiting pseudo-block via %s, Identifier too 10186 long, Illegal character %s (carriage return), Illegal switch in PERL5OPT: 10187 %s, Integer overflow in hex number, Integer overflow in octal number, 10188 internal error: glob failed, Invalid conversion in %s: "%s", Invalid type 10189 in pack: '%s', Invalid type in unpack: '%s', Name "%s::%s" used only once: 10190 possible typo, Null picture in formline, Offset outside string, Out of 10191 memory!, Out of memory during request for %s, panic: frexp, Possible 10192 attempt to put comments in qw() list, Possible attempt to separate words 10193 with commas, Scalar value @%s{%s} better written as $%s{%s}, Stub found 10194 while resolving method `%s' overloading `%s' in %s, Too late for "B<-T>" 10195 option, untie attempted while %d inner references still exist, Unrecognized 10196 character %s, Unsupported function fork, Use of "$$<digit>" to mean 10197 "${$}<digit>" is deprecated, Value of %s can be "0"; test with defined(), 10198 Variable "%s" may be unavailable, Variable "%s" will not stay shared, 10199 Warning: something's wrong, Ill-formed logical name |%s| in prime_env_iter, 10200 Got an error from DosAllocMem, Malformed PERLLIB_PREFIX, PERL_SH_DIR too 10201 long, Process terminated by SIG%s 10202 10203 =item BUGS 10204 10205 =item SEE ALSO 10206 10207 =item HISTORY 10208 10209 =back 10210 10211 =head2 perlartistic - the Perl Artistic License 10212 10213 =over 4 10214 10215 =item SYNOPSIS 10216 10217 =item DESCRIPTION 10218 10219 =item The "Artistic License" 10220 10221 =over 4 10222 10223 =item Preamble 10224 10225 =item Definitions 10226 10227 "Package", "Standard Version", "Copyright Holder", "You", "Reasonable 10228 copying fee", "Freely Available" 10229 10230 =item Conditions 10231 10232 a), b), c), d), a), b), c), d) 10233 10234 =back 10235 10236 =back 10237 10238 =head2 perlgpl - the GNU General Public License, version 2 10239 10240 =over 4 10241 10242 =item SYNOPSIS 10243 10244 =back 10245 10246 =over 4 10247 10248 =item DESCRIPTION 10249 10250 =item GNU GENERAL PUBLIC LICENSE 10251 10252 =back 10253 10254 =head2 perlaix, README.aix - Perl version 5 on IBM Unix (AIX) systems 10255 10256 =over 4 10257 10258 =item DESCRIPTION 10259 10260 =over 4 10261 10262 =item Compiling Perl 5 on AIX 10263 10264 =item OS level 10265 10266 =item Building Dynamic Extensions on AIX 10267 10268 =item The IBM ANSI C Compiler 10269 10270 =item The usenm option 10271 10272 =item Using GNU's gcc for building perl 10273 10274 =item Using Large Files with Perl 10275 10276 =item Threaded Perl 10277 10278 =item 64-bit Perl 10279 10280 =item AIX 4.2 and extensions using C++ with statics 10281 10282 =back 10283 10284 =item AUTHOR 10285 10286 =item DATE 10287 10288 =back 10289 10290 =head2 perlamiga - Perl under Amiga OS 10291 10292 =over 4 10293 10294 =item NOTE 10295 10296 =item SYNOPSIS 10297 10298 =back 10299 10300 =over 4 10301 10302 =item DESCRIPTION 10303 10304 =over 4 10305 10306 =item Prerequisites for Compiling Perl on AmigaOS 10307 10308 B<Unix emulation for AmigaOS: ixemul.library>, B<Version of Amiga OS> 10309 10310 =item Starting Perl programs under AmigaOS 10311 10312 =item Shortcomings of Perl under AmigaOS 10313 10314 =back 10315 10316 =item INSTALLATION 10317 10318 =item Accessing documentation 10319 10320 =over 4 10321 10322 =item Manpages for Perl on AmigaOS 10323 10324 =item Perl HTML Documentation on AmigaOS 10325 10326 =item Perl GNU Info Files on AmigaOS 10327 10328 =item Perl LaTeX Documentation on AmigaOS 10329 10330 =back 10331 10332 =item BUILDING PERL ON AMIGAOS 10333 10334 =over 4 10335 10336 =item Build Prerequisites for Perl on AmigaOS 10337 10338 =item Getting the Perl Source for AmigaOS 10339 10340 =item Making Perl on AmigaOS 10341 10342 =item Testing Perl on AmigaOS 10343 10344 =item Installing the built Perl on AmigaOS 10345 10346 =back 10347 10348 =item PERL 5.8.0 BROKEN IN AMIGAOS 10349 10350 =item AUTHORS 10351 10352 =item SEE ALSO 10353 10354 =back 10355 10356 =head2 perlapollo, README.apollo - Perl version 5 on Apollo DomainOS 10357 10358 =over 4 10359 10360 =item DESCRIPTION 10361 10362 =item AUTHOR 10363 10364 =back 10365 10366 =head2 perlbeos, README.beos - Perl version 5.8+ on BeOS 10367 10368 =over 4 10369 10370 =item DESCRIPTION 10371 10372 =item BUILD AND INSTALL 10373 10374 =over 4 10375 10376 =item Requirements 10377 10378 =item Configure 10379 10380 =item Build 10381 10382 =item Install 10383 10384 =back 10385 10386 =item KNOWN PROBLEMS 10387 10388 =item CONTACT 10389 10390 =back 10391 10392 =head2 perlbs2000, README.BS2000 - building and installing Perl for BS2000. 10393 10394 =over 4 10395 10396 =item SYNOPSIS 10397 10398 =item DESCRIPTION 10399 10400 =over 4 10401 10402 =item gzip on BS2000 10403 10404 =item bison on BS2000 10405 10406 =item Unpacking Perl Distribution on BS2000 10407 10408 =item Compiling Perl on BS2000 10409 10410 =item Testing Perl on BS2000 10411 10412 =item Installing Perl on BS2000 10413 10414 =item Using Perl in the Posix-Shell of BS2000 10415 10416 =item Using Perl in "native" BS2000 10417 10418 =item Floating point anomalies on BS2000 10419 10420 =item Using PerlIO and different encodings on ASCII and EBCDIC partitions 10421 10422 =back 10423 10424 =item AUTHORS 10425 10426 =item SEE ALSO 10427 10428 =over 4 10429 10430 =item Mailing list 10431 10432 =back 10433 10434 =item HISTORY 10435 10436 =back 10437 10438 =head2 perlce - Perl for WinCE 10439 10440 =over 4 10441 10442 =item Building Perl for WinCE 10443 10444 =over 4 10445 10446 =item DESCRIPTION 10447 10448 =item General explanations on cross-compiling WinCE 10449 10450 =item BUILD 10451 10452 Microsoft Embedded Visual Tools, Microsoft Visual C++, Rainer Keuchel's 10453 celib-sources, Rainer Keuchel's console-sources, go to C<./win32> 10454 subdirectory, edit file C<./win32/ce-helpers/compile.bat>, run 10455 compile.bat, run compile.bat dist 10456 10457 =back 10458 10459 =item Using Perl on WinCE 10460 10461 =over 4 10462 10463 =item DESCRIPTION 10464 10465 =item LIMITATIONS 10466 10467 =item ENVIRONMENT 10468 10469 PERL5LIB, PATH, TMP, UNIXROOTPATH, ROWS/COLS, HOME, CONSOLEFONTSIZE 10470 10471 =item REGISTRY 10472 10473 =item XS 10474 10475 =item BUGS 10476 10477 =item INSTALLATION 10478 10479 =back 10480 10481 =item ACKNOWLEDGEMENTS 10482 10483 =item History of WinCE port 10484 10485 =item AUTHORS 10486 10487 Rainer Keuchel <coyxc@rainer-keuchel.de>, Vadim Konovalov 10488 10489 =back 10490 10491 =head2 perlcygwin, README.cygwin - Perl for Cygwin 10492 10493 =over 4 10494 10495 =item SYNOPSIS 10496 10497 =item PREREQUISITES FOR COMPILING PERL ON CYGWIN 10498 10499 =over 4 10500 10501 =item Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it) 10502 10503 =item Cygwin Configuration 10504 10505 C<PATH>, I<nroff>, Permissions 10506 10507 =back 10508 10509 =item CONFIGURE PERL ON CYGWIN 10510 10511 =over 4 10512 10513 =item Stripping Perl Binaries on Cygwin 10514 10515 =item Optional Libraries for Perl on Cygwin 10516 10517 C<-lcrypt>, C<-lgdbm_compat> (C<use GDBM_File>), C<-ldb> (C<use DB_File>), 10518 C<cygserver> (C<use IPC::SysV>), C<-lutil> 10519 10520 =item Configure-time Options for Perl on Cygwin 10521 10522 C<-Uusedl>, C<-Uusemymalloc>, C<-Uuseperlio>, C<-Dusemultiplicity>, 10523 C<-Duse64bitint>, C<-Duselongdouble>, C<-Dusethreads>, C<-Duselargefiles>, 10524 C<-Dmksymlinks> 10525 10526 =item Suspicious Warnings on Cygwin 10527 10528 Win9x and C<d_eofnblk>, Compiler/Preprocessor defines 10529 10530 =back 10531 10532 =item MAKE ON CYGWIN 10533 10534 =item TEST ON CYGWIN 10535 10536 =over 4 10537 10538 =item File Permissions on Cygwin 10539 10540 =item NDBM_File and ODBM_File do not work on FAT filesystems 10541 10542 =item C<fork()> failures in io_* tests 10543 10544 =back 10545 10546 =item Specific features of the Cygwin port 10547 10548 =over 4 10549 10550 =item Script Portability on Cygwin 10551 10552 Pathnames, Text/Binary, PerlIO, F<.exe>, Cygwin vs. Windows process ids, 10553 Cygwin vs. Windows errors, C<chown()>, Miscellaneous 10554 10555 =item Prebuilt methods: 10556 10557 C<Cwd::cwd>, C<Cygwin::pid_to_winpid>, C<Cygwin::winpid_to_pid>, 10558 C<Cygwin::win_to_posix_path>, C<Cygwin::posix_to_win_path>, 10559 C<Cygwin::mount_table()>, C<Cygwin::mount_flags>, C<Cygwin::is_binmount> 10560 10561 =back 10562 10563 =item INSTALL PERL ON CYGWIN 10564 10565 =item MANIFEST ON CYGWIN 10566 10567 Documentation, Build, Configure, Make, Install, Tests, Compiled Perl 10568 Source, Compiled Module Source, Perl Modules/Scripts, Perl Module Tests 10569 10570 =item BUGS ON CYGWIN 10571 10572 =item AUTHORS 10573 10574 =item HISTORY 10575 10576 =back 10577 10578 =head2 perldgux - Perl under DG/UX. 10579 10580 =over 4 10581 10582 =item SYNOPSIS 10583 10584 =back 10585 10586 =over 4 10587 10588 =item DESCRIPTION 10589 10590 =item BUILDING PERL ON DG/UX 10591 10592 =over 4 10593 10594 =item Non-threaded Perl on DG/UX 10595 10596 =item Threaded Perl on DG/UX 10597 10598 =item Testing Perl on DG/UX 10599 10600 =item Installing the built perl on DG/UX 10601 10602 =back 10603 10604 =item AUTHOR 10605 10606 =item SEE ALSO 10607 10608 =back 10609 10610 =head2 perldos - Perl under DOS, W31, W95. 10611 10612 =over 4 10613 10614 =item SYNOPSIS 10615 10616 =item DESCRIPTION 10617 10618 =over 4 10619 10620 =item Prerequisites for Compiling Perl on DOS 10621 10622 DJGPP, Pthreads 10623 10624 =item Shortcomings of Perl under DOS 10625 10626 =item Building Perl on DOS 10627 10628 =item Testing Perl on DOS 10629 10630 =item Installation of Perl on DOS 10631 10632 =back 10633 10634 =item BUILDING AND INSTALLING MODULES ON DOS 10635 10636 =over 4 10637 10638 =item Building Prerequisites for Perl on DOS 10639 10640 =item Unpacking CPAN Modules on DOS 10641 10642 =item Building Non-XS Modules on DOS 10643 10644 =item Building XS Modules on DOS 10645 10646 =back 10647 10648 =item AUTHOR 10649 10650 =item SEE ALSO 10651 10652 =back 10653 10654 =head2 perlepoc, README.epoc - Perl for EPOC 10655 10656 =over 4 10657 10658 =item SYNOPSIS 10659 10660 =item INTRODUCTION 10661 10662 =item INSTALLING PERL ON EPOC 10663 10664 =item STARTING PERL ON EPOC 10665 10666 =over 4 10667 10668 =item Editors on Epoc 10669 10670 =item Features of Perl on Epoc 10671 10672 =item Restrictions of Perl on Epoc 10673 10674 =item Compiling Perl 5 on the EPOC cross compiling environment 10675 10676 =back 10677 10678 =item SUPPORT STATUS OF PERL ON EPOC 10679 10680 =item AUTHOR 10681 10682 =item LAST UPDATE 10683 10684 =back 10685 10686 =head2 perlfreebsd, README.freebsd - Perl version 5 on FreeBSD systems 10687 10688 =over 4 10689 10690 =item DESCRIPTION 10691 10692 =over 4 10693 10694 =item FreeBSD core dumps from readdir_r with ithreads 10695 10696 =item $^X doesn't always contain a full path in FreeBSD 10697 10698 =item Perl will no longer be part of "base FreeBSD" 10699 10700 =back 10701 10702 =item AUTHOR 10703 10704 =back 10705 10706 =head2 perlhpux, README.hpux - Perl version 5 on Hewlett-Packard Unix 10707 (HP-UX) systems 10708 10709 =over 4 10710 10711 =item DESCRIPTION 10712 10713 =over 4 10714 10715 =item Using perl as shipped with HP-UX 10716 10717 =item Using perl from HP's porting centre 10718 10719 =item Compiling Perl 5 on HP-UX 10720 10721 =item PA-RISC 10722 10723 =item Portability Between PA-RISC Versions 10724 10725 =item PA-RISC 1.0 10726 10727 =item PA-RISC 1.1 10728 10729 =item PA-RISC 2.0 10730 10731 =item Itanium Processor Family (IPF) and HP-UX 10732 10733 =item Itanium, Itanium 2 & Madison 6 10734 10735 =item Building Dynamic Extensions on HP-UX 10736 10737 =item The HP ANSI C Compiler 10738 10739 =item The GNU C Compiler 10740 10741 =item Using Large Files with Perl on HP-UX 10742 10743 =item Threaded Perl on HP-UX 10744 10745 =item 64-bit Perl on HP-UX 10746 10747 =item Oracle on HP-UX 10748 10749 =item GDBM and Threads on HP-UX 10750 10751 =item NFS filesystems and utime(2) on HP-UX 10752 10753 =item perl -P and // and HP-UX 10754 10755 =item HP-UX Kernel Parameters (maxdsiz) for Compiling Perl 10756 10757 =back 10758 10759 =item nss_delete core dump from op/pwent or op/grent 10760 10761 =item Miscellaneous 10762 10763 =item AUTHOR 10764 10765 =item DATE 10766 10767 =back 10768 10769 =head2 perlhurd, README.hurd - Perl version 5 on Hurd 10770 10771 =over 4 10772 10773 =item DESCRIPTION 10774 10775 =over 4 10776 10777 =item Known Problems with Perl on Hurd 10778 10779 =back 10780 10781 =item AUTHOR 10782 10783 =back 10784 10785 =head2 perlirix, README.irix - Perl version 5 on Irix systems 10786 10787 =over 4 10788 10789 =item DESCRIPTION 10790 10791 =over 4 10792 10793 =item Building 32-bit Perl in Irix 10794 10795 =item Building 64-bit Perl in Irix 10796 10797 =item About Compiler Versions of Irix 10798 10799 =item Linker Problems in Irix 10800 10801 =item Malloc in Irix 10802 10803 =item Building with threads in Irix 10804 10805 =item Irix 5.3 10806 10807 =back 10808 10809 =item AUTHOR 10810 10811 =back 10812 10813 =head2 perllinux, README.linux - Perl version 5 on Linux systems 10814 10815 =over 4 10816 10817 =item DESCRIPTION 10818 10819 =over 4 10820 10821 =item Experimental Support for Sun Studio Compilers for Linux OS 10822 10823 =back 10824 10825 =item AUTHOR 10826 10827 =back 10828 10829 =head2 perlmachten, README.machten - Perl version 5 on Power MachTen 10830 systems 10831 10832 =over 4 10833 10834 =item DESCRIPTION 10835 10836 =over 4 10837 10838 =item Perl version 5.8.x and greater not supported 10839 10840 =item Compiling Perl 5.6.x on MachTen 10841 10842 =item Failures during C<make test> on MachTen 10843 10844 op/lexassign.t, pragma/warnings.t 10845 10846 =item Building external modules on MachTen 10847 10848 =back 10849 10850 =item AUTHOR 10851 10852 =item DATE 10853 10854 =back 10855 10856 =head2 perlmacos, README.macos - Perl under Mac OS (Classic) 10857 10858 =over 4 10859 10860 =item SYNOPSIS 10861 10862 =item DESCRIPTION 10863 10864 =item AUTHOR 10865 10866 =item DATE 10867 10868 =back 10869 10870 =head2 perlmacosx, README.macosx - Perl under Mac OS X 10871 10872 =over 4 10873 10874 =item SYNOPSIS 10875 10876 =item DESCRIPTION 10877 10878 =over 4 10879 10880 =item Installation Prefix 10881 10882 =item SDK support 10883 10884 =item Universal Binary support 10885 10886 =item 64-bit PPC support 10887 10888 =item libperl and Prebinding 10889 10890 =item Updating Apple's Perl 10891 10892 =item Known problems 10893 10894 =item MacPerl 10895 10896 =item Carbon 10897 10898 =item Cocoa 10899 10900 =back 10901 10902 =item Starting From Scratch 10903 10904 =item AUTHOR 10905 10906 =item DATE 10907 10908 =back 10909 10910 =head2 perlmint, README.mint - Perl version 5 on Atari MiNT 10911 10912 =over 4 10913 10914 =item DESCRIPTION 10915 10916 =item Known problems with Perl on MiNT 10917 10918 =item AUTHOR 10919 10920 =back 10921 10922 =head2 perlmpeix, README.mpeix - Perl/iX for HP e3000 MPE 10923 10924 =over 4 10925 10926 =item SYNOPSIS 10927 10928 =item NOTE 10929 10930 =item Binary distribution from HP 10931 10932 =item What's New in Perl for MPE/iX 10933 10934 =item Welcome to Perl/iX 10935 10936 =item System Requirements for Perl/iX 10937 10938 =item How to Obtain Perl/iX 10939 10940 =item Perl/iX Distribution Contents Highlights 10941 10942 README, INSTALL, LIBSHP3K, PERL, .cpan/, lib/, man/, 10943 public_html/feedback.cgi, src/perl-5.6.0-mpe 10944 10945 =item How to Compile Perl/iX 10946 10947 4, 6 10948 10949 =item Getting Started with Perl/iX 10950 10951 =item MPE/iX Implementation Considerations 10952 10953 =item Known Perl/iX Bugs Under Investigation 10954 10955 =item Perl/iX To-Do List 10956 10957 =item Perl/iX Change History 10958 10959 =item AUTHOR 10960 10961 =back 10962 10963 =head2 perlnetware - Perl for NetWare 10964 10965 =over 4 10966 10967 =item DESCRIPTION 10968 10969 =item BUILD 10970 10971 =over 4 10972 10973 =item Tools & SDK 10974 10975 =item Setup 10976 10977 SetNWBld.bat, Buildtype.bat 10978 10979 =item Make 10980 10981 =item Interpreter 10982 10983 =item Extensions 10984 10985 =back 10986 10987 =item INSTALL 10988 10989 =item BUILD NEW EXTENSIONS 10990 10991 =item ACKNOWLEDGEMENTS 10992 10993 =item AUTHORS 10994 10995 =item DATE 10996 10997 =back 10998 10999 =head2 perlopenbsd, README.openbsd - Perl version 5 on OpenBSD systems 11000 11001 =over 4 11002 11003 =item DESCRIPTION 11004 11005 =over 4 11006 11007 =item OpenBSD core dumps from getprotobyname_r and getservbyname_r with 11008 ithreads 11009 11010 =back 11011 11012 =item AUTHOR 11013 11014 =back 11015 11016 =head2 perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT. 11017 11018 =over 4 11019 11020 =item SYNOPSIS 11021 11022 =back 11023 11024 =over 4 11025 11026 =item DESCRIPTION 11027 11028 =over 4 11029 11030 =item Target 11031 11032 =item Other OSes 11033 11034 =item Prerequisites 11035 11036 EMX, RSX, HPFS, pdksh 11037 11038 =item Starting Perl programs under OS/2 (and DOS and...) 11039 11040 =item Starting OS/2 (and DOS) programs under Perl 11041 11042 =back 11043 11044 =item Frequently asked questions 11045 11046 =over 4 11047 11048 =item "It does not work" 11049 11050 =item I cannot run external programs 11051 11052 =item I cannot embed perl into my program, or use F<perl.dll> from my 11053 program. 11054 11055 Is your program EMX-compiled with C<-Zmt -Zcrtdll>?, Did you use 11056 L<ExtUtils::Embed>? 11057 11058 =item C<``> and pipe-C<open> do not work under DOS. 11059 11060 =item Cannot start C<find.exe "pattern" file> 11061 11062 =back 11063 11064 =item INSTALLATION 11065 11066 =over 4 11067 11068 =item Automatic binary installation 11069 11070 C<PERL_BADLANG>, C<PERL_BADFREE>, F<Config.pm> 11071 11072 =item Manual binary installation 11073 11074 Perl VIO and PM executables (dynamically linked), Perl_ VIO executable 11075 (statically linked), Executables for Perl utilities, Main Perl library, 11076 Additional Perl modules, Tools to compile Perl modules, Manpages for Perl 11077 and utilities, Manpages for Perl modules, Source for Perl documentation, 11078 Perl manual in F<.INF> format, Pdksh 11079 11080 =item B<Warning> 11081 11082 =back 11083 11084 =item Accessing documentation 11085 11086 =over 4 11087 11088 =item OS/2 F<.INF> file 11089 11090 =item Plain text 11091 11092 =item Manpages 11093 11094 =item HTML 11095 11096 =item GNU C<info> files 11097 11098 =item F<PDF> files 11099 11100 =item C<LaTeX> docs 11101 11102 =back 11103 11104 =item BUILD 11105 11106 =over 4 11107 11108 =item The short story 11109 11110 =item Prerequisites 11111 11112 =item Getting perl source 11113 11114 =item Application of the patches 11115 11116 =item Hand-editing 11117 11118 =item Making 11119 11120 =item Testing 11121 11122 A lot of C<bad free>, Process terminated by SIGTERM/SIGINT, F<op/fs.t>, 11123 F<op/stat.t> 11124 11125 =item Installing the built perl 11126 11127 =item C<a.out>-style build 11128 11129 =back 11130 11131 =item Building a binary distribution 11132 11133 =item Building custom F<.EXE> files 11134 11135 =over 4 11136 11137 =item Making executables with a custom collection of statically loaded 11138 extensions 11139 11140 =item Making executables with a custom search-paths 11141 11142 =back 11143 11144 =item Build FAQ 11145 11146 =over 4 11147 11148 =item Some C</> became C<\> in pdksh. 11149 11150 =item C<'errno'> - unresolved external 11151 11152 =item Problems with tr or sed 11153 11154 =item Some problem (forget which ;-) 11155 11156 =item Library ... not found 11157 11158 =item Segfault in make 11159 11160 =item op/sprintf test failure 11161 11162 =back 11163 11164 =item Specific (mis)features of OS/2 port 11165 11166 =over 4 11167 11168 =item C<setpriority>, C<getpriority> 11169 11170 =item C<system()> 11171 11172 =item C<extproc> on the first line 11173 11174 =item Additional modules: 11175 11176 =item Prebuilt methods: 11177 11178 C<File::Copy::syscopy>, C<DynaLoader::mod2fname>, C<Cwd::current_drive()>, 11179 C<Cwd::sys_chdir(name)>, C<Cwd::change_drive(name)>, 11180 C<Cwd::sys_is_absolute(name)>, C<Cwd::sys_is_rooted(name)>, 11181 C<Cwd::sys_is_relative(name)>, C<Cwd::sys_cwd(name)>, 11182 C<Cwd::sys_abspath(name, dir)>, C<Cwd::extLibpath([type])>, 11183 C<Cwd::extLibpath_set( path [, type ] )>, 11184 C<OS2::Error(do_harderror,do_exception)>, C<OS2::Errors2Drive(drive)>, 11185 OS2::SysInfo(), OS2::BootDrive(), C<OS2::MorphPM(serve)>, 11186 C<OS2::UnMorphPM(serve)>, C<OS2::Serve_Messages(force)>, 11187 C<OS2::Process_Messages(force [, cnt])>, C<OS2::_control87(new,mask)>, 11188 OS2::get_control87(), C<OS2::set_control87_em(new=MCW_EM,mask=MCW_EM)>, 11189 C<OS2::DLLname([how [, \&xsub]])> 11190 11191 =item Prebuilt variables: 11192 11193 $OS2::emx_rev, $OS2::emx_env, $OS2::os_ver, $OS2::is_aout, $OS2::can_fork, 11194 $OS2::nsyserror 11195 11196 =item Misfeatures 11197 11198 =item Modifications 11199 11200 C<popen>, C<tmpnam>, C<tmpfile>, C<ctermid>, C<stat>, C<mkdir>, C<rmdir>, 11201 C<flock> 11202 11203 =item Identifying DLLs 11204 11205 =item Centralized management of resources 11206 11207 C<HAB>, C<HMQ>, Treating errors reported by OS/2 API, 11208 C<CheckOSError(expr)>, C<CheckWinError(expr)>, C<SaveWinError(expr)>, 11209 C<SaveCroakWinError(expr,die,name1,name2)>, C<WinError_2_Perl_rc>, 11210 C<FillWinError>, C<FillOSError(rc)>, Loading DLLs and ordinals in DLLs 11211 11212 =back 11213 11214 =item Perl flavors 11215 11216 =over 4 11217 11218 =item F<perl.exe> 11219 11220 =item F<perl_.exe> 11221 11222 =item F<perl__.exe> 11223 11224 =item F<perl___.exe> 11225 11226 =item Why strange names? 11227 11228 =item Why dynamic linking? 11229 11230 =item Why chimera build? 11231 11232 =back 11233 11234 =item ENVIRONMENT 11235 11236 =over 4 11237 11238 =item C<PERLLIB_PREFIX> 11239 11240 =item C<PERL_BADLANG> 11241 11242 =item C<PERL_BADFREE> 11243 11244 =item C<PERL_SH_DIR> 11245 11246 =item C<USE_PERL_FLOCK> 11247 11248 =item C<TMP> or C<TEMP> 11249 11250 =back 11251 11252 =item Evolution 11253 11254 =over 4 11255 11256 =item Text-mode filehandles 11257 11258 =item Priorities 11259 11260 =item DLL name mangling: pre 5.6.2 11261 11262 =item DLL name mangling: 5.6.2 and beyond 11263 11264 Global DLLs, specific DLLs, C<BEGINLIBPATH> and C<ENDLIBPATH>, F<.> from 11265 C<LIBPATH> 11266 11267 =item DLL forwarder generation 11268 11269 =item Threading 11270 11271 =item Calls to external programs 11272 11273 =item Memory allocation 11274 11275 =item Threads 11276 11277 C<COND_WAIT>, F<os2.c> 11278 11279 =back 11280 11281 =item BUGS 11282 11283 =back 11284 11285 =over 4 11286 11287 =item AUTHOR 11288 11289 =item SEE ALSO 11290 11291 =back 11292 11293 =head2 perlos390, README.os390 - building and installing Perl for OS/390 11294 and z/OS 11295 11296 =over 4 11297 11298 =item SYNOPSIS 11299 11300 =item DESCRIPTION 11301 11302 =over 4 11303 11304 =item Tools 11305 11306 =item Unpacking Perl distribution on OS/390 11307 11308 =item Setup and utilities for Perl on OS/390 11309 11310 =item Configure Perl on OS/390 11311 11312 =item Build, Test, Install Perl on OS/390 11313 11314 =item Build Anomalies with Perl on OS/390 11315 11316 =item Testing Anomalies with Perl on OS/390 11317 11318 =item Installation Anomalies with Perl on OS/390 11319 11320 =item Usage Hints for Perl on OS/390 11321 11322 =item Floating Point Anomalies with Perl on OS/390 11323 11324 =item Modules and Extensions for Perl on OS/390 11325 11326 =back 11327 11328 =item AUTHORS 11329 11330 =item SEE ALSO 11331 11332 =over 4 11333 11334 =item Mailing list for Perl on OS/390 11335 11336 =back 11337 11338 =item HISTORY 11339 11340 =back 11341 11342 =head2 perlos400, README.os400 - Perl version 5 on OS/400 11343 11344 =over 4 11345 11346 =item DESCRIPTION 11347 11348 =over 4 11349 11350 =item Compiling Perl for OS/400 PASE 11351 11352 =item Installing Perl in OS/400 PASE 11353 11354 =item Using Perl in OS/400 PASE 11355 11356 =item Known Problems 11357 11358 =item Perl on ILE 11359 11360 =back 11361 11362 =item AUTHORS 11363 11364 =back 11365 11366 =head2 perlplan9 - Plan 9-specific documentation for Perl 11367 11368 =over 4 11369 11370 =item DESCRIPTION 11371 11372 =over 4 11373 11374 =item Invoking Perl 11375 11376 =item What's in Plan 9 Perl 11377 11378 =item What's not in Plan 9 Perl 11379 11380 =item Perl5 Functions not currently supported in Plan 9 Perl 11381 11382 =item Signals in Plan 9 Perl 11383 11384 =back 11385 11386 =item COMPILING AND INSTALLING PERL ON PLAN 9 11387 11388 =over 4 11389 11390 =item Installing Perl Documentation on Plan 9 11391 11392 =back 11393 11394 =item BUGS 11395 11396 =item Revision date 11397 11398 =item AUTHOR 11399 11400 =back 11401 11402 =head2 perlqnx, README.qnx - Perl version 5 on QNX 11403 11404 =over 4 11405 11406 =item DESCRIPTION 11407 11408 =over 4 11409 11410 =item Required Software for Compiling Perl on QNX4 11411 11412 /bin/sh, ar, nm, cpp, make 11413 11414 =item Outstanding Issues with Perl on QNX4 11415 11416 =item QNX auxiliary files 11417 11418 qnx/ar, qnx/cpp 11419 11420 =item Outstanding issues with perl under QNX6 11421 11422 =back 11423 11424 =item AUTHOR 11425 11426 =back 11427 11428 =head2 perlriscos, README.riscos - Perl version 5 for RISC OS 11429 11430 =over 4 11431 11432 =item DESCRIPTION 11433 11434 =item BUILD 11435 11436 =item AUTHOR 11437 11438 =back 11439 11440 =head2 perlsolaris, README.solaris - Perl version 5 on Solaris systems 11441 11442 =over 4 11443 11444 =item DESCRIPTION 11445 11446 =over 4 11447 11448 =item Solaris Version Numbers. 11449 11450 =back 11451 11452 =item RESOURCES 11453 11454 Solaris FAQ, Precompiled Binaries, Solaris Documentation 11455 11456 =item SETTING UP 11457 11458 =over 4 11459 11460 =item File Extraction Problems on Solaris. 11461 11462 =item Compiler and Related Tools on Solaris. 11463 11464 =item Environment for Compiling perl on Solaris 11465 11466 =back 11467 11468 =item RUN CONFIGURE. 11469 11470 =over 4 11471 11472 =item 64-bit perl on Solaris. 11473 11474 =item Threads in perl on Solaris. 11475 11476 =item Malloc Issues with perl on Solaris. 11477 11478 =back 11479 11480 =item MAKE PROBLEMS. 11481 11482 Dynamic Loading Problems With GNU as and GNU ld, ld.so.1: ./perl: fatal: 11483 relocation error:, dlopen: stub interception failed, #error "No 11484 DATAMODEL_NATIVE specified", sh: ar: not found 11485 11486 =item MAKE TEST 11487 11488 =over 4 11489 11490 =item op/stat.t test 4 in Solaris 11491 11492 =item nss_delete core dump from op/pwent or op/grent 11493 11494 =back 11495 11496 =item PREBUILT BINARIES OF PERL FOR SOLARIS. 11497 11498 =item RUNTIME ISSUES FOR PERL ON SOLARIS. 11499 11500 =over 4 11501 11502 =item Limits on Numbers of Open Files on Solaris. 11503 11504 =back 11505 11506 =item SOLARIS-SPECIFIC MODULES. 11507 11508 =item SOLARIS-SPECIFIC PROBLEMS WITH MODULES. 11509 11510 =over 4 11511 11512 =item Proc::ProcessTable on Solaris 11513 11514 =item BSD::Resource on Solaris 11515 11516 =item Net::SSLeay on Solaris 11517 11518 =back 11519 11520 =item SunOS 4.x 11521 11522 =item AUTHOR 11523 11524 =back 11525 11526 =head2 perlsymbian, README.symbian - Perl version 5 on Symbian OS 11527 11528 =over 4 11529 11530 =item DESCRIPTION 11531 11532 =over 4 11533 11534 =item Compiling Perl on Symbian 11535 11536 =item Compilation problems 11537 11538 =item PerlApp 11539 11540 =item sisify.pl 11541 11542 =item Using Perl in Symbian 11543 11544 =back 11545 11546 =item TO DO 11547 11548 =item WARNING 11549 11550 =item NOTE 11551 11552 =item AUTHOR 11553 11554 =item COPYRIGHT 11555 11556 =item LICENSE 11557 11558 =item HISTORY 11559 11560 =back 11561 11562 =head2 perltru64, README.tru64 - Perl version 5 on Tru64 (formerly known as 11563 Digital UNIX formerly known as DEC OSF/1) systems 11564 11565 =over 4 11566 11567 =item DESCRIPTION 11568 11569 =over 4 11570 11571 =item Compiling Perl 5 on Tru64 11572 11573 =item Using Large Files with Perl on Tru64 11574 11575 =item Threaded Perl on Tru64 11576 11577 =item Long Doubles on Tru64 11578 11579 =item DB_File tests failing on Tru64 11580 11581 =item 64-bit Perl on Tru64 11582 11583 =item Warnings about floating-point overflow when compiling Perl on Tru64 11584 11585 =back 11586 11587 =item Testing Perl on Tru64 11588 11589 =item ext/ODBM_File/odbm Test Failing With Static Builds 11590 11591 =item Perl Fails Because Of Unresolved Symbol sockatmark 11592 11593 =item AUTHOR 11594 11595 =back 11596 11597 =head2 perluts - Perl under UTS 11598 11599 =over 4 11600 11601 =item SYNOPSIS 11602 11603 =item DESCRIPTION 11604 11605 =item BUILDING PERL ON UTS 11606 11607 =item Installing the built perl on UTS 11608 11609 =item AUTHOR 11610 11611 =back 11612 11613 =head2 perlvmesa, README.vmesa - building and installing Perl for VM/ESA. 11614 11615 =over 4 11616 11617 =item SYNOPSIS 11618 11619 =item DESCRIPTION 11620 11621 =over 4 11622 11623 =item Unpacking Perl Distribution on VM/ESA 11624 11625 =item Setup Perl and utilities on VM/ESA 11626 11627 =item Configure Perl on VM/ESA 11628 11629 =item Testing Anomalies of Perl on VM/ESA 11630 11631 =item Usage Hints for Perl on VM/ESA 11632 11633 =back 11634 11635 =item AUTHORS 11636 11637 =item SEE ALSO 11638 11639 =over 4 11640 11641 =item Mailing list for Perl on VM/ESA 11642 11643 =back 11644 11645 =back 11646 11647 =head2 perlvms - VMS-specific documentation for Perl 11648 11649 =over 4 11650 11651 =item DESCRIPTION 11652 11653 =item Installation 11654 11655 =item Organization of Perl Images 11656 11657 =over 4 11658 11659 =item Core Images 11660 11661 =item Perl Extensions 11662 11663 =item Installing static extensions 11664 11665 =item Installing dynamic extensions 11666 11667 =back 11668 11669 =item File specifications 11670 11671 =over 4 11672 11673 =item Syntax 11674 11675 =item Filename Case 11676 11677 =item Symbolic Links 11678 11679 =item Wildcard expansion 11680 11681 =item Pipes 11682 11683 =back 11684 11685 =item PERL5LIB and PERLLIB 11686 11687 =item The Perl Forked Debugger 11688 11689 =item PERL_VMS_EXCEPTION_DEBUG 11690 11691 =item Command line 11692 11693 =over 4 11694 11695 =item I/O redirection and backgrounding 11696 11697 =item Command line switches 11698 11699 -i, -S, -u 11700 11701 =back 11702 11703 =item Perl functions 11704 11705 File tests, backticks, binmode FILEHANDLE, crypt PLAINTEXT, USER, die, 11706 dump, exec LIST, fork, getpwent, getpwnam, getpwuid, gmtime, kill, qx//, 11707 select (system call), stat EXPR, system LIST, time, times, unlink LIST, 11708 utime LIST, waitpid PID,FLAGS 11709 11710 =item Perl variables 11711 11712 %ENV, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $| 11713 11714 =item Standard modules with VMS-specific differences 11715 11716 =over 4 11717 11718 =item SDBM_File 11719 11720 =back 11721 11722 =item Revision date 11723 11724 =item AUTHOR 11725 11726 =back 11727 11728 =head2 perlvos, README.vos - Perl for Stratus VOS 11729 11730 =over 4 11731 11732 =item SYNOPSIS 11733 11734 =item BUILDING PERL FOR VOS 11735 11736 =item INSTALLING PERL IN VOS 11737 11738 =item USING PERL IN VOS 11739 11740 =over 4 11741 11742 =item Restrictions of Perl on VOS 11743 11744 =item Handling of underflow and overflow 11745 11746 =back 11747 11748 =item TEST STATUS 11749 11750 =item SUPPORT STATUS 11751 11752 =item AUTHOR 11753 11754 =item LAST UPDATE 11755 11756 =back 11757 11758 =head2 perlwin32 - Perl under Windows 11759 11760 =over 4 11761 11762 =item SYNOPSIS 11763 11764 =item DESCRIPTION 11765 11766 =over 4 11767 11768 =item Setting Up Perl on Win32 11769 11770 Make, Command Shell, Borland C++, Microsoft Visual C++, Microsoft Visual 11771 C++ 2008 Express Edition Beta 2, Microsoft Visual C++ 2005 Express Edition, 11772 Microsoft Visual C++ Toolkit 2003, Microsoft Platform SDK 64-bit Compiler, 11773 MinGW release 3 with gcc, MinGW release 1 with gcc 11774 11775 =item Building 11776 11777 =item Testing Perl on Win32 11778 11779 =item Installation of Perl on Win32 11780 11781 =item Usage Hints for Perl on Win32 11782 11783 Environment Variables, File Globbing, Using perl from the command line, 11784 Building Extensions, Command-line Wildcard Expansion, Win32 Specific 11785 Extensions, Notes on 64-bit Windows 11786 11787 =item Running Perl Scripts 11788 11789 =item Miscellaneous Things 11790 11791 =back 11792 11793 =item BUGS AND CAVEATS 11794 11795 =item ACKNOWLEDGEMENTS 11796 11797 =item AUTHORS 11798 11799 Gary Ng E<lt>71564.1743@CompuServe.COME<gt>, Gurusamy Sarathy 11800 E<lt>gsar@activestate.comE<gt>, Nick Ing-Simmons 11801 E<lt>nick@ing-simmons.netE<gt>, Jan Dubois E<lt>jand@activestate.comE<gt>, 11802 Steve Hay E<lt>steve.hay@uk.radan.comE<gt> 11803 11804 =item SEE ALSO 11805 11806 =item HISTORY 11807 11808 =back 11809 11810 =head1 PRAGMA DOCUMENTATION 11811 11812 =head2 attrs - set/get attributes of a subroutine (deprecated) 11813 11814 =over 4 11815 11816 =item SYNOPSIS 11817 11818 =item DESCRIPTION 11819 11820 method, locked 11821 11822 =back 11823 11824 =head2 re - Perl pragma to alter regular expression behaviour 11825 11826 =over 4 11827 11828 =item SYNOPSIS 11829 11830 =item DESCRIPTION 11831 11832 =over 4 11833 11834 =item 'taint' mode 11835 11836 =item 'eval' mode 11837 11838 =item 'debug' mode 11839 11840 =item 'Debug' mode 11841 11842 Compile related options, COMPILE, PARSE, OPTIMISE, TRIEC, DUMP, Execute 11843 related options, EXECUTE, MATCH, TRIEE, INTUIT, Extra debugging options, 11844 EXTRA, BUFFERS, TRIEM, STATE, STACK, OPTIMISEM, OFFSETS, OFFSETSDBG, Other 11845 useful flags, ALL, All, MORE, More 11846 11847 =item Exportable Functions 11848 11849 is_regexp($ref), regexp_pattern($ref), regmust($ref), regname($name,$all), 11850 regnames($all), regnames_count() 11851 11852 =back 11853 11854 =item SEE ALSO 11855 11856 =back 11857 11858 =head2 threadshared::shared, threads::shared - Perl extension for sharing 11859 data structures between threads 11860 11861 =over 4 11862 11863 =item VERSION 11864 11865 =item SYNOPSIS 11866 11867 =item DESCRIPTION 11868 11869 =item EXPORT 11870 11871 =item FUNCTIONS 11872 11873 share VARIABLE, is_shared VARIABLE, lock VARIABLE, cond_wait VARIABLE, 11874 cond_wait CONDVAR, LOCKVAR, cond_timedwait VARIABLE, ABS_TIMEOUT, 11875 cond_timedwait CONDVAR, ABS_TIMEOUT, LOCKVAR, cond_signal VARIABLE, 11876 cond_broadcast VARIABLE 11877 11878 =item OBJECTS 11879 11880 =item NOTES 11881 11882 =item BUGS AND LIMITATIONS 11883 11884 =item SEE ALSO 11885 11886 =item AUTHOR 11887 11888 =back 11889 11890 =head2 threads - Perl interpreter-based threads 11891 11892 =over 4 11893 11894 =item VERSION 11895 11896 =item SYNOPSIS 11897 11898 =item DESCRIPTION 11899 11900 $thr = threads->create(FUNCTION, ARGS), $thr->join(), $thr->detach(), 11901 threads->detach(), threads->self(), $thr->tid(), threads->tid(), "$thr", 11902 threads->object($tid), threads->yield(), threads->list(), 11903 threads->list(threads::all), threads->list(threads::running), 11904 threads->list(threads::joinable), $thr1->equal($thr2), async BLOCK;, 11905 $thr->error(), $thr->_handle(), threads->_handle() 11906 11907 =item EXITING A THREAD 11908 11909 threads->exit(), threads->exit(status), die(), exit(status), use threads 11910 'exit' => 'threads_only', threads->create({'exit' => 'thread_only'}, ...), 11911 $thr->set_thread_exit_only(boolean), threads->set_thread_exit_only(boolean) 11912 11913 =item THREAD STATE 11914 11915 $thr->is_running(), $thr->is_joinable(), $thr->is_detached(), 11916 threads->is_detached() 11917 11918 =item THREAD CONTEXT 11919 11920 =over 4 11921 11922 =item Explicit context 11923 11924 =item Implicit context 11925 11926 =item $thr->wantarray() 11927 11928 =item threads->wantarray() 11929 11930 =back 11931 11932 =item THREAD STACK SIZE 11933 11934 threads->get_stack_size();, $size = $thr->get_stack_size();, $old_size = 11935 threads->set_stack_size($new_size);, use threads ('stack_size' => VALUE);, 11936 $ENV{'PERL5_ITHREADS_STACK_SIZE'}, threads->create({'stack_size' => VALUE}, 11937 FUNCTION, ARGS), $thr2 = $thr1->create(FUNCTION, ARGS) 11938 11939 =item THREAD SIGNALLING 11940 11941 $thr->kill('SIG...'); 11942 11943 =item WARNINGS 11944 11945 Perl exited with active threads:, Thread creation failed: pthread_create 11946 returned #, Thread # terminated abnormally: .., Using minimum thread stack 11947 size of #, Thread creation failed: pthread_attr_setstacksize(I<SIZE>) 11948 returned 22 11949 11950 =item ERRORS 11951 11952 This Perl not built to support threads, Cannot change stack size of an 11953 existing thread, Cannot signal threads without safe signals, Unrecognized 11954 signal name: .. 11955 11956 =item BUGS AND LIMITATIONS 11957 11958 Thread-safe modules, Using non-thread-safe modules, Current working 11959 directory, Environment variables, Parent-child threads, Creating threads 11960 inside special blocks, Unsafe signals, Perl has been built with 11961 C<PERL_OLD_SIGNALS> (see C<perl -V>), The environment variable 11962 C<PERL_SIGNALS> is set to C<unsafe> (see L<perlrun/"PERL_SIGNALS">), The 11963 module L<Perl::Unsafe::Signals> is used, Returning closures from threads, 11964 Returning objects from threads, Perl Bugs and the CPAN Version of 11965 L<threads> 11966 11967 =item REQUIREMENTS 11968 11969 =item SEE ALSO 11970 11971 =item AUTHOR 11972 11973 =item ACKNOWLEDGEMENTS 11974 11975 =back 11976 11977 =head2 attributes - get/set subroutine or variable attributes 11978 11979 =over 4 11980 11981 =item SYNOPSIS 11982 11983 =item DESCRIPTION 11984 11985 =over 4 11986 11987 =item Built-in Attributes 11988 11989 locked, method, lvalue 11990 11991 =item Available Subroutines 11992 11993 get, reftype 11994 11995 =item Package-specific Attribute Handling 11996 11997 FETCH_I<type>_ATTRIBUTES, MODIFY_I<type>_ATTRIBUTES 11998 11999 =item Syntax of Attribute Lists 12000 12001 =back 12002 12003 =item EXPORTS 12004 12005 =over 4 12006 12007 =item Default exports 12008 12009 =item Available exports 12010 12011 =item Export tags defined 12012 12013 =back 12014 12015 =item EXAMPLES 12016 12017 =item SEE ALSO 12018 12019 =back 12020 12021 =head2 autouse - postpone load of modules until a function is used 12022 12023 =over 4 12024 12025 =item SYNOPSIS 12026 12027 =item DESCRIPTION 12028 12029 =item WARNING 12030 12031 =item AUTHOR 12032 12033 =item SEE ALSO 12034 12035 =back 12036 12037 =head2 base - Establish an ISA relationship with base classes at compile 12038 time 12039 12040 =over 4 12041 12042 =item SYNOPSIS 12043 12044 =item DESCRIPTION 12045 12046 =item DIAGNOSTICS 12047 12048 Base class package "%s" is empty, Class 'Foo' tried to inherit from itself 12049 12050 =item HISTORY 12051 12052 =item CAVEATS 12053 12054 =item SEE ALSO 12055 12056 =back 12057 12058 =head2 bigint - Transparent BigInteger support for Perl 12059 12060 =over 4 12061 12062 =item SYNOPSIS 12063 12064 =item DESCRIPTION 12065 12066 =over 4 12067 12068 =item use integer vs. use bigint 12069 12070 =item Options 12071 12072 a or accuracy, p or precision, t or trace, hex, oct, l, lib, try or only, v 12073 or version 12074 12075 =item Math Library 12076 12077 =item Internal Format 12078 12079 =item Sign 12080 12081 =item Methods 12082 12083 inf(), NaN(), e, PI, bexp(), bpi(), upgrade(), in_effect() 12084 12085 =item MATH LIBRARY 12086 12087 =item Caveat 12088 12089 =back 12090 12091 =item CAVAETS 12092 12093 in_effect(), hex()/oct() 12094 12095 =item MODULES USED 12096 12097 =item EXAMPLES 12098 12099 =item LICENSE 12100 12101 =item SEE ALSO 12102 12103 =item AUTHORS 12104 12105 =back 12106 12107 =head2 bignum - Transparent BigNumber support for Perl 12108 12109 =over 4 12110 12111 =item SYNOPSIS 12112 12113 =item DESCRIPTION 12114 12115 =over 4 12116 12117 =item Options 12118 12119 a or accuracy, p or precision, t or trace, l or lib, hex, oct, v or version 12120 12121 =item Methods 12122 12123 =item Caveats 12124 12125 inf(), NaN(), e, PI(), bexp(), bpi(), upgrade(), in_effect() 12126 12127 =item Math Library 12128 12129 =item INTERNAL FORMAT 12130 12131 =item SIGN 12132 12133 =back 12134 12135 =item CAVAETS 12136 12137 in_effect(), hex()/oct() 12138 12139 =item MODULES USED 12140 12141 =item EXAMPLES 12142 12143 =item LICENSE 12144 12145 =item SEE ALSO 12146 12147 =item AUTHORS 12148 12149 =back 12150 12151 =head2 bigrat - Transparent BigNumber/BigRational support for Perl 12152 12153 =over 4 12154 12155 =item SYNOPSIS 12156 12157 =item DESCRIPTION 12158 12159 =over 4 12160 12161 =item Modules Used 12162 12163 =item Math Library 12164 12165 =item Sign 12166 12167 =item Methods 12168 12169 inf(), NaN(), e, PI, bexp(), bpi(), upgrade(), in_effect() 12170 12171 =item MATH LIBRARY 12172 12173 =item Cavaet 12174 12175 =item Options 12176 12177 a or accuracy, p or precision, t or trace, l or lib, hex, oct, v or version 12178 12179 =back 12180 12181 =item CAVAETS 12182 12183 in_effect(), hex()/oct() 12184 12185 =item EXAMPLES 12186 12187 perl -Mbigrat -le 'print sqrt(33)' 12188 perl -Mbigrat -le 'print 2*255' 12189 perl -Mbigrat -le 'print 4.5+2*255' 12190 perl -Mbigrat -le 'print 3/7 + 5/7 + 8/3' 12191 perl -Mbigrat -le 'print 12->is_odd()'; 12192 perl -Mbignum=l,GMP -le 'print 7 ** 7777' 12193 12194 =item LICENSE 12195 12196 =item SEE ALSO 12197 12198 =item AUTHORS 12199 12200 =back 12201 12202 =head2 blib - Use MakeMaker's uninstalled version of a package 12203 12204 =over 4 12205 12206 =item SYNOPSIS 12207 12208 =item DESCRIPTION 12209 12210 =item BUGS 12211 12212 =item AUTHOR 12213 12214 =back 12215 12216 =head2 bytes - Perl pragma to force byte semantics rather than character 12217 semantics 12218 12219 =over 4 12220 12221 =item SYNOPSIS 12222 12223 =item DESCRIPTION 12224 12225 =item LIMITATIONS 12226 12227 =item SEE ALSO 12228 12229 =back 12230 12231 =head2 charnames - define character names for C<\N{named}> string literal 12232 escapes 12233 12234 =over 4 12235 12236 =item SYNOPSIS 12237 12238 =item DESCRIPTION 12239 12240 =item ALIASES 12241 12242 =item CUSTOM ALIASES 12243 12244 =over 4 12245 12246 =item Anonymous hashes 12247 12248 =item Alias file 12249 12250 =item Alias shortcut 12251 12252 =back 12253 12254 =item charnames::viacode(code) 12255 12256 =item charnames::vianame(name) 12257 12258 =item CUSTOM TRANSLATORS 12259 12260 =item ILLEGAL CHARACTERS 12261 12262 =item BUGS 12263 12264 =back 12265 12266 =head2 constant - Perl pragma to declare constants 12267 12268 =over 4 12269 12270 =item SYNOPSIS 12271 12272 =item DESCRIPTION 12273 12274 =item NOTES 12275 12276 =over 4 12277 12278 =item List constants 12279 12280 =item Defining multiple constants at once 12281 12282 =item Magic constants 12283 12284 =back 12285 12286 =item TECHNICAL NOTES 12287 12288 =item CAVEATS 12289 12290 =item BUGS 12291 12292 =item AUTHORS 12293 12294 =item COPYRIGHT 12295 12296 =back 12297 12298 =head2 diagnostics, splain - produce verbose warning diagnostics 12299 12300 =over 4 12301 12302 =item SYNOPSIS 12303 12304 =item DESCRIPTION 12305 12306 =over 4 12307 12308 =item The C<diagnostics> Pragma 12309 12310 =item The I<splain> Program 12311 12312 =back 12313 12314 =item EXAMPLES 12315 12316 =item INTERNALS 12317 12318 =item BUGS 12319 12320 =item AUTHOR 12321 12322 =back 12323 12324 =head2 encoding - allows you to write your script in non-ascii or non-utf8 12325 12326 =over 4 12327 12328 =item SYNOPSIS 12329 12330 =item ABSTRACT 12331 12332 =over 4 12333 12334 =item Literal Conversions 12335 12336 =item PerlIO layers for C<STD(IN|OUT)> 12337 12338 =item Implicit upgrading for byte strings 12339 12340 =item Side effects 12341 12342 =item Side effects 12343 12344 =item Side effects 12345 12346 =back 12347 12348 =item FEATURES THAT REQUIRE 5.8.1 12349 12350 "NON-EUC" doublebyte encodings, tr//, DATA pseudo-filehandle 12351 12352 =item USAGE 12353 12354 use encoding [I<ENCNAME>] ;, use encoding I<ENCNAME> [ STDIN =E<gt> 12355 I<ENCNAME_IN> ...] ;, use encoding I<ENCNAME> Filter=E<gt>1;, no encoding; 12356 12357 =item The Filter Option 12358 12359 =over 4 12360 12361 =item Filter-related changes at Encode version 1.87 12362 12363 =back 12364 12365 =item CAVEATS 12366 12367 =over 4 12368 12369 =item NOT SCOPED 12370 12371 =item DO NOT MIX MULTIPLE ENCODINGS 12372 12373 =item tr/// with ranges 12374 12375 Legend of characters above 12376 12377 =back 12378 12379 =item EXAMPLE - Greekperl 12380 12381 =item KNOWN PROBLEMS 12382 12383 literals in regex that are longer than 127 bytes, EBCDIC, format, Thread 12384 safety 12385 12386 =over 4 12387 12388 =item The Logic of :locale 12389 12390 =back 12391 12392 =item HISTORY 12393 12394 =item SEE ALSO 12395 12396 =back 12397 12398 =head2 encoding::warnings - Warn on implicit encoding conversions 12399 12400 =over 4 12401 12402 =item VERSION 12403 12404 =item SYNOPSIS 12405 12406 =item DESCRIPTION 12407 12408 =over 4 12409 12410 =item Overview of the problem 12411 12412 =item Detecting the problem 12413 12414 =item Solving the problem 12415 12416 Upgrade both sides to unicode-strings, Downgrade both sides to 12417 byte-strings, Specify the encoding for implicit byte-string upgrading, 12418 PerlIO layers for B<STDIN> and B<STDOUT>, Literal conversions, Implicit 12419 upgrading for byte-strings 12420 12421 =back 12422 12423 =item CAVEATS 12424 12425 =back 12426 12427 =over 4 12428 12429 =item SEE ALSO 12430 12431 =item AUTHORS 12432 12433 =item COPYRIGHT 12434 12435 =back 12436 12437 =head2 feature - Perl pragma to enable new syntactic features 12438 12439 =over 4 12440 12441 =item SYNOPSIS 12442 12443 =item DESCRIPTION 12444 12445 =over 4 12446 12447 =item Lexical effect 12448 12449 =item C<no feature> 12450 12451 =item The 'switch' feature 12452 12453 =item The 'say' feature 12454 12455 =item the 'state' feature 12456 12457 =back 12458 12459 =item FEATURE BUNDLES 12460 12461 =item IMPLICIT LOADING 12462 12463 =back 12464 12465 =head2 fields - compile-time class fields 12466 12467 =over 4 12468 12469 =item SYNOPSIS 12470 12471 =item DESCRIPTION 12472 12473 new, phash 12474 12475 =item SEE ALSO 12476 12477 =back 12478 12479 =head2 filetest - Perl pragma to control the filetest permission operators 12480 12481 =over 4 12482 12483 =item SYNOPSIS 12484 12485 =item DESCRIPTION 12486 12487 =over 4 12488 12489 =item Consider this carefully 12490 12491 =item The "access" sub-pragma 12492 12493 =item Limitation with regard to C<_> 12494 12495 =back 12496 12497 =back 12498 12499 =head2 if - C<use> a Perl module if a condition holds 12500 12501 =over 4 12502 12503 =item SYNOPSIS 12504 12505 =item DESCRIPTION 12506 12507 =item BUGS 12508 12509 =item AUTHOR 12510 12511 =back 12512 12513 =head2 integer - Perl pragma to use integer arithmetic instead of floating 12514 point 12515 12516 =over 4 12517 12518 =item SYNOPSIS 12519 12520 =item DESCRIPTION 12521 12522 =back 12523 12524 =head2 less - perl p