Learning Perl, 4/e

Randal L. Schwartz, Tom Phoenix, brian d foy

  • 出版商: O'Reilly
  • 出版日期: 2005-07-24
  • 售價: $1,370
  • 貴賓價: 9.5$1,302
  • 語言: 英文
  • 頁數: 312
  • 裝訂: Paperback
  • ISBN: 0596101058
  • ISBN-13: 9780596101053
  • 相關分類: Perl 程式語言






Learning Perl, better known as "the Llama book", starts the programmer on the way to mastery. Written by three prominent members of the Perl community who each have several years of experience teaching Perl around the world, this latest edition has been updated to account for all the recent changes to the language up to Perl 5.8.

Perl is the language for people who want to get work done. It started as a tool for UNIX system administrators who needed something powerful for small tasks. Since then, Perl has blossomed into a full-featured programming language used for web programming, database manipulation, XML processing, and system administration--on practically all platforms--while remaining the favorite tool for the small daily tasks it was designed for. You might start using Perl because you need it, but you'll continue to use it because you love it.

Informed by their years of success at teaching Perl as consultants, the authors have re-engineered the Llama to better match the pace and scope appropriate for readers getting started with Perl, while retaining the detailed discussion, thorough examples, and eclectic wit for which the Llama is famous.

The book includes new exercises and solutions so you can practice what you've learned while it's still fresh in your mind. Here are just some of the topics covered:

  • data structures
  • minimal matching
  • threading
  • data parsing
  • references
  • objects
  • modules
  • package implementation

If you ask Perl programmers today what book they relied on most when they were learning Perl, you'll find that an overwhelming majority will point to the Llama. With good reason. Other books may teach you to program in Perl, but this book will turn you into a Perl programmer.



Table of Contents:


1. Introduction

     Questions and Answers

     What Does "Perl" Stand For?

     How Can I Get Perl?

     How Do I Make a Perl Program?

     A Whirlwind Tour of Perl


2. Scalar Data



     Perl's Built-in Warnings

     Scalar Variables

     Output with print

     The if Control Structure

     Getting User Input

     The chomp Operator

     The while Control Structure

     The undef Value

     The defined Function


3. Lists and Arrays

     Accessing Elements of an Array
     Special Array Indices

     List Literals

     List Assignment

     Interpolating Arrays into Strings

     The foreach Control Structure

     Scalar and List Context

     <STDIN> in List Context


4. Subroutines

     Defining a Subroutine

     Invoking a Subroutine

     Return Values


     Private Variables in Subroutines

     Variable-Length Parameter Lists

     Notes on Lexical (my) Variables

     The use strict Pragma

     The return Operator

     Non-Scalar Return Values


5. Input and Output

     Input from Standard Input

     Input from the Diamond Operator

     The Invocation Arguments

     Output to Standard Output

     Formatted Output with printf


     Opening a Filehandle

     Fatal Errors with die

     Using Filehandles

     Reopening a Standard Filehandle


6. Hashes

     What Is a Hash?

     Hash Element Access

     Hash Functions

     Typical Use of a Hash


7. In the World of Regular Expressions

     What Are Regular Expressions?

     Using Simple Patterns

     Character Classes


8. Matching with Regular Expressions

     Matches with m//

     Option Modifiers


     The Binding Operator, =~

     Interpolating into Patterns

     The Match Variables

     General Quantifiers


     A Pattern Test Program


9. Processing Text with Regular Expressions

     Substitutions with s///

     The split Operator

     The join Function

     m// in List Context

     More Powerful Regular Expressions


10. More Control Structures

     The unless Control Structure

     The until Control Structure

     Expression Modifiers

     The Naked Block Control Structure

     The elsif Clause

     Autoincrement and Autodecrement

     The for Control Structure

     Loop Controls

     Logical Operators


11. File Tests

     File Test Operators

     The stat and lstat Functions

     The localtime Function

     Bitwise Operators

     Using the Special Underscore Filehandle


12. Directory Operations

     Moving Around the Directory Tree


     An Alternate Syntax for Globbing

     Directory Handles

     Recursive Directory Listing

     Manipulating Files and Directories

     Removing Files

     Renaming Files

     Links and Files

     Making and Removing Directories

     Modifying Permissions

     Changing Ownership

     Changing Timestamps


13. Strings and Sorting

     Finding a Substring with index

     Manipulating a Substring with substr

     Formatting Data with sprintf

     Advanced Sorting


14. Process Management

     The system Function

     The exec Function

     The Environment Variables

     Using Backquotes to Capture Output

     Processes as Filehandles

     Getting Down and Dirty with fork

     Sending and Receiving Signals


15. Perl Modules

     Finding Modules

     Installing Modules

     Using Simple Modules


16. Some Advanced Perl Techniques

     Trapping Errors with eval

     Picking Items from a List with grep

     Transforming Items from a List with map

     Unquoted Hash Keys



A. Exercise Answers

B. Beyond the Llama