Skip to content

Comment on Evils of the For Loop in Rubyparent

Comments

    for my $a (1..2) {
        $b = 2;
    }
    print $a;
Prints nothing. (Of course, with warnings or strict this complains about both $b and the second $a, as they're either never used or undefined.)

Block scope is very nice. Maybe I don't use enough other OO languages to really grok why you'd want it any other way. What's the benefit to having method rather than block scope in such a context? I don't remember hating not having block scope in Python when I switched for about three or four years, but I didn't really use it in Perl at that point either, so I might miss it now that I do.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.