Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Re: How to use variables from other package?

by Vennis (Pilgrim)
on Apr 28, 2003 at 07:46 UTC ( [id://253618]=note: print w/replies, xml ) Need Help??


in reply to Re: How to use variables from other package?
in thread How to use variables from other package?

I consider this one of the most safest. Mainly because you will get an error message when you make a typo. Further i think it gives the best overview without juggling with main and module variables.

Q: Why did the Perlmonk cross the road?
A: He wanted to escape the match.

  • Comment on Re: Re: How to use variables from other package?

Replies are listed 'Best First'.
Re^3: How to use variables from other package? (guaranteed compile time error)
by Aristotle (Chancellor) on Apr 28, 2003 at 10:37 UTC
    Exporting the variables will lead to an error thrown for any typo under strict as well, and it is always thrown at compile time, while that isn't guaranteed for the function.

    Makeshifts last the longest.

      Good point Aristotle. The only point I was trying to make is that he could try exporting the variable value (since the name is unimportant) via function/method. It seems the safest way considering that you don't always want to step on someone else's toes with variable names.

      I've always been wary of things like  $pkg::var. If I can avoid it with the use of a function, I do. I never liked trying to remember all of the package variables from a package I didn't write. If you're using/writing a module that is OO-based, you should provide a method for getting the value of a certain attribute. And, even if you're writing something non-OO, you should _STILL_ provide some way of getting to a value without making your user remember a particular variable name (of course the exceptions to that rule are the common names, like $VERSION). At least, that's what I've always felt.

      Theodore Charles III
      Network Administrator
      Los Angeles Senior High
      email->secon_kun@hotmail.com
      perl -e "map{print++$_}split//,Mdbnr;"
        It boils down to remembering a function name instead of a variable name though, so I don't know where the win is. The value can't be altered, true.

        Makeshifts last the longest.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://253618]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (5)
As of 2024-04-18 18:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found