in reply to should a module export FUNCTIONS or VARIABLES?

I agree that exporting functions is generally to be prefered to exporting variables, but obviously this is heavily dependent on the circumstances.

In your module, will the majority of users need all (or even most) of the functions each time they use it? And what determines the return values. It sounds like they are fixed for each program run, but need to be calculated once - is that right?

If that's the case, then it really sounds like you'd be best advised to use an object (and Conway's book is the clearest intorduction that I know of to Perl OOP) but in the short term why not consider just exporting one function that returns the hash of values.

use SomeModule; my %hash_of_stuff = get_hash_of_stuff;
--
<http://www.dave.org.uk>

Perl Training in the UK <http://www.iterative-software.com>

Replies are listed 'Best First'.
Re: Re: should a module export FUNCTIONS or VARIABLES?
by blueflashlight (Pilgrim) on Jul 02, 2001 at 22:26 UTC
    thanks ... I think that this is a really good suggestion. Until I can properly grok the OO concepts and syntax, I'll export a single function that returns a hash of all the other items. If the user wants all of the functions available, they can access them directly.

    thanks again! -s-