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

Reply via email to