Zusätzlich zu den bisherigen Antworten: Du solltest dir vielleicht das Umkopieren sparen:
In meiner Welt war das noch nie in Thema. Es ist unwichtig. Und es würde sich in Luft auflösen, wenn Parameter nicht aus einem Array gelesen sondern von einer Funktion/Methode geliefert werden:
my $preis = $self->param('preis');
Wobei die param()-Methode so intelligent gemacht werden kann, dass sie bei mehreren gleichnamigen Parametern gleich alle Werte als Array liefert. Und kompatibel zu SOAP, XML-PRC... sein kann ;)