On Thu, Jul 11, 2002 at 10:37:27PM +0100, Nicholas Clark wrote:
> Is there any specific case where you can't treat
>
> {
> my $foo = 12;
> print $foo;
> my $foo = "ho";
> print $foo;
> }
>
> as
>
> {
> my $foo = 12;
> print $foo;
> {
> my $foo = "ho";
> print $foo;
> }
> }
Well, it B*gg*rs up %MY::
The currently planned semantics are:
{
my $x;
exists %MY::{'$x'}; # true;
}
and
{
my $x;
{
exists %MY::{'$x'}; # false
}
}
so consider:
{
my $x;
my $dup;
my $dup;
exists %MY::{'$x'}; # true?
}
which invisibly becomes
{
my $x;
my $dup;
{
my $dup;
exists %MY::{'$x'}; # false?
}
}
--
"But Sidley Park is already a picture, and a most amiable picture too.
The slopes are green and gentle. The trees are companionably grouped at
intervals that show them to advantage. The rill is a serpentine ribbon
unwound from the lake peaceably contained by meadows on which the right
amount of sheep are tastefully arranged." Lady Croom - Arcadia