Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re^2: I usually debug via...

by Anonymous Monk
on Feb 22, 2005 at 18:02 UTC ( #433428=note: print w/replies, xml ) Need Help??

in reply to Re: I usually debug via...
in thread I usually debug via...

The perl debugger is very poorly documented, but it's quite useful. Unlike ad-hoc trace statements, you don't risk introducing bugs by modifying your code. You also don't have to remember to take *out* all your trace statements again: the code is only modified to fix bugs or add features. You can toss breakpoints in to test branches, examine variables, or change them to see if fixing the data fixes the bug you're encountering. You can quickly examine complex data structures to see if the data you're looking for is in there: or if there's any data at all. You can't go backwards, which is frustrating, but you *can* step through an arbitrary function as it executes, which is almost as good. That means that if you have a function with no side effects, you can run through the code, find the function call that is wrong, and then single step through the function looking for why it's wrong, without re-rerunning the program. Re-running the program can be tedious, if the program runs slowly, or has a long start up time. -- AC

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://433428]
[Corion]: They are aware of so many facts, they created systems to abstract them ;)

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (8)
As of 2017-05-30 07:42 GMT
Find Nodes?
    Voting Booth?