Tema Lisp - Dpto. Ciencias de la Computación e Inteligencia Artificial.
Tema Lisp - Dpto. Ciencias de la Computación e Inteligencia Artificial.
Tema Lisp - Dpto. Ciencias de la Computación e Inteligencia Artificial.
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Evaluación en <strong>Lisp</strong> (continuación)<br />
✉<br />
Listas (E1 E2 ... En)<br />
* Se evalúa el VALOR FUNCIONAL <strong>de</strong> E1.<br />
- Si es un símbolo: valor funcional.<br />
- Una <strong>la</strong>mbda-expresión: <strong>la</strong> función que representa.<br />
* Se evalúan E2 ... En (los argumentos) recursivamente.<br />
* Se "aplica" <strong>la</strong> función obtenida en primer lugar a los<br />
valores <strong>de</strong> los argumentos.<br />
Ejemplo: (cuadrado 4) => 16<br />
(cuadrado cuadrado) => 64<br />
((<strong>la</strong>mbda (m n) (+ m n))<br />
(cuadrado 2) cuadrado) => 12<br />
✉<br />
Quote (’Exp): el valor representado por Exp<br />
Ejemplo: ’(cuadrado 4) => (cuadrado 4)<br />
✉<br />
La función function (#’Exp): valor funcional <strong>de</strong> Exp<br />
Ejemplos: #’cuadrado => #<br />
#’(<strong>la</strong>mbda (x) (* 2 x)) =><br />
#<br />
IA-I 2003–2004 CcIa Introducción a <strong>Lisp</strong> <strong>Lisp</strong>.53