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).

abs and append apply assoc map
car cdr close cond mapc difference (-)
defun (de,df) dm(macro) eq equal eval explode
function gensym get getd go greaterp(gt)
intern lambda length list mapcan mapcar
lessp (It) expt fix fixp float floatp
mapcon maplist max min nconc not
numberp null open or princ print
prin1 prog progn put quote (‘) quotient (/)
read remainder remob remprop return reverse
rplaca rplacd set setq subst plus (+)
terpri times (*) cons atom

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 *