My Account Log in

1 option

Programming Perl / Larry Wall, Tom Christiansen & Jon Orwant.

Van Pelt Library QA76.73.P22 W18 2000
Loading location information...

Available This item is available for access.

Log in to request item
Format:
Book
Author/Creator:
Wall, Larry.
Contributor:
Christiansen, Tom.
Orwant, Jon.
Language:
English
Subjects (All):
Perl (Computer program language).
Physical Description:
xxxi, 1070 pages : illustrations ; 24 cm
Edition:
Third edition.
Place of Publication:
Beijing ; Sebastopol, CA : O'Reilly, 2000.
Summary:
This comprehensive guide gives readers the inside scoop to the nooks and crannies of the language. Expanded to cover version 5.6, new topics of "Programming Perl" include threading, the compiler, Unicode, and other new features that have been added since the previous edition.
Contents:
1 An Overview of Perl 3
Natural and Artificial Languages 4
An Average Example 17
Filehandles 20
Operators 22
Control Structures 29
Regular Expressions 35
List Processing 41
What You Don't Know Won't Hurt You (Much) 43
II The Gory Details 45
2 Bits and Pieces 47
Atoms 47
Molecules 49
Built-in Data Types 50
Variables 52
Names 53
Scalar Values 58
Context 69
List Values and Arrays 72
Hashes 76
Typeglobs and Filehandles 78
Input Operators 79
3 Unary and Binary Operators 86
Terms and List Operators (Leftward) 89
The Arrow Operator 90
Autoincrement and Autodecrement 91
Exponentiation 92
Ideographic Unary Operators 92
Binding Operators 93
Multiplicative Operators 94
Additive Operators 95
Shift Operators 95
Named Unary and File Test Operators 95
Relational Operators 100
Equality Operators 101
Bitwise Operators 101
C-Style Logical (Short-Circuit) Operators 102
Range Operator 103
Conditional Operator 105
Assignment Operators 107
Comma Operators 108
List Operators (Rightward) 109
Logical and, or, not, and xor 109
C Operators Missing from Perl 110
4 Statements and Declarations 111
Simple Statements 111
Compound Statements 113
if and unless Statements 114
Loop Statements 115
Bare Blocks 123
goto 126
Global Declarations 127
Scoped Declarations 129
Pragmas 136
5 Pattern Matching 139
The Regular Expression Bestiary 140
Pattern-Matching Operators 143
Metacharacters and Metasymbols 158
Character Classes 165
Quantifiers 176
Positions 178
Capturing and Clustering 182
Alternation 187
Staying in Control 188
Fancy Patterns 202
6 Subroutines 217
Syntax 217
Semantics 219
Passing References 224
Prototypes 225
Subroutine Attributes 231
7 Formats 234
Format Variables 237
Footers 240
What Is a Reference? 242
Creating References 245
Using Hard References 251
Symbolic References 263
Braces, Brackets, and Quoting 264
9 Data Structures 268
Arrays of Arrays 268
Hashes of Arrays 275
Arrays of Hashes 277
Hashes of Hashes 279
Hashes of Functions 282
More Elaborate Records 283
Saving Data Structures 286
10 Packages 288
Symbol Tables 293
Autoloading 296
11 Modules 299
Using Modules 299
Creating Modules 301
Overriding Built-in Functions 306
12 Objects 308
Brief Refresher on Object-Oriented Lingo 308
Perl's Object System 310
Method Invocation 311
Object Construction 317
Class Inheritance 321
Instance Destructors 330
Managing Instance Data 331
Managing Class Data 343
13 Overloading 347
The overload Pragma 348
Overload Handlers 349
Overloadable Operators 350
The Copy Constructor (=) 357
When an Overload Handler Is Missing (nomethod and fallback) 358
Overloading Constants 359
Public Overload Functions 360
Inheritance and Overloading 361
Run-Time Overloading 361
Overloading Diagnostics 362
14 Tied Variables 363
Tying Scalars 365
Tying Arrays 372
Tying Hashes 378
Tying Filehandles 384
A Subtle Untying Trap 395
Tie Modules on CPAN 397
III Perl as Technology 399
15 Unicode 401
Building Character 402
Effects of Character Semantics 405
Caution, [characters not reproducible] Working 409
16 Interprocess Communication 411
Signals 412
Files 418
Pipes 426
System V IPC 434
Sockets 437
17 Threads 446
The Process Model 447
The Thread Model 448
18 Compiling 464
The Life Cycle of a Perl Program 465
Compiling Your Code 467
Executing Your Code 473
Compiler Backends 476
Code Generators 477
Code Development Tools 479
Avant-Garde Compiler, Retro Interpreter 480
19 The Command-Line Interface 486
Command Processing 486
Environment Variables 503
20 The Perl Debugger 506
Using the Debugger 507
Debugger Commands 509
Debugger Customization 518
Unattended Execution 521
Debugger Support 523
The Perl Profiler 525
21 Internals and Externals 530
How Perl Works 531
Internal Data Types 531
Extending Perl (Using C from Perl) 532
Embedding Perl (Using Perl from C) 538
The Moral of the Story 544
IV Perl as Culture 545
22 CPAN 547
The CPAN modules Directory 548
Using CPAN Modules 551
Creating CPAN Modules 554
23 Security 557
Handling Insecure Data 558
Handling Timing Glitches 569
Handling Insecure Code 576
24 Common Practices 585
Common Goofs for Novices 585
Efficiency 593
Programming with Style 603
Fluent Perl 607
Program Generation 616
25 Portable Perl 621
Newlines 622
Endianness and Number Width 623
Files and Filesystems 624
System Interaction 625
Interprocess Communication (IPC) 626
External Subroutines (XS) 626
Standard Modules 627
Dates and Times 627
Internationalization 628
Style 628
26 Plain Old Documentation 629
Pod in a Nutshell 629
Pod Translators and Modules 638
Writing Your Own Pod Tools 640
Pod Pitfalls 643
Documenting Your Perl Programs 644
27 Perl Culture 645
History Made Practical 645
Perl Poetry 647
V Reference Material 651
28 Special Names 653
Special Names Grouped by Type 653
Special Variables in Alphabetical Order 656
29 Functions 677
Perl Functions by Category 680
Perl Functions in Alphabetical Order 682
30 The Standard Perl Library 831
Library Science 831
A Tour of the Perl Library 833
31 Pragmatic Modules 836
use attributes 837
use autouse 838
use base 839
use blib 840
use bytes 840
use charnames 841
use constant 842
use diagnostics 844
use fields 846
use filetest 848
use integer 849
use less 850
use lib 850
use locale 852
use open 852
use overload 853
use re 854
use sigtrap 855
use strict 858
use subs 860
use vars 861
use warnings 861
32 Standard Modules 865
Listings by Type 866
Benchmark 875
Carp 878
CGI 878
CGI::Carp 879
Class::Struct 879
Config 880
CPAN 881
Cwd 881
Data::Dumper 882
DB_File 883
Dumpvalue 884
English 884
Errno 885
Exporter 885
Fatal 886
Fcntl 887
File::Basename 887
File::Compare 888
File::Copy 889
File::Find 889
File::Glob 890
File::Spec 893
File::stat 894
File::Temp 894
FileHandle 895
Getopt::Long 898
Getopt::Std 899
IO::Socket 899
IPC::Open2 900
IPC::Open3 901
Math::BigInt 902
Math::Complex 902
Math::Trig 903
Net::hostent 903
POSIX 904
Safe 906
Socket 907
Symbol 908
Sys::Hostname 909
Sys::Syslog 909
Term::Cap 911
Text::Wrap 911
Time::Local 912
Time::localtime 912
User::grent 913
User::pwent 913
33 Diagnostic Messages 916.
ISBN:
0596000278
OCLC:
44425562

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Library Catalog Using Articles+ Library Account