Если вы собираетесь назвать это с круглыми скобками, почему вы даже используете прототипы?
sub f1(){ ... }
f1();
Единственный раз, когда я бы использовал пустой прототип, это подпрограмма, в которой я хочу работать как константа.
sub PI(){ 3.14159 }
print 'I like ', PI, ", don't you?\n";
Я бы действительно рекомендовал не использовать прототипы Perl 5, если только вы не хотите, чтобы ваша подпрограмма работала иначе, чем в противном случае.
sub rad2deg($){ ... }
say '6.2831 radians is equal to ', rad2deg 6.2831, " degrees, of course.\n";
В этом примере вам придется использовать круглые скобки, если у него нет прототипа. В противном случае он получил бы дополнительный аргумент, и последняя строка никогда не была бы напечатана.