Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INDICE 1. TIPOS DE DATOS 1.1 tomos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Listas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. LOS NMEROS Y SUS OPERACIONES. . . . . . . . . . . . . . . . . . . . . . . . . . . 2
4. FUNCIONES PRIMITIVAS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . .. 3
1. TIPOS DE DATOS
1.1 ATOMOS Los tomos pueden ser palabras, tal como LIBRO, LISTA,ATOMO, etc. Un tomo en LISP puede ser cualquier combinacin de las 26 letras delAlfabeto en conjunto con los 10 dgitos. Ejemplos de tomos: 9, p, T, nil, hola-mundo
INGENIERIA DE SISTEMAS
INTELIGENCIA ARTIFICIAL
1.2 LISTAS
Una lista es puede ser una secuencia de tomos separadospor un espacio y encerrados por parntesis redondos. Una lista puede incluir sub-litas. Ejemplo (HOLA) (ESTA ES UNA LISTA) ; 1 ELEMENTO ; 4 ELEMENTOS
Operaciones matemticas CL-USER 3 > (/ 8 2) 4 CL-USER 4 > (* 7 6) 42 CL-USER 5 > (+ 9 3) 12 CL-USER 6 > (* 6 5 4) 120 CL-USER 7 > (+ 8 7 3) 18 ;divide 8 entre 2
;multiplica 7 por 6
;suma 9 ms 3
; suma 8 ms 7 ms 3
Observacin: Los nmeros pueden combinarse entre s mediante operaciones aritmticas usando la notacin prefija.
INGENIERIA DE SISTEMAS
INTELIGENCIA ARTIFICIAL
; g toma el valor de h
CL-USER 3> (setq lista '(pera manzana uva)) (PERA MANZANA UVA)
3.2 SETF
4. FUNCIONES PRIMITIVAS
4.1 Constructores de listas (CONS X Y) construye una lista de datos y un tallo. CL-USER 1 > (cons 'a 'b) (A . B) CL-USER 2 > (cons 'a '(b c)) (A B C) CL-USER 3 > (cons 'a (cons 'b (cons 'c '()))) (A B C) (LIST X-1 ... X-N) Construye una lista de la forma (e1 e2 .. en.) CL-USER 1 > (list 'a 'b 'c) (A B C) CL-USER 2 > (list '(a b) '(c d)) ((A B) (C D)) CL-USER 3 > (list) NIL (APPEND L-1 ... L-N) Construye una lista de la forma (f1 f2 ..fn), donde cada f es el resultado de quitar los parntesis exteriores de cada e. Aqu los trminos no pueden ser
tomos.
INGENIERIA DE SISTEMAS
INTELIGENCIA ARTIFICIAL
4.2 Asignacin de listas (CAR L) / (FIRST)devuelve el primer elemento de L, si L es una lista no vaca y NIL, en otro caso.
CL-USER 1 > (car '(uno dos tres)) UNO CL-USER 2 > (car '((alexruiz) lozano espinoza)) (ALEX RUIZ) CL-USER 3> (first '(cuatro cinco ocho)) CUATRO
CL-USER 4 > (car '((esta) es una prueba)) (ESTA)
(CDR L) / (REST) devuelve la lista formada por los elementos de L, excepto el primero, si L es una lista no vaca y NIL, en otro caso.
CL-USER 1> (rest '(a b c)) (B C) CL-USER 2> (cdr '((a) g j t f)) (G J T F) CL-USER 3> (CDR '((D ((E F))) G (H I))) (G (H I))
INGENIERIA DE SISTEMAS