FUNCIONES EN LISP

FUNCIONES EN LISP

Las siguientes son las funciones que conforman el cuerpo de las funciones de LISP, sólo se incluyen en la tabla las funciones que se presentan en la mayoría de las versiones de LISP (incluyendo las vistas anteriormente).

absandappendapplyassocmap
carcdrclosecondmapcdifference (-)
defun (de,df)dm(macro)eqequalevalexplode
functiongensymgetgetdgogreaterp(gt)
internlambdalengthlistmapcanmapcar
lessp (It)exptfixfixpfloatfloatp
mapconmaplistmaxminnconcnot
numberpnullopenorprincprint
prin1progprognputquote (‘)quotient (/)
readremainderremobrempropreturnreverse
rplacarplacdsetsetqsubstplus (+)
terpritimes (*)consatom

Forma general:


Una función en LISP se escribe siempre de la siguiente

 

(nombre argl arg2…)

 

«Nombre» identifica a la función y «argl», «arg2», … son los argumentos a los que se aplica la función. Por ejemplo: (+ 2 3) denota la suma 2 + 3, mientras que (list 2 3) denota la construcción de una lista cuyos elementos son 2 y 3, lo que se presenta como: (2 3)

 

Las funciones pueden anidarse arbitrariamente, en cuyo caso se evalúan de «dentro a fuera». Por tanto,

 

(+ (* 2 3) 4)

 

denota la suma de (2*3) y 4. Además, una lista de funciones se evalúa de izquierda a derecha. Por ejemplo,

 

(-(+23)(*34))

 

denota la diferencia de la suma 2 + 3 seguida del producto 3 * 4.

 

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *