Perl 6 is about to be released. If you skipped Python and ruby, and you need the huge CPAN archive, perl 6 might be just the tiket, and with types and named parameters, it may be a serious alternative for large projects!:
http://www.perl.com/pub/a/2007/03/01/perl-6-parameter-passing.html?page=2
Quote
Perl 6 calling conventions are extremely well designed. Not only do they allow compile-time parameter checking, they also allow named parameters with or without complex defaults, even including curried default functions. This is going to be very powerful.
http://www.perl.com/pub/a/2007/03/01/perl-6-parameter-passing.html?page=2



