LISP - Funciones Lambda

En ocasiones, es posible que necesite una función en un solo lugar en su programa y la función es tan trivial que puede que no le dé un nombre, o que no le guste almacenarla en la tabla de símbolos, y prefiera escribir una función sin nombre o anónima .

LISP le permite escribir funciones anónimas que se evalúan solo cuando se encuentran en el programa. Estas funciones se llamanLambda functions.

Puede crear estas funciones utilizando el lambdaexpresión. La sintaxis de la expresión lambda es la siguiente:

(lambda (parameters) body)

Una forma lambda no se puede evaluar y debe aparecer solo donde LISP espera encontrar una función.

Ejemplo

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

(write ((lambda (a b c x)
   (+ (* a (* x x)) (* b x) c))
   4 2 9 3)
)

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

51