in reply to calling subs using references.

Personally, I might even store a ref in the $rf rather than using no strict refs.

my $rf = { test1 => \&Test::test1 }; $rf->{test1}->($tes); # tada!!

I then passed the object to the thing so it'd work like the method call. I might even argue that the callback table should be a member of the Test package itself. Kinda depends on your setup, but when you find yourself using no strict 'refs' you're probably (though, not always) overthinking the problem.

I'm not sure you need the no strict 'refs' at all here though. My tests seem to indicate that $x->$y() is fine without that pragma.

UPDATE: blazar++

-Paul