Andy Armstrong andy at
Tue Jan 16 15:16:27 GMT 2007

On 16 Jan 2007, at 14:36, Dirk Koopman wrote:
> Not that I have tried it ever (because I don't generally need to go  
> there) but why can one not call SUPER::AUTOLOAD? AUTOLOAD is just a  
> method (albeit a special one with an extra calling convention)  
> after all?

Nope. See:

    "This module solves a fundamental conflict between AUTOLOAD, can and
     inheritance. The problem is that while you can implement  
anything in
     AUTOLOAD, UNIVERSAL::can is not aware that it is there.  
Attempting to
     modify UNIVERSAL::can to document those methods is very hard.  
And if a
     parent class uses AUTOLOAD then subclasses have to do a lot of  
work to
     make their AUTOLOADs cooperate with the parent one. It is harder  
     if 2 parent classes in a multiple inheritance tree wish to  
     with each other. Few try to do this, which may be good since  
those who
     try usually get it wrong."


    "This is a personal opinion that chromaticand I have a long-standing
     disagreement about. I keep on not promoting it to a root node  
because I
     don't think that I have time to discuss it right, but since he  
     tweaking, I'll give in."

Dammit, that chromatic's a right tinker, eh? :)

Andy Armstrong,

More information about the mailing list