| |
| |
What Is Perl? | |
| |
| |
Why program in Perl? | |
| |
| |
Why did I write this book? | |
| |
| |
Who should read this book? | |
| |
| |
Overview of the Book | |
| |
| |
| |
| |
| |
| |
A Tutorial Introduction to Perl | |
| |
| |
Getting Started | |
| |
| |
Perl Variables | |
| |
| |
Control Flow Constructs | |
| |
| |
Altering Loop Control Flow | |
| |
| |
A Few Special Perl Variables | |
| |
| |
Regular Expressions | |
| |
| |
Writing Your Own Functions | |
| |
| |
Exercises | |
| |
| |
| |
Input and Output in Perl | |
| |
| |
Filehandles | |
| |
| |
Creating Your Own Filehandles | |
| |
| |
File Operators | |
| |
| |
The stat Function | |
| |
| |
Other Filehandles | |
| |
| |
Exercises | |
| |
| |
| |
Operators in Perl | |
| |
| |
Perl Operators | |
| |
| |
Exercises | |
| |
| |
| |
Arrays and Array Functions | |
| |
| |
Introduction | |
| |
| |
The @ARGV Array | |
| |
| |
Array Functions | |
| |
| |
Exercises | |
| |
| |
| |
Hashes | |
| |
| |
Introduction | |
| |
| |
Sorting Hashes | |
| |
| |
Hash Solutions to Common Problems | |
| |
| |
Built-in Associative Arrays | |
| |
| |
Reading from a File into a Hash | |
| |
| |
Exercises | |
| |
| |
| |
Regular Expressions | |
| |
| |
Introduction | |
| |
| |
The Match Operator | |
| |
| |
Regular Expression Metacharacters | |
| |
| |
Anchoring Patterns | |
| |
| |
Remembering Parts of Matches | |
| |
| |
Greedy Regular Expressions | |
| |
| |
Substitutions | |
| |
| |
Backtracking | |
| |
| |
The tr Operator | |
| |
| |
Exercises | |
| |
| |
| |
Subprograms | |
| |
| |
Introduction | |
| |
| |
Passing Arguments to Subroutines | |
| |
| |
Returning Values from Subroutines | |
| |
| |
Perl Libraries | |
| |
| |
The Perl Standard Library | |
| |
| |
Packages | |
| |
| |
Predefined Subroutines | |
| |
| |
Exercises | |
| |
| |
| |
Generating Reports in Perl | |
| |
| |
Introduction | |
| |
| |
Format | |
| |
| |
Top-of-page formatting | |
| |
| |
The select Function | |
| |
| |
Bottom-of-Page Formatting | |
| |
| |
Exercises | |
| |
| |
| |
Accessing System Resources | |
| |
| |
Introduction | |
| |
| |
File and Directory System Calls | |
| |
| |
Process Creation | |
| |
| |
Updating Files | |
| |
| |
Exercises | |
| |
| |
| |
Perl References | |
| |
| |
Introduction | |
| |
| |
Anonymous References | |
| |
| |
Complex Data Structures | |
| |
| |
Collections of Records | |
| |
| |
Exercises | |
| |
| |
| |
Object-Oriented Programming | |
| |
| |
Introduction | |
| |
| |
The Vocabulary of Object Orientation | |
| |
| |
Defining and Using Objects | |
| |
| |
Inheritance | |
| |
| |
Exercises | |
| |
| |
| |
Client/Server Applications | |
| |
| |
Introduction | |
| |
| |
Writing Clients | |
| |
| |
Writing Servers | |
| |
| |
Iterative Servers | |
| |
| |
Exercises | |
| |
| |
| |
CGI Programming with Perl | |
| |
| |
Introduction | |
| |
| |
HTML and Forms | |
| |
| |
Relationship between Server and CGI Script. cgi-lib.pl and cgi.pm | |
| |
| |
CGI Scripts and Databases | |
| |
| |
Exercises | |
| |
| |
| |
Graphical User Interfaces with the Tk.pm Module | |
| |
| |
Introduction | |
| |
| |
Geometry Management | |
| |
| |
Buttons | |
| |
| |
Other Widgets | |
| |
| |
Frames | |
| |
| |
Binding | |
| |
| |
Exercise | |
| |
| |
| |
Accessing Real Databases in Perl | |
| |
| |
Introduction | |
| |
| |
A Review of SQL and Relational Databases | |
| |
| |
Accessing a Database from Perl | |
| |
| |
Adding a Graphical Front-End | |
| |
| |
Accessing a Real Database via a Web Form | |
| |
| |
&l | |