package Book::World3; use Symbol (); my @args = qw(now later); for my $arg (@args) { my $stuff = do_work($arg); if ($stuff) { print "do your work $arg\n"; } } sub do_work { my($var) = @_; return undef unless $var; my $sym = Symbol::gensym(); my $qvar = Symbol::qualify($var); my $retval = { sym => $sym, var => $qvar, }; return $retval; } 1;