El lenguaje de programación Perl es compatible con una serie de estructuras de datos como simples variables escalares y matrices. Un conjunto denotado en Perl con el símbolo " @" es un conjunto de variables escalares. En un script en Perl que a menudo tiene que pasar algunos datos a una subrutina . Aunque Perl permite pasar directamente a dos o más argumentos que inevitablemente recibe la basura en lugar de datos de la matriz , si uno de los argumentos es una matriz. Para solucionar este problema hay que utilizar el mecanismo de Perl de pasar argumentos por referencia. Instrucciones 
 1 
 Utilice una barra invertida ( \\) para pasar la matriz por referencia. Por ejemplo , 
 
 calcular ( \\ $ valor, \\ @ data) ; 
 
 este comando pasa a la matriz de datos "@ " a la subrutina "calcular" por referencia 
 . 2 
 Utilice una variable de Perl (no es un array) para obtener la matriz en el subprograma: 
 
 my ($ valor , $ data ) = @ _ ; 
 
 la variable "$ datos " es una referencia a la matriz de datos " @ "
 3 
 Trabaja con la matriz en la subrutina usando desreferenciación Perl , por ejemplo para imprimir cada elemento de la matriz utilizar el bucle " . foreach : " 
 
 foreach $ element ( @ $ data) { print $ 
 
 elemento; 
 
 } 
 
 el símbolo" @ "delante de la variable $ data indica que se trata de la matriz.