I'll admit that this is pretty much just a guess. I think it
may have something to do with the fact that the for
construction essentially builds a list from <DATA>,
which it then iterates over, while while
the data items one at a time into $_. I could very well be
very wrong, but I think this may be a place to start looking
for an answer.
In looking at converter's reply
in the thread, I see that the correct answer is given there.
I wonder if that has something to do with the fact that the
construction builds a hidden list? Perl_guts
wizards can fill us in, perhaps.