in reply to Choosing between AUTOLOAD vs Delegation

I'd stay with AUTOLOAD. Just make sure you document it so that people are not confused when they mistype a method name and get informed that the method is not defined in the Connection class even though they called it on an instance of a Device class.

You might also try to test whether the $connection->can($methodName) before calling it and maybe even build and eval"" a delegator if the connection does support that method so that the next call to the same method doesn't have to go through AUTOLOAD again.

Jenda
Enoch was right!
Enjoy the last years of Rome.