for (1..10){ print "Before nested \$_ setter: $_\n"; open JUNK, 'junk' or die "Nope: $!"; while(){ # Do nothing, just let $_ get set } close JUNK; print "After nested \$_ setter: $_\n"; }