NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
Importing (Score:2)
* You shouldn't be importing functions from a superclass and nobody's stopping you from adding a "use Baseclass" if you really want to.
True, but it's frustrating to inherit from a base class which might need arguments passed to its import method. There was some discussion about this on P5P and I recall someone suggesting something like this:
That would be backwards compatible and get around that limitation
Re: (Score:2)
Even so, I don't consider this to be a problem with base.pm. If I really need to do things like that, the work-around is trivial.
Re: (Score:2)
use base qw(Foo);
use Foo qw(some args);
And isn't it "let's add just one more feature" that got base.pm in this situation in the first place?
The $VERSION "issue" (Score:1)
Not that I think it's a problem - but I think folk are referring to base setting VERSION to '-1, set by base.pm' if it's undef.
Adrian (thoroughly in the "liking base" camp)
Re: base.pm (Score:1)
In other words: it's things that I don't want to see in my code. If you want to be like me, swell.
I don't think any of the things I listed are *bugs*, they're just things that *I don't like*.
"You shouldn't be importing functions from a superclass." Wishing doesn't make it so. In
rjbs
Bogus argument (Score:1)
What a bogus argument. I would accept this if you had said "I have written a lot of commercial code that just assumes ...", but arguing a (unremovable, by now) misfeature of your code as something actually beneficial is quite a stretch. I hadn't looked at the source code of base.pm before people argued against it, but for my taste it is far too close to the code of
Re: (Score:2)
Some people remember to put a BEGIN around setting @ISA (and @EXPORT) but most don't either because they forget or aren't aware.