in reply to Uninitialized or not?

Blind guess and baseless intuition: I suspect it's because of the aliasing behaviour of for, while assigning causes Perl to attempt an actual copy.

Makeshifts last the longest.