Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Legitimate use for combined 'local' and 'our'

by jettero (Monsignor)
on Nov 15, 2010 at 11:04 UTC ( #871446=note: print w/replies, xml ) Need Help??

in reply to Legitimate use for combined 'local' and 'our'

It may be that local doesn't do what you think it does. It would make a lot more sense to write something like this:
package blarg; use strict; use warnings; sub hrmph { our $global = "blarg"; print "$global\n"; local $global; $global = "hrm, just in here!"; print "$global\n"; # when this scope is done, global goes back to "blarg" automatical +ly }

Note that use vars is pretty much the same thing as our except that the package variable isn't bound locally to a sub as a pseudo-lexical. But if it was a case of use vars local would work the same way. It doesn't make the variable lexical, it makes the values you use in it local to the scope.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://871446]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (9)
As of 2018-02-21 10:23 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (277 votes). Check out past polls.