LISP - Parámetros opcionales

Puede definir una función con parámetros opcionales. Para hacer esto necesitas poner el símbolo&optional antes de los nombres de los parámetros opcionales.

Escribamos una función que solo muestre los parámetros que recibió.

Ejemplo

Cree un nuevo archivo de código fuente llamado main.lisp y escriba el siguiente código en él.

(defun show-members (a b &optional c d) (write (list a b c d)))
(show-members 1 2 3)
(terpri)
(show-members 'a 'b 'c 'd)
(terpri)
(show-members 'a 'b)
(terpri)
(show-members 1 2 3 4)

Cuando ejecuta el código, devuelve el siguiente resultado:

(1 2 3 NIL)
(A B C D)
(A B NIL NIL)
(1 2 3 4)

Tenga en cuenta que los parámetros cyd son los parámetros opcionales en el ejemplo anterior.