RE: How to put a global variable in a package, accessible to users of that package?



From: mrstevegross [mailto:mrstevegross@xxxxxxxxx]
Sent: 30 October 2008 18:43
To: beginners@xxxxxxxx
Subject: How to put a global variable in a package, accessible to
users of
that package?

I have a package named "Foo" in which I want to define some package-
level constants (such as $VAR="soemval"). I want those constants
available to users of package Foo, so the following code would work:

=== foo.pl ===
package foo;
use constant VAR => "someval";

=== bar.pl ===
use foo;
print $foo::VAR;

It doesn't appear to be working; it compiles ok, but it prints
nothing. I thought it would print "someval".

That looks interesting. How do people use that kind of constant
assignment. I can see uses for it, but would be interested to hear what
others use this technique for.

Ta

Stu


Information in this email including any attachments may be privileged, confidential and is intended exclusively for the addressee. The views expressed may not be official policy, but the personal views of the originator. If you have received it in error, please notify the sender by return e-mail and delete it from your system. You should not reproduce, distribute, store, retransmit, use or disclose its contents to anyone. Please note we reserve the right to monitor all e-mail communication through our internal and external networks. SKY and the SKY marks are trade marks of British Sky Broadcasting Group plc and are used under licence. British Sky Broadcasting Limited (Registration No. 2906991), Sky Interactive Limited (Registration No. 3554332), Sky-In-Home Service Limited (Registration No. 2067075) and Sky Subscribers Services Limited (Registration No. 2340150) are direct or indirect subsidiaries of British Sky Broadcasting Group plc (Registration No. 2247735). All of the companies mentioned in this paragraph are incorporated in England and Wales and share the same registered office at Grant Way, Isleworth, Middlesex TW7 5QD.
.



Relevant Pages

  • Re: from __future__ import absolute_import ?
    ... foo not in bar ... A path below the package level is generally a good means to shoot ... to represent a python "package" structure. ...
    (comp.lang.python)
  • Re: A Question about DEFPACKAGE syntax
    ... Lisp and for not-really-Common-Lisp ... that it's easier to type:foo than to type "FOO". ... "FOO" does not create superficial symbols in the keyword package ...
    (comp.lang.lisp)
  • Re: Request for help constructing a simple macro
    ... Isn't an unbound symbol just a `symbol object'? ... Object in Lisp means generally all Lisp data. ... #:FOO ... No package for this symbol. ...
    (comp.lang.lisp)
  • Re: from __future__ import absolute_import ?
    ... foo not in bar ... Unfortunately this is a side effect of using the os's directory structure to represent a python "package" structure. ...
    (comp.lang.python)
  • Re: Best Practices - common code
    ... >> Let's say that we have a bunch of independent projects, among them Foo ... all of this common code ... > you can break up the bulk along package or package family* lines. ... > Ant can analyze class dependencies. ...
    (comp.lang.java.programmer)