Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re^2: Draft - Writng pluggable programs with perl.

by yosefm (Friar)
on Jun 13, 2004 at 18:01 UTC ( #366288=note: print w/replies, xml ) Need Help??

in reply to Re: Draft - Writng pluggable programs with perl.
in thread Draft - Writng plugable programs with perl.

Yes, good points. except for the 'can' thing. I usually assume (especially for a tutorial) that nobody is trying to fool me. If someone did repplace can(), he must know what he's doing.

I'll fix the explanation about require.

perl -e'$b=unpack"b*",pack"H*","59dfce2d6b1664d3b26cd9969503";\ for(;$a<length$b;$a+=9){print+pack"b8",substr$b,$a,8;}'
My public key

Replies are listed 'Best First'.
Re^3: Draft - Writng pluggable programs with perl.
by chromatic (Archbishop) on Jun 13, 2004 at 18:36 UTC
    If someone did repplace can(), he must know what he's doing.

    Yes, but your code won't let him do it. If I'd written a plugin with a custom can(), to make it work with your program, I'd have to override UNIVERSAL::can()! Putting specific code to make a subclass work in a superclass (let alone the ultimate superclass) is bad design.

    I understand that your code tries to ensure that everything in @plugins actually represents a valid invocant. That's well-worth doing, but I think you're forcing behavior of the plugins beyond the minimum you need to do what you're doing.

    You've created a plugin system because you don't know what people will need to do to solve problems in the future. Don't enforce too many restrictions on how they'll solve those problems!

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (11)
As of 2016-10-27 17:07 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (366 votes). Check out past polls.