in reply to use Module - to exclude or not to exclude...

It's your module, do what you like! You won't see a lot of code excluding imports. You will see:

use Module qw( :utils ); use Module qw( util1 util2 util5 ); use Module qw( :utils_basic );

You can define any export sets you want. The bottom line is that it will make very little load/runtime diff if you import the extra unused functions.

Personally I generally shun import tags. I like to ask for each and every function by name as when someone else comes to look at the code it documents where the function lives ie which module:

use Module ':all'; use Other ':all'; # etc ..... func(); # "!£$^%^! where the hell did this come from?

I like importing as it save long function names. It does make it harder to track the source module. ':all' or whatever makes it harder still.

cheers

tachyon