Automotive Holiday Deals Books Gift Guide Books Gift Guide Shop Men's Athletic Shoes Learn more nav_sap_plcc_6M_fly_beacon Adele egg_2015 All-New Amazon Fire TV Beauty Gifts Gifts Under $50 Find the Best Purina Pro Plan for Your Pet Amazon Gift Card Offer bf15 bf15 bf15 $30 Off Amazon Echo $30 Off Fire HD 6 Kindle Black Friday Deals Shop Now HTL
Perl Debugged and over one million other books are available for Amazon Kindle. Learn more

Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your email address or mobile phone number.

Buy Used
Condition: Used: Good
Comment: Book may show signs of use around the edges and covers. Otherwise item is in good condition. All items shrink wrapped for protection during shipping.
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Perl Debugged Paperback – March 27, 2001

10 customer reviews

See all 3 formats and editions Hide other formats and editions
New from Used from
"Please retry"
"Please retry"
$21.00 $0.01
Unknown Binding
"Please retry"

Special Offers and Product Promotions

  • Take an Extra 30% Off Any Book: Use promo code HOLIDAY30 at checkout to get an extra 30% off any book for a limited time. Excludes Kindle eBooks and Audible Audiobooks. Restrictions apply. Learn more

Editorial Reviews

From the Inside Flap


Perlness In the world of languages, the country of Perl is the great melting pot which welcomes all cultures, religions, and beliefs. "Give me your tired, your poorly-supported programmers, your huddled masses yearning to be free of artificial limitations," says Perl, and those who land on its shores find an environment where they are no longer hampered by a language designer's whimsical notions of elegant semantics and stifling syntactical purity. Perl's universal availability and ease-of-use make it the most democratic programming language. Unlike many other languages, a relative beginner can write useful programs, whereas effective programmers in other languages normally need to spend a lot longer to learn syntax, operators, and functions. A Perl programmer may possess such expertise, or may be a newcomer who modified some example script to perform a new function. But the newcomer has another problem: lack of debugging skills. Experience forces the canny to develop an innate knack for debugging due to years of accumulated pain. We want to minimize that pain, because we have suffered it. Perl's ease of use allows programmers with little knowledge to create usable, if fragile, code. The amount of time it takes to debug a Perl program can vary dramatically from person to person. Our goal is to help you minimize the development, debugging, and maintenance time you need for your own Perl programs. Do not take the title of this book to imply we are debugging Perl itself in these pages. What few bugs exist in the Perl interpreter are a matter of minute exotica (or exotic minutiae), rapidly squashed by the fine volunteer crew supporting Perl. A more accurate title would have been Debugging Your Perl Programs, but that felt too pedestrian and loses the "unplugged" pun. We wrote this book because we wanted you to see the development process at work. Most books on programming contain carefully crafted examples honed through sweaty practice to work perfectly and stand as mute testimonial to the elegant style of the author. They don't show you the ugly, irritating process it took to get the examples into shape; yet those examples did not in fact spring into existence fully formed from the forehead of their creator. Because you will experience this same process when developing your programs, we want to guide you through it and describe various ways around the embarrassment, humiliation, and surprising pitfalls that stand between you and Great Programming. Within this book, we describe the most common and annoying mistakes a new Perl programmer might make, and then detail the procedures to identify and correct those bugs and any others. You should have some knowledge of Perl; several fine tutorials exist to free us from the onerous responsibility of explaining scalars and arrays and hashes and the like. This preface includes a few references to some of the most useful of these tutorials. We will not attempt to define or describe a proper programming "style." Style is as unique as an individual--but a few general rules create a common reference so that we can easily read each other's programs. Neither is this a "how to program" book. Although we will probe into the mechanics and underpinnings of the general principle of programming at times, it is not our intention to inculcate a complete newcomer with the mindset of the programmer's discipline.

Who Are You? If you've been programming in Perl anywhere from a week to a year and want to speed up your development cycle, this book is for you. We'll also address some issues related to developing in a team. This book is intended to assist those who have started learning Perl by providing practical advice on development practices.

What This Book Covers Here's what you'll find in the rest of this book: Chapter 1: Introduction and a guided tour of the Perl documentation Chapter 2: Developing the right mindset for programming and developing effectively Chapter 3: "Gotchas" in Perl: Working your way around some of the tricky things to understand or get right in Perl programming Chapter 4: Antibugging: How to code defensively Chapter 5: How to instrument your code Chapter 6: How to test your Perl programs Chapter 7: A tour of the perl debugger: our guide to using this built-in tool Chapter 8: Types of syntax error and how to track down their causes Chapter 9: Run-time errors Chapter 10: Semantical errors: When your program appears to work but doesn't do the right thing Chapter 11: How to improve the performance of a resource-hungry (memory, CPU cycles, and so on) program Chapter 12: Tips and pitfalls for people coming to Perl from other languages Chapter 13: Common Gateway Interface (CGI) programming: special tips for debugging this type of Perl program Chapter 14: Conclusion Appendix A: Reference for the Perl debugger commands Appendix B: List of our "Perls of Wisdom" We will spend a lot of time going through examples of problems and how you might debug them.

Getting Perl While this isn't a book about how to install or build perl,1 we owe you at least rudimentary instructions on how to get a perl of your own. For Windows machines, get the free ActivePerl distribution: activeState/ActivePerl/

download.htm For Macintoshes: cpan/ports/index.html#mac For binary distributions for all other machines: cpan/ports/ For the source of perl itself: cpan/src/

Building perl from source on a supported Unix architecture requires just these commands after you download and unpack the right file: ./Configure make make test make install # if the make test succeeds The Configure step asks you zillions of questions, and most people won't have a clue what many of those questions are talking about; but the default answers Configure recommends are usually correct. For educational purposes, you may want to build a perl that has debugging enabled. (Here we refer to a perl that lets you use the special -D flag to enable the output of information that tells you what perl is doing with your program. This has nothing to do with Perl's built-in interactive debugger--which we discuss in Chapter 7--all perls have that.) If you want to do that, build perl from the source, and when Configure asks, " Any additional cc flags? " paste in whatever it already shows between brackets as a default and add " -DDEBUGGING ". See the perlrun POD page (explained later) for more information. We occasionally refer to modules that are not part of the core Perl distribution but that can be found on the Comprehensive Perl Archive Network (CPAN). For instructions on how to find, download, and install a module from CPAN, see cpan/misc/cpan-faq.html.

