Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re: Advice on style

by Anonymous Monk
on Nov 26, 2010 at 03:31 UTC ( #873762=note: print w/ replies, xml ) Need Help??

in reply to Advice on style

Thanks everyone!

I didn't know that

require Exporter; our @ISA = qw(Exporter);
is outdated code. Have replaced those two lines with "use Exporter 'import';" as suggested.

Comment on Re: Advice on style
Download Code
Re^2: Advice on style
by afoken (Prior) on Nov 26, 2010 at 10:13 UTC
    I didn't know that require Exporter; our @ISA = qw(Exporter); is outdated code.

    And how should you know that?

    The synopsis of Exporter still (as of v5.63 found on CPAN) has this code as the very first example. The shorter and cleaner use Exporter 'import'; is the second example, and no word in the synopsis explains the differences. Even in the "Good Practices" section linked from the synopsis, all of the examples inherit from Exporter. Importing Exporter::import is explained in just four sentences hidden in "Advanced Features" -> "Exporting without inheriting from Exporter".

    I think the Exporter documentation needs some patches, explaining the difference. It also should tell people not to inherit from Exporter in new code. Perhaps all of the inheritance stuff should be moved to a "legacy usage" section.


    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
      Oh wow, that merits a weekly announcement in perlnews

      On the other hand, there's something to be said for reading all the documentation of a module you want to use.

      You find little gems like: use Some::Exporting::Module '/./';

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (6)
As of 2015-07-06 22:26 GMT
Find Nodes?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...

    Results (84 votes), past polls