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.