Programming Perl

Programming Perl : There's More Than One Way To Do It

4.04 (2,125 ratings by Goodreads)
By (author)  , By (author)  , By (author) 

List price: US$49.99

Currently unavailable

Add to wishlist

AbeBooks may have this title (opens in new window).

Try AbeBooks


Perl is a powerful programming language that has grown in popularity since it first appeared in 1988. The first edition of this book, Programming Perl, hit the shelves in 1990, and was quickly adopted as the undisputed bible of the language. Since then, Perl has grown with the times, and so has this book. Programming Perl is not just a book about Perl. It is also a unique introduction to the language and its culture, as one might expect only from its authors. Larry Wall is the inventor of Perl, and provides a unique perspective on the evolution of Perl and its future direction. Tom Christiansen was one of the first champions of the language, and lives and breathes the complexities of Perl internals as few other mortals do. Jon Orwant is the editor of The Perl Journal, which has brought together the Perl community as a common forum for new developments in Perl. Any Perl book can show the syntax of Perl's functions, but only this one is a comprehensive guide to all the nooks and crannies of the language. Any Perl book can explain typeglobs, pseudohashes, and closures, but only this one shows how they really work.
Any Perl book can say that my is faster than local, but only this one explains why. Any Perl book can have a title, but only this book is affectionately known by all Perl programmers as "The Camel." This third edition of Programming Perl has been expanded to cover version 5.6 of this maturing language. New topics include threading, the compiler, Unicode, and other new features that have been added since the previous edition.
show more

Product details

  • Paperback | 978 pages
  • 177.8 x 231.14 x 58.42mm | 1,700.96g
  • Sebastopol, United States
  • English
  • Revised
  • 3rd Revised edition
  • black & white illustrations
  • 0596000278
  • 9780596000271
  • 293,300

Table of contents

Preface PART 1: Overview Chapter 1. An Overview of Perl Getting Started Natural and Artificial Languages An Average Example Filehandles Operators Control Structures Regular Expressions List Processing What You Don't Know Won't Hurt You (Much) PART 2: The Gory Details Chapter 2. Bits and Pieces Atoms Molecules Built-in Data Types Variables Names Scalar Values Context List Values and Arrays Hashes Typeglobs and Filehandles Input Operators Chapter 3. Unary and Binary Operators Terms and List Operators (Leftward) The Arrow Operator Autoincrement and Autodecrement Exponentiation Ideographic Unary Operators Binding Operators Multiplicative Operators Additive Operators Shift Operators Named Unary and File Test Operators Relational Operators Equality Operators Bitwise Operators C-Style Logical (Short-Circuit) Operators Range Operator Conditional Operator Assignment Operators Comma Operators List Operators (Rightward) Logical and, or, not, and xor C Operators Missing from Perl Chapter 4. Statements and Declarations Simple Statements Compound Statements if and unless Statements Loop Statements Bare Blocks goto Global Declarations Scoped Declarations Pragmas Chapter 5. Pattern Matching The Regular Expression Bestiary Pattern-Matching Operators Metacharacters and Metasymbols Character Classes Quantifiers Positions Capturing and Clustering Alternation Staying in Control Fancy Patterns Chapter 6. Subroutines Syntax Semantics Passing References Prototypes Subroutine Attributes Chapter 7. Formats Format Variables Footers Chapter 8. References What Is a Reference? Creating References Using Hard References Symbolic References Braces, Brackets, and Quoting Chapter 9. Data Structures Arrays of Arrays Hashes of Arrays Arrays of Hashes Hashes of Hashes Hashes of Functions More Elaborate Records Saving Data Structures Chapter 10. Packages Symbol Tables Autoloading Chapter 11. Modules Using Modules Creating Modules Overriding Built-in Functions Chapter 12. Objects Brief Refresher on Object-Oriented Lingo Perl's Object System Method Invocation Object Construction Class Inheritance Instance Destructors Managing Instance Data Managing Class Data Summary Chapter 13. Overloading The overload Pragma Overload Handlers Overloadable Operators The Copy Constructor (=) When an Overload Handler Is Missing (nomethod and fallback) Overloading Constants Public Overload Functions Inheritance and Overloading Run-Time Overloading Overloading Diagnostics Chapter 14. Tied Variables Tying Scalars Tying Arrays Tying Hashes Tying Filehandles A Subtle Untying Trap Tie Modules on CPAN PART 3: Perl as Technology Chapter 15. Unicode Building Character Effects of Character Semantics Caution, \[ren2bold] Working Chapter 16. Interprocess Communication Signals Files Pipes System V IPC Sockets Chapter 17. Threads The Process Model The Thread Model Chapter 18. Compiling The Life Cycle of a Perl Program Compiling Your Code Executing Your Code Compiler Backends Code Generators Code Development Tools Avant-Garde Compiler, Retro Interpreter Chapter 19. The Command-Line Interface Command Processing Environment Variables Chapter 20. The Perl Debugger Using the Debugger Debugger Commands Debugger Customization Unattended Execution Debugger Support The Perl Profiler Chapter 21. Internals and Externals How Perl Works Internal Data Types Extending Perl (Using C from Perl) Embedding Perl (Using Perl from C) The Moral of the Story PART 4: Perl as Culture Chapter 22. CPAN The CPAN modules Directory Using CPAN Modules Creating CPAN Modules Chapter 23. Security Handling Insecure Data Handling Timing Glitches Handling Insecure Code Chapter 24. Common Practices Common Goofs for Novices Efficiency Programming with Style Fluent Perl Program Generation Chapter 25. Portable Perl Newlines Endianness and Number Width Files and Filesystems System Interaction Interprocess Communication (IPC) External Subroutines (XS) Standard Modules Dates and Times Internationalization Style Chapter 26. Plain Old Documentation Pod in a Nutshell Pod Translators and Modules Writing Your Own Pod Tools Pod Pitfalls Documenting Your Perl Programs Chapter 27. Perl Culture History Made Practical Perl Poetry PART 5: Reference Material Chapter 28. Special Names Special Names Grouped by Type Special Variables in Alphabetical Order Chapter 29. Functions Perl Functions by Category Perl Functions in Alphabetical Order Chapter 30. The Standard Perl Library Library Science A Tour of the Perl Library Chapter 31. Pragmatic Modules use attributes use autouse use base use blib use bytes use charnames use constant use diagnostics use fields use filetest use integer use less use lib use locale use open use overload use re use sigtrap use strict use subs use vars use warnings Chapter 32. Standard Modules Listings by Type Benchmark Carp CGI CGI::Carp Class::Struct Config CPAN Cwd Data::Dumper DB_File Dumpvalue English Errno Exporter Fatal Fcntl File::Basename File::Compare File::Copy File::Find File::Glob File::Spec File::stat File::Temp FileHandle Getopt::Long Getopt::Std IO::Socket IPC::Open2 IPC::Open3 Math::BigInt Math::Complex Math::Trig Net::hostent POSIX Safe Socket Symbol Sys::Hostname Sys::Syslog Term::Cap Text::Wrap Time::Local Time::localtime User::grent User::pwent Chapter 33. Diagnostic Messages Glossary Index
show more

