Keep It Simple, Stupid | |
PerlMonks |
Re^2: Export from module in subdirectoryby tobyink (Canon) |
on Oct 11, 2012 at 12:56 UTC ( [id://998439]=note: print w/replies, xml ) | Need Help?? |
You're looking at it backwards. Don't decide on the code because of the filenames; decide on the filenames because of the code. Choose a meaningful package name, like "Quux::Enhancer", and declare the package name in the module (somewhere near the top - the only things it makes sense to put before the package declaration are lexical pragma like use strict; use warnings; use 5.010;) using:
Now decide on which lib dir it's going to live inside. Often this will be a directory which is in perl's default @INC list. Within that directory create a subdirectory called Quux, and within that save your module as Enhancer.pm. Then in your script, if that lib dir is not in perl's default @INC, include this:
And then in the script load the module like this:
If you ever need to move the file, then that's fine; no need to change anything within the module; just make sure it's always called Enhancer.pm, and always kept in a directory called Quux. Then use lib to tell your Perl script where to find it.
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
In Section
Seekers of Perl Wisdom
|
|