in reply to Re: How to call subroutines using variables ?
in thread How to call subroutines using variables ?

However AM said that they had a hash of sub names, possibly from a external library. If you cannot convert the hash of subroutine names to a hash of code references  $s{key}=\&valsub; then use a bare BLOCK to turn strict off only when calling subs from that hash:
{ # Get an enclosing lexical scope no strict 'refs'; # allow symbolic refrence shenanigains &$SubHash{key}(); # Call sub } # Back to strict 'refs'
or write a sub for this purpose (This assumes $SubHash is a global)
CallFromHash { no strict 'refs'; # allow symbolic refrence shenanigains return &$SubHash{shift(@_)}(@_); #Call the sub in the first arg with + the rest of @_ as args and return }
However a hash of sub names is probably a bad idea to start with, and you should reconsider your design to use hard refs (mentioned by Joost) or remove the hash all together if possible.
Update: Forgot Amperstands