Expansiones de signo dólar con parámetros

Se pueden utilizar parámetros en las expansiones de signo dólar. La variable deberá en ese caso contener parámetros formales, tales como $1, $2, $3 etc. Cuando se expanda la variable, los parámetros deberían declararse en una lista aparte, separados por comas.

Ejemplo:  

Set MUL=’$1*$2’;

Set X=$(MUL(3,7)); // devuelve '3*7' enX

Let X=$(MUL(3,7)); // devuelve '21' en X

Si el número de parámetros formales supera al de parámetros reales sólo se expandirán los parámetros formales que se correspondan con parámetros reales. Si el número de parámetros reales excede al de parámetros formales, se ignorarán los parámetros reales supérfluos.

Ejemplo:  

Set MUL=’$1*$2’;

Set X=$(MUL); // devuelve '$1*$2' en X

Set X=$(MUL(10)); // devuelve '10*$2' enX

Let X=$(MUL(5,7,8)); // devuelve '35' en X

El parámetro $0 devuelve el número de parámetros aprobados realmente por una llamada.

Ejemplo:  

set MUL='$1*$2 $0 par'; 

set X=$(MUL(3,7)); // devuelve '3*7 2 par' en X