Also along these lines, I like to use lines that start with if 0 and if 1 as additional debugging tools. I particularly use this approach with a little subroutine that invokes Dumper (I could probably do this directly, but anyway). Again, when I want the program to dump the object, it's easy to flip the '0' to '1', and when I'm done with the need to see such output, I can easily find all patterns of ^if 1 and flip the '1' back to '0'.
For example, my "main" script might contain the following:
use strict;
require 'gen_subs.pl';
my $foo = { 'abc', 123, 'def', 456 };
gs::do_dumper( 'foo423:', $foo ) # 423 a silly, easy-to-find label
if 0;
and a helper file/libary named 'gen_subs.pl' might contain:
package gs;
use strict;
use Data::Dumper;
sub do_dumper {
my ( $label, $variable ) = @_;
my $msg = Dumper( $variable );
warn "$label:\n$msg\n";
}
|