in reply to Re: sub ($self,$var,@arr) {}
in thread sub ($self,$var,@arr) {}

Perhaps raptor was hinting at the way C used to reference parameters, K&R style, which is a little outdated:
int main (argc, argv) int argc, char *argv[] { return 0; }
Still, I find it nice that Perl allows you to use the parameters any way you wish, which is especially useful when you're passing parameters using the HASH-style methods, such that you really don't know how many parameters you are going to receive, nor what type they are:
MyFunc ( -type => qw ( lemur llama lynx ), -width => 150 );
It is interesting that CGI.pm uses parameters in a way that is not unlike UNIX-style command-line arguments in terms of the way they are parsed and processed.

The prototypes introduced in 5.6(?) go a long way towards ensuring that your module is used properly, and detecting errors in parameters vs. errors in the module:
sub MyFunc ($$\$) { my ($x, $y, $z) = @_; # $x and $y are required, $z optional. }
Although MeowChow doesn't "want Perl to look any more like ... C,C++ or Java", that is no reason to not borrow methods and practices from these languages that were implemented with solid reasoning. The cliché "if it ain't broke" certainly hasn't been heeded by the Perl developers, Larry Wall included, because Perl 4.0 was hardly broken, and just when you think it couldn't get any better, it did!