Paul Rubin wrote:
> John Nagle <[EMAIL PROTECTED]> writes:
>> In a language with few declarations, it's probably best not to
>> have too many different nested scopes. Python has a reasonable
>> compromise in this area. Functions and classes have a scope, but
>> "if" and "for" do not. That works adequately.
>
> I think Perl did this pretty good. If you say "my $i" that declares
> $i to have block scope, and it's considered good practice to do this,
> but it's not required. You can say "for (my $i=0; $i < 5; $i++) { ... }"
> and that gives $i the same scope as the for loop. Come to think of it
> you can do something similar in C++.
How then might one define a block? All lines at the same indent level
and the lines nested within those lines?
i = 5
for my i in xrange(4):
if i: # skips first when i is 0
my i = 100
if i:
print i # of course 100
break
print i # i is between 0 & 3 here
print i # i is 5 here
Doesn't leave a particularly bad taste in one's mouth, I guess (except
for the intended abuse).
James
--
http://mail.python.org/mailman/listinfo/python-list