http://www.perlmonks.org?node_id=80866


in reply to Work Backup

I prefer

sub printlog { print LOG @_ unless $nolog; } printlog "======== done =========\n";

to

print LOG "======== done =========\n" unless $nolog;

as it makes for less clutter. It is also beneficial in that, with a little more work, $nolog doesn't have to pollute the namespace.

BEGIN { my $nolog = 0; sub setlog { $nolog = shift; } sub printlog { print LOG @_ unless $nolog; } } setlog 1; printlog "======== done =========\n";

I like to generalise this functionality to handle debug/production screen output and/or log file output.


--
g r i n d e r