sub foo { # the lexical vars $a, @b and %c are aliased to the things pointed # to by the reference values passed as the first three arguments: \$a \@b, \%c, # $d is aliased to the fourth arg: *$d, # $e is aliased to the fifth arg, but at compile time, any use # of $e in lvalue context within this lexical scope is a compile # time error: *$e :ro, # the elements of @f are aliased to any remaining args, # i.e. a slurpy with aliasing ...: *@f # .. or a slurpy hash; every second remaining arg is aliased to # the hash's values: *%g ) { ... }