in reply to Re^6: Inheritance problem: Not a HASH ref
in thread Inheritance problem: Not a HASH ref

I don't think any class should indicate that they shouldn't be subclassed. It should always be possible to subclass classes. (Java's final keyword allows you to create classes like this, and it's dumb.)

Subclasses should only use the documented API of their parent class, but it should always be possible to subclass any class, and authors of classes should try to be as kind as possible to subclassers.