sub AUOTLOAD { my $fn = something_clever_returning_fn_reference; goto &$fn; } #### sub AUOTLOAD { my $self = shift; my $m = something_clever_returning_method_name(); $self->$m(@_); } #### sub AUTOLOAD { my $self = $_[0]; my $m = something_clever_returning_method_name(); my $sub = $_[0]->can($m) || $_[0]->can("AUTOLOAD"); die "Can't call $m on $_[0]" unless defined($sub); goto &$sub; }