In questo caso, tutto che siate risparmio è un funzionamento della copia dell'allineamento originale.
Le ultime 2 linee sono dopo perché passare dal valore è normalmente preferred,
grande allineamento complicato di // = di $some_dataset
$processed = process_list ($some_dataset);
Vi concludete normalmente in su con 2 allineamenti, $some_dataset e $processed, di cui tutt'e due sono differenti.
Se il process_list prende un allineamento da riferimento, quindi quelle due linee realmente si concludono in su con $some_dataset e $processed che sono 2 COPIE degli stessi allineamenti (non il riferimento, copia dal valore).
Le assegnazioni di allineamento sono sempre il copia-da-valore, a meno che & è usata per copiare il riferimento.
il array_slice da sè genera una copia del sottoinsieme.
Le 2 funzioni di specie inoltre restituiscono i nuovi allineamenti.
Siete probabilmente appena attaccare più ricco al passaggio dai valori a meno che realmente lo capiate.
FWIW, conservare un funzionamento della singola copia, le ultime 2 linee sarebbe
grande allineamento complicato di // = di $some_dataset
process_list ($some_dataset); // e continua ad usare $some_dataset dopo questa linea