For Further Reference Visit this book's Web site at perldebugged . Get introductions to Perl programming from the following (in rough order of usefulness): Learning Perl, 2nd ed., by Randal Schwartz and Tom Christiansen (O'Reilly & Associates, 1997) Programming Perl, 3rd ed., by Larry Wall, Tom Christiansen, and Jon Orwant (O'Reilly & Associates, 2000) Perl, the Programmer's Companion, by Nigel Chapman (John Wiley & Sons, 1998) Elements of Programming with Perl, by Andrew Johnson (Manning Publications, 1999) Effective Perl Programming, by Joseph Hall with Randal Schwartz (Addison-Wesley, 1998)

Perl Versions In this book, we refer to the latest "stable" version of Perl, which is 5.6.0 as of this writing. The vast majority of what we say works unaltered on older versions of Perl 5, but not Perl 4. If you use any version of Perl older than 5.004_04, you should upgrade; 5.003 had issues such as security problems and memory leaks. You can find out the version number of your perl by passing it the -v flag: % perl -v This is perl, v5.6.0 built for i586-linux Copyright 1987-2000, Larry Wall ... Perl won't execute a script named on the command line if the -v flag is present. A more detailed description of your perl's configuration can be obtained with the -V flag; if you issue a bug report, the facility for doing that automatically includes this information with your report. A separate development track exists for Perl; you will know if you have one of those versions because the release number either contains an underscore followed by a number of 50 or larger or contains an odd number between two dots. Nothing is guaranteed to work in such a distribution; it's intended for testing. If you find you have one and you didn't want it, the person who downloaded your perl probably visited the wrong FTP link. It was announced at the fourth annual Perl Conference (Monterey, California, July 2000) that Perl 6 development was beginning in earnest, and backward compatibility need not stand in the way of doing good things. As of press time, discussion continues on new language features.


From the Back Cover

"This book was a joy to read. It covered all sorts of techniques for debugging, including 'defensive' paradigms that will eliminate bugs in the first place. As coach of the USA Programming Team, I find the most difficult thing to teach is debugging. This is the first text I've even heard of that attacks the problem. It does a fine job. Please encourage these guys to write more."–Rob Kolstad

Perl Debugged provides the expertise and solutions developers require for coding better, faster, and more reliably in Perl. Focusing on debugging, the most vexing aspect of programming in Perl, this example-rich reference and how-to guide minimizes development, troubleshooting, and maintenance time resulting in the creation of elegant and error-free Perl code.

Designed for the novice to intermediate software developer, Perl Debugged will save the programmer time and frustration in debugging Perl programs. Based on the authors’ extensive experience with the language, this book guides developers through the entire programming process, tackling the benefits, plights, and pitfalls of Perl programming. Beginning with a guided tour of the Perl documentation, the book progresses to debugging, testing, and performance issues, and also devotes a chapter to CGI programming in Perl. Throughout the book, the authors espouse defensible paradigms for improving the accuracy and performance of Perl code. In addition, Perl Debugged includes Scott and Wright’s "Perls of Wisdom" which summarize key ideas from each of the chapters, and an appendix containing a comprehensive listing of Perl debugger commands.

In this exceptional reference and debugging guide, the authors cover every aspect of efficient Perl programming, including:

* CGI programming–special tips for debugging this type of Perl program
* How to develop the proper mindset for developing and programming effectively in Perl
* Perl "gotchas"–how to understand them, work around them, and avoid them
* "Antibugging"–the authors’ rules of thumb on how to code defensively
* The Perl debugger –the authors’ guide to using this Perl built-in
* Common syntax errors and how to track down their causes
* Semantical errors–why code may appear correct but the programs do not work
* How to improve the performance of resource-hungry programs
* Tips and advice for programmers moving to Perl from other language environments

Focusing on the process of Perl programming and guidelines for identifying and correcting mistakes, Perl Debugged helps the developer to write better Perl programs immediately and become better programmers in general.


Hero Quick Promo
Holiday Deals in Kindle Books
Save up to 85% on more than 1,000 Kindle Books. These deals are valid until November 30, 2015. Learn more

Product Details

  • Paperback: 288 pages
  • Publisher: Addison Wesley Publishing Company; 1st edition (March 27, 2001)
  • Language: English
  • ISBN-10: 0201700549
  • ISBN-13: 978-0201700541
  • Product Dimensions: 9.1 x 7.3 x 0.7 inches
  • Shipping Weight: 1.3 pounds
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (10 customer reviews)
  • Amazon Best Sellers Rank: #2,384,410 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

5 star
4 star
3 star
2 star
1 star
See all 10 customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

23 of 24 people found the following review helpful By joe_n_bloe on May 14, 2001
Format: Paperback
I'm tremendously pleased with Perl Debugged. It's half a book about Perl debugging, and half a book with more general advice, all pleasantly blended together. Peter and Ed take you on an unrivaled tour of the ups and downs of Perl debugging. It's sort of like Effective Perl Programming's "Debugging" chapter except hugely and brilliantly expanded. It's comprehensive and imaginative without being pedantic. It covers the Perl debugger (of course), it covers the different types of errors you'll encounter in Perl programs, it covers debugging strategies, and (very important) it covers the always-icky topic of debugging CGI programs. And some other topics ....
Even experienced Perl programmers will enjoy reading this book. You may think you've seen it all but I guarantee you that you haven't seen all of the examples of weirdness featured herein. It reminds me of Kon and Bal's debugging "brainteasers" in Apple's now defunct Develop magazine.
I *highly* recommend Perl Debugged to anyone at the beginning or intermediate stage in Perl programming, particularly to programmers who have less than 2-4 years of debugging experience in general. An experienced programmer, on the other hand, will want to buy a copy (copies?) to browse and then hand to his junior co-worker(s) with stern instructions to "read first, code later." (Reminds me of the time I bought Bugs in Writing.)
Apparently the authors have a way with words. The prose is unusually good--not just by the standards of technical books--colorful, extremely clear, and enjoyable to read. (The illustrations by Peter's sister-in-law are great.) About the only thing that "bugs" me is the authors' use of "semantical" in preference to "semantic."
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
12 of 12 people found the following review helpful By Philip R. Heath TOP 1000 REVIEWERVINE VOICE on April 2, 2002
Format: Paperback
This book is a must for perl programmers. Throughout the book, the authors develop 46 "Perls of Wisdom". These guidelines will help you write code with fewer bugs and help you fix bugs when they do come up - and they will! I tend to enjoy software books with a little humor to them, and this one fits the bill. Here are the highlights from the book:
Ch. 1-
Gives some background on the perl language and good tips on accessing the documentation for various parts of perl on various platforms.
Ch. 2-
Kind of a touchy/feely chapter; however, there is wisdom in it. It helps you understand how your attitudes, beliefs, and behaviors affect your code. Don't skip it.
Ch. 3-
This chapter gives you some good advice on how to avoid bugs in your program. One of these is documentation. I've found that documenting something makes you think about things you otherwise might not have.
Ch. 4-
Gives some common sources of bugs in perl including syntax, precedence, and regular expressions.
Ch. 5-
How to get formatted printouts of variables in your using Data::Dumper. This is a step up from print statements, and is easy to use.
Ch. 6-
Includes good information on testing your code and the perl modules available to assit you in test harnesses and coverage tests.
Ch. 7-
This is the gem of the book. It is a step by step guide to using the perl debugger. If reading man pages makes your head hurt, you will find this tutorial much more user friendly.
Ch. 8-
An excellent chapter on interpreting the syntax error reports that perl spits out.
Ch. 9-
The runtime exception counterpart to the previous chapter. It contains a discussion of perl exception handling vs. that of java or c++.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
3 of 3 people found the following review helpful By Thing with a hook on July 16, 2007
Format: Paperback
The ideal reader of this book would be someone who's been exposed to most of Perl and knows about packages, modules and references (the Llama/Alpaca combo, for instance), but who isn't necessarily experienced with other languages. If you are that sort of person, this should be close to the top of your Perl reading list.

There's an abundance of good material to be found here -- yes, there's an entire chapter on working the Perl debugger, but don't let the book's title fool you, it's not just about debugging. There's also advice on code style and layout, common idioms and features of Perl such as the behaviour of $_, autovivification, local, and optional parentheses.

Additionally, there are introductions to logging (in the context of debug flags), unit testing, code coverage, and error handling. Rounding off the book are chapters on benchmarking, profiling and some simple optimisation techniques (e.g. don't shell out to an external program if you can do the task in perl, use pipes and fork instead of writing to a temporary file), a chapter of tips for programmers coming to Perl from Java, shell scripting, C, C++ and Fortran. Finally there's a chapter covering debugging CGI programs.

Throughout, there's also some more philosophical (or touchy-feely) material, with exhortations to being a good citizen of the Republic of Perl and your work environment. If you're a more experienced developer, and you've read the likes of
...Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews

Want to discover more products? Check out this page to see more: fashion design software