Yeah. If I could predict or control what functions can be used I would not autoload. Generally you can so I think autoloading should be rare. Where I have found it useful is in enabling much looser coupling.
Comment on Re^2: A working strategy to handle AUTOLOAD, can(), and (multiple) inheritance without touching UNIVERSAL?