I haven't tested this, but I believe that in tybalt89's code (and in your OP code), because the splice is operating on a copy of the $list array reference argument, so a fourth argument LIST would be assigned to the lexical array @copy and then almost immediately lost along with that array.
Do you mean that you want your function to operate on the external referent of the $list array reference?
Give a man a fish: <%-{-{-{-<
In reply to Re^3: Flattening out arguments to splice
by AnomalousMonk
in thread Flattening out arguments to splice
by Oberon
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |