Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: use Very::Long::Module::Name as Foo;

by demerphq (Chancellor)
on Oct 14, 2003 at 14:31 UTC ( #299121=note: print w/ replies, xml ) Need Help??


in reply to use Very::Long::Module::Name as Foo;

IMO source filters are a bad idea. My choices for resolving this in an external module would be (in order of preference):

use Some::Very::Long::And::Annoying::Package::Name; use constant SVLAAPN=>'Some::Very::Long::And::Annoying::Package::Name' +; push @SVLAAPN::ISA,'Some::Very::Long::And::Annoying::Package::Name'; my $o=SVLAAPN->new();

Its unlikely I would use the stash approach as that just gives me the heebie-jeebies.

But this comes to an interesting point. An author of such an annoying package can easily provide the alias themselves... Ie in perl/site/lib/Some/Very/Long/And/Annoying/Package/Name.pm the author could have easily put

package SVLAAPN; ...

IOW, the package contained in a file that is used need _not_ be the same as the filename would indicate. A good and common example is Carp::Heavy. There is in fact no such thing. The file perl/lib/Carp/Heavy.pm contains only code for the package Carp. Now this might not be the best example as Carp/Heavy.pm is a behind the scenes kinda thing, but it does illustrate the point nicely.

In short while this is groovy and cool looking, it isn't perl (really), and it doesnt belong in production code. Nor do I think there is much need for this type of thing. The problem doesnt arise much and it only takes a few lines of code to sort out when it does. So IMO, this is a bit of overkill.


---
demerphq

    First they ignore you, then they laugh at you, then they fight you, then you win.
    -- Gandhi



Comment on Re: use Very::Long::Module::Name as Foo;
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (7)
As of 2014-07-31 21:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (253 votes), past polls