use strict; use warnings; sub func1 { print "running func1\n"; } my %funcs = ( 'func1' => \&func1, 'func2' => sub { print "running func2\n"; } ); $funcs{'func1'}->(); $funcs{'func2'}->();