our $DoDebug = 1 ; no strict 'refs'; sub dynConf{ # args are like "DoDebug" , 0 my ($varName, $varVal) = @_; if ( defined ${$varName}){ # $DoDebug in symbol table ${$varName} = $varVal; # DoDebug=0; }else{ say "Variable $varName is not defined"; } } #### ... if ( defined $Main::VerboseLogging) { # some detailed logging } --or-- if (defined BlackList::){ # the Blacklist.pm package is loaded as well }