in reply to Re: Why is a hash the default "object" in oo perl?
in thread Why is a hash the default "object" in oo perl?
Inheritance in perl is a cooperative enterprise.
Modules need to be designed to allow inheritance.
Modules can also be designed to disallow inheritance.
I don't know if the implementation has changed since
then, but some time ago I
had this problem with Bit::Vector.
I have had trouble figuring out which modules are designed to support inheritance. I end up looking at implementations to try to figure it out.
The 'hidden implementation' idea of OO isn't a reality in many common perl modules. To me this appears to be a side effect of the TIMTOWTDIness of perl OO.
When I am evaluating a module implementation with the idea that I might want to inherit from it, my favorite thing to find is a blessed hashref without a fancy OO-helper module. As Zaxo says, it is easy to use and works well.
It should work perfectly the first time! - toma
In Section
Meditations