But you aren't "convert[ing] or expand[ing] an array into a list"; you're converting a list into a scalar. That's what the prototype means. It might not be what most people would want prototypes to mean, but that' still what the prototype means.
in reply to Function Prototypes and Array vs. List (Pt. 2)
How do you convert a list to a scalar? Easy. Meditate on this bit from perlfunc:
Remember the following important rule: There is no rule
that relates the behavior of an expression in list context
to its behavior in scalar context, or vice versa.
There is no general rule.
You have to read the documentation for whatever it is you're using.