sub gensym () { my $name = "GEN" . $genseq++; my $ref = \*{$genpkg . $name}; delete $$genpkg{$name}; $ref; } #### { my $glob = gensym() ; ${*$glob} = 123 ; print "SCOPED: " . "${*$glob}\n" ; } print "OUT: " . ${*Symbol::GEN0} . "\n"; #### SCOPED: 123 OUT: 123