AUTOLOAD

Simon Cozens simon at simon-cozens.org
Mon Jan 15 15:50:55 GMT 2007


Tim Sweetman:
> OK, serious question: do you consider the whole book to be nothing but a 
> big paperweight, or are you being at least slightly facetious?

I'm being slightly facetious.

> Damian Conway provides Class::Std, but then advises against use of 
> either AUTOLOAD or AUTOMETHOD. Several people appear to disagree with 
> him, though they haven't (here) said why...

But I have said why, you even responded to it, here, look:

> For a start, "can" returns potentially random output for a given method. 
> This is affecting the interface. 

By interface, I mean "contract"; the interface that the programmer uses.
Adding an AUTOLOAD does not change what methods an external programmer ought
to be calling if he's honouring the contract; only changing the documentation
does that. If your user is not honouring the contract, that, rather than
AUTOLOAD, is the problem.

> Then again, AUTOLOAD is quite happy to snaffle someone else's interface 
> from within the inheritance hierarchy.
 
This, of course, is untrue.

-- 
So now I don't trust my backups, which is a lot like not trusting my
girlfriend -- sooner or later either they'll win back my trust or I'll
have to trade them in on a new model.        - D J Trindle, in the monastery


More information about the london.pm mailing list