in reply to debug statements
If you use a constant sub (declared with the constant pragma) then the code should get optimized away at compile time.
use constant DEBUG => 0;
print "DEBUG: JINKIES!\n" if DEBUG();
There's also an evil live comments module (specially formatted text in comments is printed as debugging output) that someone wrote but the name of which escapes me at the moment . . .
Update: Smart::Comments, that was it. Of course that gets the usual "source filters are teh debil" warnings.