in reply to Re: "do" what?
in thread "do" what?

Because my globals: lexicals defined outside any blocks are scoped to their file. The file you do'd was compiled without strictures and created a different, global %config that it populated. Inside your own file, strict is happy, because you cannot see the global %config.

Makeshifts last the longest.

Replies are listed 'Best First'.
Re: Re^2: "do" what?
by larsen (Parson) on Oct 22, 2002 at 10:02 UTC

    Because my globals are scoped to a file

    Maybe I misunderstood your sentence, but my creates a lexical, not a global. The difference is perhaps subtle in this thread, but leads to important issues. I often use Coping with Scoping as a reference for this kind of topics.

    Update: Maybe I should correct and rephrase this reply. The opposition is between lexical and package variables. Since package variables are global, I thought that saying that a my variable could be global could drive to misunderstanding.

      Sorry, you are right. My point is correct, but I mixed up the terms.

      Makeshifts last the longest.