Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re^2: Advice on style

by afoken (Prior)
on Nov 26, 2010 at 10:13 UTC ( #873817=note: print w/ replies, xml ) Need Help??

in reply to Re: Advice on style
in thread Advice on style

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". ;-)

Comment on Re^2: Advice on style
Select or Download Code
Re^3: Advice on style
by Anonymous Monk on Nov 26, 2010 at 10:36 UTC
    Oh wow, that merits a weekly announcement in perlnews
Re^3: Advice on style
by yitzchak (Sexton) on Nov 26, 2010 at 20:40 UTC

    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://873817]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (5)
As of 2015-07-01 00:29 GMT
Find Nodes?
    Voting Booth?

    What kind of chocolate gives you the most pleasure?

    Results (804 votes), past polls