Table1, getTableID('DBO','Table2') #### Table1, getTableID('DBO','Table2') #### sub getTableID($$) {return 100;} open FH, "my.csv" or die $!; while() { chomp; push(@arr, $_); }close FH; foreach my $line(@arr) { my @arr1 = split(",",$line); my $val1 = $arr1[0]; my $func = $arr2[1]; print $func; ## This prints getTableID('DBO','Table2') ## I want it to actually execute the sub and print return ## value 100 }