in reply to Inheritance based on input

Since one module is not object oriented, inheriting from it doesn't make sense.

If it follows a pattern that can be automatically wrapped into an OO fashion, you can create an automatic wrapper based on AUTOLOAD (see perlsub).

Instead of magically inheriting from one class or another, it might be easier to have an attribute that stores the device driver in question, and then work with delegation from there on.

Perl 6 - links to (nearly) everything that is Perl 6.