... my ($class, $alias_for) = @_; my $sub = eval "package $class;" . <<'__EOI__'; sub { my ($class, $params) = @_; do_something_with($alias_for); return $class->SUPER::find_ids($params); } __EOI__ die $@ if $@; install_sub( $class, 'find_ids', $sub ); ...