in reply to Reassigning $_ in loop doesn't stick

bennymack,
See eval.

In both forms, the value returned is the value of the last expression evaluated inside the mini-program; a return statement may be also used, just as with subroutines.

Would you think this was weird behavior if your code looked like?:

for (foo()) { # ... } sub foo { return @{ $aref }; }

Cheers - L~R