http://qs1969.pair.com?node_id=1074669


in reply to Re: Importing variables (not functions) from in-file packages
in thread Importing variables (not functions) from in-file packages

Cool. It does indeed work. But why does strict cause the compiler crap-out on $globalVar but accept $::globalVar. Isn't $globalVar (when not defined as a lexical variable) just a shortcut for the (main) package variable $::globalVar aka $main::globalVar? Or is the "shortcut" only known at runtime...

Replies are listed 'Best First'.
Re^3: Importing variables (not functions) from in-file packages
by AnomalousMonk (Archbishop) on Feb 12, 2014 at 20:29 UTC
    Isn't $globalVar (when not defined as a lexical variable) just a shortcut for the (main) package variable $::globalVar aka $main::globalVar?

    It is a 'shortcut' only if you make the lexical declaration
        our $globalVar;
    Then if the first access of the package variable  $globalVar is after the declaration, everybody's happy; otherwise, the variable name must be fully qualified. See our.

Re^3: Importing variables (not functions) from in-file packages
by Anonymous Monk on Feb 12, 2014 at 19:55 UTC
    Because that is what you asked it to do with  use strict 'vars';