Review quote

"Im ersten Teil des Buches erhält der Perl-Neuling einen umfassenden Überblick über die Sprache, ihre Eigenschaften und Stärken. (...)
Weiter geht es mit dem zweiten Teil des Buches, wo dann im Detail und auf rund 350 Seiten all das Handwerkszeug ausführlich beschrieben wird, mit dem man sich als Programmierer die Zeit vertreibt: Operatoren, Reguläre Ausdrücke, Funktionen, Datenstrukturen und vieles mehr sind hier die Themen.
In vielen Büchern wäre wohl anschließend Schluß und allein für diese Kapitel ist das Buch vermutlich seinen Preis wert, allerdings geben sich die Autoren damit nicht zufrieden, sondern hängen noch Teile über Perl als Technologie (...) sowie Perl als Kultur (...) an. Nicht vergessen will ich hier den umfangreichen Referenzteil zur Sprache (...), der den Abschluß des Buches bildet.
Soviel als grober Überblick zum Inhalt, ich möchte an dieser Stelle noch einige Besonderheiten herausstreichen, die mir beim Lesen des Buches aufgefallen sind: Da wäre zum Ersten der wirklich erfrischende Stil der Autoren zu erwähnen, die es mehr als einmal geschafft haben, mich zum Lachen zu bringen. Auch die verwendeten Beispiele sind einprägsam und lassen den Humor der Autoren an mehr als einer Stelle durchblicken, ebenso wie die oft und gern eingestreuten Fußnoten im Text, die man sich nicht entgehen lassen sollte." -- Linux Usergroup Kassel, 04/2005
Lesen Sie die vollständige Rezension unter:
show more

About Jon Orwant

Larry Wall is the inventor of Perl. He has also authored some other popular free programs available for Unix, including the rn news reader and the ubiquitous patch program. By training, Larry is actually a linguist, having wandered about both U.C. Berkeley and U.C.L.A. as a grad student. Over the course of years, he has spent time at Unisys, JPL, NetLabs, and Seagate, playing with everything from discrete event simulators to network-management systems, with the occasional spacecraft thrown in. It was at Unisys, while Larry was trying to glue together a bicoastal configuration management system over a 1200 baud encrypted link using a hacked-over version of Netnews, that Perl was born. Larry currently works for O'Reilly & Associates. Tom Christiansen is a freelance consultant specializing in Perl training and writing. Tom has been involved with Perl since day zero of its initial public release in 1987. Lead author of The Perl Cookbook, co-author of Programming Perl, Learning Perl, and Learning Perl on Win32 Systems, Tom is also the major caretaker of Perl's online documentation. He holds undergraduate degrees in computer science and Spanish and a master's in computer science. He now lives in Boulder, Colorado. Jon Orwant is chief technology officer of O'Reilly & Associates and editor-in-chief of The Perl Journal. He holds a Ph.D. from the MIT Media Laboratory and is co-author of O'Reilly's Mastering Algorithms with Perl.
show more

Rating details

2,125 ratings
4.04 out of 5 stars
5 38% (814)
4 36% (756)
3 20% (426)
2 4% (92)
1 2% (37)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X