NR> So, I want to extend an OO package.

That's probably the wrong solution. A good rule of thumb is 'always
prefer object composition over inheritance'. If you can't think of a
good reason to extend a class, don't.

The ability within Perl to change the logic of an existing method in a
class, or add methods to a class, is just another form of inheritance.

NR> ... Okay. Also, this isn't really a question about OO purism so 
NR> if you want to rant about it please don't feel obliged to.

OO is just a technique that helps you represent real-world problems
more easily. I don't really know what you mean by OO purism, but you
should look at you problem and decide what type of relationship you are
trying to represent:

1. 'This NewThing is-an ExistingThing' (inheritance)
or 
2. 'This NewThing has-an ExistingThing' (composition)

If you can't decided which relationship is appropriate, choose 'has-a'
(composition).

--Nigel


Reply via email to