On Thu, Nov 14, 2002 at 04:28:17AM +0200, [EMAIL PROTECTED] wrote: : > : > : will it be an error to declare it as "our $_" ; : > : > No, in this case, $_ is still considered a lexical, but it just happens : > to be aliased to a variable in the current package. : > : : which variable ? it seems that "our $_" is something like that (???) : : my $_ # implicit -- at the beginning of file ( or actually any other : # lexical scope : . : . : . : our $_ ; # translated to : our $Main::_ := $_ ;
No, that's backwards. : . # or $_ := $Main::_ More like that, except a new lexical name is introduced as with "my". : ( i have in mind that "our $thing " is something like this : "dont : worry , $thing is variable from current package ) Well, it has that effect, but it does so by pretending it's a lexical. : but that would be strange , because I thaought that my/our manipulate : names in symbol-table , while aliasing is compleatly orthogonal to : that. or "our $_" is just special case with perl making additional : magic . No special magic. For any variable, saying package P; our $foo; is very much like my $foo ::= $P::foo Larry