On Mon, Jan 21, 2002 at 12:50:38PM -0800, Larry Wall wrote: > : What's the chance that it could be considered so? > > In most other languages, you wouldn't even have the opportunity to put > a declaration into the conditional. You'd have to say something like: > > my $line = <$in>; > if $line ne "" { ... } > > Since > > if my $line = <$in> { ... } > > is Perl shorthand for those two lines, I don't see how one can say that > the variable is more related to the inside than the outside of the block. > One can claim that the code after the C<if> may not be interested in > C<$line>, but the same is true of the block itself! The conditional > only decides whether the block runs. It's not part of the block.
But are we not at risk of introducing another form of my $x if 0; with if my $one = <ONE> { ... } elsif my $two = <TWO> { } if ($two) { ... } Graham.