Don't use subroutine prototypesWell...that begs the question...what are they included in the language?
As usual in Perl: compatibility with legacy code. Prototypes are OLD. They exist in the very first version of Perl 5 found on CPAN (5.002b3, https://metacpan.org/release/LWALL/perl5.002b3/view/pod/perlsub.pod#Prototypes), dated 1996-Feb-03, more than a quater century ago. At that time, prototypes seemed to be useful. And once a feature is included in Perl, it is extremely unlikely to be ever removed again.
I thought function prototypes already existed in Perl 4, but I could not find any documentation for them in the 5.001m sources (see Slackware 3.0 sources at http://ftp.gwdg.de/pub/linux/slackware/slackware-3.0/disk1/source/d/perl-5.001/perl5.001m.tar.gz, released in October 1995). Also, no traces of function prototypes in perl 4.036 (Slackware 2.3, http://ftp.gwdg.de/pub/linux/slackware/slackware-2.3/source/d/perl/perl-4.036.tar.gz, released June 1995).
Alexander
In reply to Re^3: Too many arguments for subroutine
by afoken
in thread Too many arguments for subroutine
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |