Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^2: Location of 'use' statements

by adrianh (Chancellor)
on Apr 21, 2003 at 10:02 UTC ( #251971=note: print w/ replies, xml ) Need Help??


in reply to Re: Location of 'use' statements
in thread Location of 'use' statements

Obviously if it works for you it's a good thing :-)

However, I've had to maintain code in this style and it's been a complete pain. In particular:

  • You have to scan the whole module to find out what modules are being used.
  • It can lead to confusion when you add a subroutine that clashes with an imported subroutine - since there is no global place where you can find out what subroutines have been imported.
  • You suddenly have modules being loaded at runtime if you decide to use AutoSplit - which can lead to some rather evil debuging sessions.
  • Makes refactoring harder since you have to remember to move the use around when you move the code that uses the module in question.

In general I've found that pretending use has different scoping rules causes more problems that it solves.


Comment on Re^2: Location of 'use' statements
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (9)
As of 2014-07-13 11:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (249 votes), past polls