Expansiones de signo dólar con parámetros
Se pueden utilizar parámetros en las expansiones de signo dólar. La variable en ese caso debe contener parámetros formales, como $1, $2, $3, etc. Cuando se expanda la variable, los parámetros deberían declararse en una lista, separados por comas.
Ejemplo:
Set MUL=’$1*$2’;
Set X=$(MUL(3,7)); // devuelve '3*7' en X
Let X=$(MUL(3,7)); // devuelve '21' en X
Si el número de parámetros formales supera al de parámetros reales solo 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' en X
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