sub foo ($$) { ... } foo($a); # invalid, not enough args foo(@a); # invalid, not enough args foo($a,$b); # valid foo(@a,@b); # valid foo($a,@b); # valid foo(@a,$b); # valid $_[0] gets the number of elements in @a