bookreview
jlawrenc
<table border="1">
<tr><td colspan="2"><b>Debugging Perl by Martin Brown - Snapshot</b></td></tr>
<tr><td width="50%"><b>The good</b>
<ul>
<li>Covers general Perl traps and some internals
<li>Offers suggestions for programming style and design
<li>Ideas for writing more reliable and maintainable code
<li>Tips for cpu and memory optimizations
<li>Platform specific issues - particularily Windows
</ul>
</td>
<td width="50%"><b>The bad</b>
<ul>
<li>Rewarms existing documentation such as [perltrap] and [perldiag]
<li>Some typos and errors
<li>Thin coverage of actually using the Perl Debugger
<li>Material strays from the bounds of debugging and optimization and style
</td>
</tr>
</table>
As Perl programmers we can never work hard enough on writing reliable and, dare I say, bug free programs.
I feel Martin Brown's book Debugging Perl would be a suppliment for someone so motivated.<p>
Although the title suggests a 1000 and 1 ways to use the Perl debugger, it is more than that. It is about
techniques and approaches to write code with less bugs in addition to debugging existing code. Brown
provides coverage of Perl internals topics, programming style and techniques. He also addresses some issues
to do with code optimization and efficiency issues.<p>
Prior to reading Debugging Perl I was not aware of the multitude of debugging output flags that you can use
when executing a Perl program. I have dabbled with other subjects such as profiling and compiler backends,
but was pleased to see Brown covering these and adding to my understanding of them.
The term debugging is a loaded one and subject to many interpretations. For some debugging might mean
findind the failure in their program. A syntax error or a runtime error. Others it might be trying to
figure out why their memory is getting chewed up or they are running short of CPU time. You might even
be contemplating bugs waiting to happen in someones scary code.<p>
Granted, we all have our own programming styles. And from that perspective I view Brown's book as:
<ol>
<li>alternate explainations on familiar Perl topics<br>such as: Perl internals and traps
<li>suggested coding styles
<li>suggestions on reliable coding techniques
<li>an introduction to topics you might have skipped in the past
</ol>
With a subject as broad as debugging and reliable coding you are going to have to pick and choose
what is important to you and what you will ultimately decide to adopt and what you will disregard.<p>
All and all, I would suggest that this is an solid supplement to your collection of O'Reilly books and is of
value to those who wish to become a better and better Perl programmer. Scan it over the next time you're at
your local bookstore and decide for yourself!
<pre>
Table of Contents for Debugging Perl
Chapter 1: Introduction.
Part I: Perl Logic and Syntax.
Chapter 2: How Perl Parses a Statement.
Chapter 3: Variable Problems.
Chapter 4: Regular Expression Traps.
Chapter 5: Using Abstraction as a Design Methodology.
Chapter 6: Language/Platform Migration Guide.
Part II: Error Trapping.
Chapter 7: Basic Error Trapping.
Chapter 8: Using Pragmas and Warnings.
Chapter 9: Manual Degbugging Techniques.
Chapter 10: The Perl Debugger.
Part III: Optimizing Your Code.
Chapter 11: Manual Optimization.
Chapter 12: Automatic Optimization.
Part IV: Testing Your Code.
Chapter 13: Building a Test Harness.
Chapter 14: Breaking Your Code.
Part V: Appendices.
</pre>
<b>Update:</b> Read Linux Journal's review that [jmcnamara]
so excellently supplied. After reading Paul's comments and
I revised my review. Although, I feel that Paul's review
is pretty harsh I can see how some people might see
the book from his perspective. Personally, I still feel
that Debugging Perl has value in my library and has given
me my money and time's worth.
A guide to writing more troublefree code and finding problems in the code you have.
0072126760