in reply to Variable Scope in a Signal Handler?

Yes, if you use a global variable or if your signal handler is a closure with a lexical in the scope you're after. Try this simple test and see if it prints out what you expect:
{ my $var = 1; $SIG{HUP} = sub { print "HUP; \$var=$var\n"; $var++; }; } print "in main program, \$var=$var\n"; kill('HUP', $$); print "in main program, \$var=$var\n"; kill('HUP', $$); print "in main program, \$var=$var\n";
Then try moving $var into the main program and declare it with 'use vars'.