in reply to Dynamically setting up inheritence at runtime

package Foo; use strict; use vars '@ISA'; sub new { my($class, %named_params) = @_; push @ISA, $named_params{parent_class}; # rest of the constructor goes here }