in reply to How to call a Sub / Function with changing name

Make a dispatch table:
#!/usr/bin/perl -w use strict; my %dispatch = ( 'immunizations' => \&immunizations, 'allergies' => \&allergies); sub immunizations { print "inside immunizations\n"; } sub allergies { } $dispatch{'immunizations'}->(); #prints: inside immunizations