if ($type == "INTEGER") { $convAnswer = checkInteger($answer); } elsif ($type eq "DATE") { $convAnswer = checkDate($answer); } elsif ($type eq "IPADDRESS") { $convAnswer = checkIpaddress($answer); } elsif ($type eq "FOO") { $convAnswer = checkFoo($answer); } else { die qq(There is no such type as "$type"\n); } #### my $sub = "check" . ucfirst(lc($type)); if (not defined (&{$sub}) { die qq(There is no such type as "$type"\n); } $convAnswer = &{$sub}($answer); #### my $sub = "check" . ucfirst(lc($type)); if (not defined (&{$sub}) { die qq(There is no such type as "$type"\n); } no strict "refs"; $convAnswer = &{$sub}($answer); use strict "refs"