sub nForX(&@); ... nForX { print join ' ', @_; } 3, \( @a, @b, @c ); ... sub nForX(&@) { #use of prototype here is actually irrelevant #now, i.e. sub nForX {...} works the same ... }