my %dispatch_table = ( some_name_one => \&do_something, some_name_two => \&do_something_else ); ($dispatch_table{"$some_name"} || sub { print "no command found\n" })->($my_args,@into_sub);