SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
Inteligencia Artificial
LISP
Omar Quito Fernado Sumba
Universidad de Cuenca
21 de Abril del 2014
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Contenido
1 Introducci´on
2 Caracter´ısticas del Lenguaje
3 Funciones en LISP
4 Compiladores de LISP
5 LISP EN IA
6 EJEMPLOS
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Introducci´on
Historia
Especificado en 1958 por John McCarthy, es el segundo m´as
viejo lenguaje de programaci´on de alto nivel.
Lisp fue pionero en muchas ideas en ciencias de la
computaci´on, incluyendo las estructuras de datos de ´arbol, el
manejo de almacenamiento autom´atico, tipos din´amicos, y el
compilador auto contenido.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Objeto de datos
Entre las caracter´ısticas m´as importantes podemos mencionar:
• Todas las variables son punteros
• Liberaci´on autom´atica de memoria
• Adecuado para prototipados, c´alculo y c´alculo simb´olico
• Paradigma de programaci´on funcional
• Lenguaje Interpretado
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Objeto de datos
Datos (Expresiones): Los tipos de datos originales son los
´atomos y las listas. Los ´atomos: son las expresiones LISP
m´as elementale debido a que se asemejan a las palabras de un
lenguaje com´un. Las listas: son grupos de valores
relacionados, separados por espacios e incluidos entre
par´entesis redondos ”(”Y ”)”.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Control de Secuencia
La ejecuci´on del programa consiste en la evaluaci´on de las
funciones contenidas en el mismo.
Expresiones:
• Condicional
• Operaciones sobre ´atomos (en preorden): +, -, *, /
• Operaciones sobre listas: cons, list, replace, null, equal.
• Operaciones sobre propiedades: put, get.
• Enunciados: prog() para ejecuci´on secuencial.
• Entrada y salida: open(), read(), print().
• Definici´on de funciones: defun, define.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Gestion de Sub programas
Tres clases de funciones:
• Funci´on interpretada: en forma de estructura de listas.
Primitivas eval y apply.
• Funci´on compilada: compiladas en un bloque de c´odigo
m´aquina que puede ser ejecutado por el int´erprete del
hardware.
• Macro: se declara con define. Es simplemente una funci´on
ordinaria en LISP. Puede ser interpretada y compilada.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Gesti´on de almacenamiento
La memoria se estructura en forma de mont´ıculo,usa espacios
libres y un recolector de basura
Entorno de referencia:
• Local, es el que se da en las listas.
• Global o com´un, se consigue mediante asociaci´on de un
´atomo.
Paso de par´ametros:
• Transmisi´on por valor, consiste en evaluar las expresiones de
una lista de par´ametros.
• Transmisi´on por nombre, transmitir las expresiones de la
lista de par´ametros sin evaluar, y dejar que la funci´on llamada
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Predicados
Estos eval´uan cierto o falso, en Lisp falso es NIL:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Predicados para comprobaci´on de tipo de objeto:
INTEGERP
Comprueba si el argumento es un n´umero entero.
(defun integerp (dato)(eq (type dato) ’INT))
REALP
Comprueba si el argumento es un n´umero real.
(defun realp (dato)(eq (type dato) ’REAL))
STRINGP
Comprueba si el argumento es una cadena.
(defun stringp (dato)(eq (type dato) ’STR))
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Caracter´ısticas del Lenguaje
Abstracci´on y encapsulamiento
LISP, en origen, no incluye caracter´ısticas de abstracci´on de
datos.
CLOS fue una ampliaci´on de LISP con orientaci´on de objetos.
Caracter´ısticas:
• Herencia m´ultiple.
• Funciones gen´erica.
• Metaclases y metaobjetos.
• T´ecnica de creaci´on e inicializaci´on de objetos que permite
control del proceso por parte del usuario.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Funciones en LISP
Aritm´eticas
+, -, *, /: Suma, resta, multiplicaci´on y divisi´on
EJEMPLO: (+ (* 2 3) 5)
1+, 1- : Incrementa/Decrementa en uno el valor.
EJEMPLO: (1+ 9)
max, min : Devuelve el valor m´aximo de una lista
EJEMPLO: (max 23 4 5 234 654)
float: Devuelve el valor en coma flotante
EJEMPLO: (float ( 22 / 7))
round: redondea un valor al entero m´as cercano
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Funciones en LISP
Aritm´eticas
expt: calcula potencias elevando su primer argumento a su
segundo
EJEMPLO: (expt 2 3)
sqrt: calcula raices cuadradas
EJEMPLO: (sqrt 9)
abs: calcula el valor absoluto
EJEMPLO: (abs -3)
random: calcular un n´umero aleatorio de 0 a N-1
EJEMPLO: (random 5)
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Funciones en LISP
Funciones de entrada y salida
print, format: son operaciones de salida de texto.
read: es una operaci´on de lectura de texto.
read-line: absorve caracteres hasta donde aparece un fin de
archivo.
read-char: lee un car´acter
open: permite escribir en archivos
eval: es una operaci´on que lee y eval´ua.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Compiladores de LISP
Los mas utilizados
• GNU Common Lisp, (Software libre)
• Allegro Common Lisp, (Software propietario)
• CMU Common Lisp, (Software libre)
• CLISP, Una implementaci´on de Common Lisp , (Software
libre)
• OpenMCL Common lisp para Macintosh , (Software libre)
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
LISP EN IA
Como nace LA IA CON LISP
El momento en el que se comienza a utilizar el t´ermino y este
se populariza es en 1956, cuando John McCarthy organiza el
Dartmouth Summer Research Project on Artificial Intelligence.
Los a˜nos sucesivos a ese verano fueron especialmente
fruct´ıferos: Newell, Simon y Shaw escribir´ıan el “Logic
Theorist” y el “General Problem Solver” y John Mc Carthy
crear´ıa Lisp y escribir´ıa el art´ıculo “Programs with Common
Sense”.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
LISP EN IA
LISP LENGUAJE DE ALTO NIVEL
Lisp era el lenguaje de alto nivel que necesitaban en esos
tiempos; fue el primer lenguaje en implementar programaci´on
funcional, acercando las matem´aticas al lenguaje; permite
entender el lenguaje hasta el nivel del int´erprete y es
extensible, permitiendo crear nuevos paradigmas de
programaci´on en el lenguaje.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
LISP EN IA
LISP y PROLOG
Hasta 1971 no se inventar´ıa Prolog, que se usar´ıa sobre todo
en combinaci´on con Lisp, en los sistemas basados en reglas,
debido a sus facilidades para el encadenamiento hacia Atr´as,
entre otras cosas. As´ı es que hist´oricamente Lisp ha estado
asociado a la inteligencia artificial y viceversa.
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Funciones
Crear una funci´on que dada una lista de como resultado una
nueva lista pero solo con el primer y ´ultimo elemento de la
lista original.
SOLUCI´ON:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Funcion Recursiva
Crear una funci´on recursiva que dada una lista como
par´ametro retorne la sumatoria de todos sus elementos.
SOLUCI´ON:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Funci´on para matrices
Crear una funci´on que permita realizar la suma de matrices.
SOLUCI´ON:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Funci´on para listas
Crear una funci´on en LISP que permita realizar suma de listas
pares
SOLUCI´ON:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Eliminar el en´esimo termino de una lista
SOLUCI´ON:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
LAS TORRES DE HANOI
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
LAS TORRES DE HANOI
Definicion de funcion torres de hanoi:
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
EJEMPLOS
Recursividad.- LAS TORRES DE HANOI
Omar Quito, Fernado Sumba Universidad de Cuenca LISP
Introducci´on
Caracter´ısticas del Lenguaje
Funciones en LISP
Compiladores de LISP
LISP EN IA
EJEMPLOS
Bibliografia
Bibliograf´ıa
Omar Quito, Fernado Sumba Universidad de Cuenca LISP

Más contenido relacionado

La actualidad más candente

Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Idalia Tristan
 
Software de programación lógica
Software de programación lógicaSoftware de programación lógica
Software de programación lógicaAlan Guevara
 
Tipos de librería en c++
Tipos de librería en c++Tipos de librería en c++
Tipos de librería en c++JairoCriollo12
 
Articulo Autómata (push down)
Articulo Autómata (push down)Articulo Autómata (push down)
Articulo Autómata (push down)Scarlinr
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedioGuillermo
 
Metreología programacion
Metreología programacionMetreología programacion
Metreología programaciontamaaraa
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Alex Toapanta
 
Metreología programación
Metreología programaciónMetreología programación
Metreología programaciónLaura Martos
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintacticoAndres Pozo
 
Librerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CLibrerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CCristian Maza
 
Teoría de Autómatas y Lenguajes Formales (I Bimestre)
Teoría de Autómatas y Lenguajes Formales (I Bimestre)Teoría de Autómatas y Lenguajes Formales (I Bimestre)
Teoría de Autómatas y Lenguajes Formales (I Bimestre)Videoconferencias UTPL
 
Generacion codigomaquina
Generacion codigomaquinaGeneracion codigomaquina
Generacion codigomaquinatre_na_gil
 
Uso de las clases iostream
Uso de las clases iostreamUso de las clases iostream
Uso de las clases iostreamTensor
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2Humano Terricola
 
Practica 1
Practica 1Practica 1
Practica 1Tensor
 
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...EUROsociAL II
 

La actualidad más candente (20)

Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++
 
Librerias de C++
Librerias de C++Librerias de C++
Librerias de C++
 
Software de programación lógica
Software de programación lógicaSoftware de programación lógica
Software de programación lógica
 
Tipos de librería en c++
Tipos de librería en c++Tipos de librería en c++
Tipos de librería en c++
 
Articulo Autómata (push down)
Articulo Autómata (push down)Articulo Autómata (push down)
Articulo Autómata (push down)
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedio
 
Metreología programacion
Metreología programacionMetreología programacion
Metreología programacion
 
Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)Practica análisis léxico y semántico(compiladores)
Practica análisis léxico y semántico(compiladores)
 
Metreología programación
Metreología programaciónMetreología programación
Metreología programación
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Librerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CLibrerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación C
 
Teoría de Autómatas y Lenguajes Formales (I Bimestre)
Teoría de Autómatas y Lenguajes Formales (I Bimestre)Teoría de Autómatas y Lenguajes Formales (I Bimestre)
Teoría de Autómatas y Lenguajes Formales (I Bimestre)
 
Compilador
CompiladorCompilador
Compilador
 
Automatas finitos
Automatas finitosAutomatas finitos
Automatas finitos
 
Generacion codigomaquina
Generacion codigomaquinaGeneracion codigomaquina
Generacion codigomaquina
 
Uso de las clases iostream
Uso de las clases iostreamUso de las clases iostream
Uso de las clases iostream
 
Generación código intermedio 2
Generación código intermedio 2Generación código intermedio 2
Generación código intermedio 2
 
ARCHIVOS
ARCHIVOS ARCHIVOS
ARCHIVOS
 
Practica 1
Practica 1Practica 1
Practica 1
 
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...
Midiendo la Eficiencia en el Sector Público 3 / Javier Salinas Jiménez- Unive...
 

Destacado

IntroduccióN A Redes Internet
IntroduccióN A Redes InternetIntroduccióN A Redes Internet
IntroduccióN A Redes InternetPEDAGOGICASABER
 
Sistema Operativo Windows-Segunda Sesión
Sistema Operativo Windows-Segunda SesiónSistema Operativo Windows-Segunda Sesión
Sistema Operativo Windows-Segunda SesiónMagali Mejía
 
INFORMATICA CONCEPTOS BASICOS
INFORMATICA CONCEPTOS BASICOSINFORMATICA CONCEPTOS BASICOS
INFORMATICA CONCEPTOS BASICOSluismarlmg
 

Destacado (6)

Algoritmos De Control
Algoritmos De ControlAlgoritmos De Control
Algoritmos De Control
 
IntroduccióN A Redes Internet
IntroduccióN A Redes InternetIntroduccióN A Redes Internet
IntroduccióN A Redes Internet
 
Diagrama de flujo
Diagrama de flujoDiagrama de flujo
Diagrama de flujo
 
Sistema Operativo Windows-Segunda Sesión
Sistema Operativo Windows-Segunda SesiónSistema Operativo Windows-Segunda Sesión
Sistema Operativo Windows-Segunda Sesión
 
INFORMATICA CONCEPTOS BASICOS
INFORMATICA CONCEPTOS BASICOSINFORMATICA CONCEPTOS BASICOS
INFORMATICA CONCEPTOS BASICOS
 
Internet y sus servicios
Internet y sus serviciosInternet y sus servicios
Internet y sus servicios
 

Similar a Lisp tutorial en latex

Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacionTensor
 
S01.s1 - Material.pdf
S01.s1 - Material.pdfS01.s1 - Material.pdf
S01.s1 - Material.pdfJS Legendario
 
Historia de clisp
Historia de clispHistoria de clisp
Historia de clispextasis30
 
10 11 introducción a r para desarrolladores
10 11 introducción a r para desarrolladores10 11 introducción a r para desarrolladores
10 11 introducción a r para desarrolladoresSoftware Guru
 
Lenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de ProgramaciónLenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de ProgramaciónLuis Fernando Aguas Bucheli
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónJavier Camacho
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De ProgramacionROSA859
 
Metreología programacion
Metreología programacionMetreología programacion
Metreología programaciontamaaraa
 
Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1Germania Rodriguez
 
C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1kfacu
 
Libro2 - PROGRAMACION2
Libro2 - PROGRAMACION2Libro2 - PROGRAMACION2
Libro2 - PROGRAMACION2gabrielalija10
 
Libro 2 - ORIGENES DE LA PROGRAMACION
Libro 2 - ORIGENES DE LA PROGRAMACIONLibro 2 - ORIGENES DE LA PROGRAMACION
Libro 2 - ORIGENES DE LA PROGRAMACIONGabriel Alija
 
PARADIGMA FUNCIONAL
PARADIGMA FUNCIONALPARADIGMA FUNCIONAL
PARADIGMA FUNCIONALFredy Olaya
 
Agenda de Datos Personales en LISP
Agenda de Datos Personales en LISPAgenda de Datos Personales en LISP
Agenda de Datos Personales en LISPAlex Pin
 

Similar a Lisp tutorial en latex (20)

Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 
S01.s1 - Material.pdf
S01.s1 - Material.pdfS01.s1 - Material.pdf
S01.s1 - Material.pdf
 
Historia de clisp
Historia de clispHistoria de clisp
Historia de clisp
 
10 11 introducción a r para desarrolladores
10 11 introducción a r para desarrolladores10 11 introducción a r para desarrolladores
10 11 introducción a r para desarrolladores
 
Lenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de ProgramaciónLenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de Programación
 
TEMA Nº 1
TEMA Nº 1TEMA Nº 1
TEMA Nº 1
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De Programacion
 
Metreología programacion
Metreología programacionMetreología programacion
Metreología programacion
 
Clase02 paradigmas
Clase02 paradigmasClase02 paradigmas
Clase02 paradigmas
 
Automatas y compiladores clase1
Automatas y compiladores clase1Automatas y compiladores clase1
Automatas y compiladores clase1
 
Historia Lenguajes y sus Tipos
Historia Lenguajes y sus TiposHistoria Lenguajes y sus Tipos
Historia Lenguajes y sus Tipos
 
Introducción a Phyton
Introducción a PhytonIntroducción a Phyton
Introducción a Phyton
 
C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1
 
Generacionlenguajes
GeneracionlenguajesGeneracionlenguajes
Generacionlenguajes
 
Libro2 - PROGRAMACION2
Libro2 - PROGRAMACION2Libro2 - PROGRAMACION2
Libro2 - PROGRAMACION2
 
Libro 2 - ORIGENES DE LA PROGRAMACION
Libro 2 - ORIGENES DE LA PROGRAMACIONLibro 2 - ORIGENES DE LA PROGRAMACION
Libro 2 - ORIGENES DE LA PROGRAMACION
 
Compiladores trabajo numero 4
Compiladores trabajo numero 4Compiladores trabajo numero 4
Compiladores trabajo numero 4
 
PARADIGMA FUNCIONAL
PARADIGMA FUNCIONALPARADIGMA FUNCIONAL
PARADIGMA FUNCIONAL
 
Agenda de Datos Personales en LISP
Agenda de Datos Personales en LISPAgenda de Datos Personales en LISP
Agenda de Datos Personales en LISP
 

Último

27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.pptjacnuevarisaralda22
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptxBRAYANJOSEPTSANJINEZ
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGUROalejandrocrisostomo2
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAJOSLUISCALLATAENRIQU
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologicaJUDITHYEMELINHUARIPA
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Dr. Edwin Hernandez
 
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdfnicolascastaneda8
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptNombre Apellidos
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023RonaldoPaucarMontes
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfs7yl3dr4g0n01
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZgustavoiashalom
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATevercoyla
 
Ejemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieriaEjemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieriaAndreBarrientos3
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONJuan Carlos Meza Molina
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTElisaLen4
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfdanielJAlejosC
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEduardoBriones22
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5juanjoelaytegonzales2
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJOJimyAMoran
 

Último (20)

27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
COMPEDIOS ESTADISTICOS DE PERU EN EL 2023
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
ANALISIS Y DISEÑO POR VIENTO, DE EDIFICIOS ALTOS, SEGUN ASCE-2016, LAURA RAMIREZ
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
Ejemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieriaEjemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieria
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 

Lisp tutorial en latex

  • 1. Inteligencia Artificial LISP Omar Quito Fernado Sumba Universidad de Cuenca 21 de Abril del 2014
  • 2. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 3. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 4. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 5. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 6. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 7. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Contenido 1 Introducci´on 2 Caracter´ısticas del Lenguaje 3 Funciones en LISP 4 Compiladores de LISP 5 LISP EN IA 6 EJEMPLOS Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 8. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Introducci´on Historia Especificado en 1958 por John McCarthy, es el segundo m´as viejo lenguaje de programaci´on de alto nivel. Lisp fue pionero en muchas ideas en ciencias de la computaci´on, incluyendo las estructuras de datos de ´arbol, el manejo de almacenamiento autom´atico, tipos din´amicos, y el compilador auto contenido. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 9. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Objeto de datos Entre las caracter´ısticas m´as importantes podemos mencionar: • Todas las variables son punteros • Liberaci´on autom´atica de memoria • Adecuado para prototipados, c´alculo y c´alculo simb´olico • Paradigma de programaci´on funcional • Lenguaje Interpretado Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 10. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Objeto de datos Datos (Expresiones): Los tipos de datos originales son los ´atomos y las listas. Los ´atomos: son las expresiones LISP m´as elementale debido a que se asemejan a las palabras de un lenguaje com´un. Las listas: son grupos de valores relacionados, separados por espacios e incluidos entre par´entesis redondos ”(”Y ”)”. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 11. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Control de Secuencia La ejecuci´on del programa consiste en la evaluaci´on de las funciones contenidas en el mismo. Expresiones: • Condicional • Operaciones sobre ´atomos (en preorden): +, -, *, / • Operaciones sobre listas: cons, list, replace, null, equal. • Operaciones sobre propiedades: put, get. • Enunciados: prog() para ejecuci´on secuencial. • Entrada y salida: open(), read(), print(). • Definici´on de funciones: defun, define. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 12. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Gestion de Sub programas Tres clases de funciones: • Funci´on interpretada: en forma de estructura de listas. Primitivas eval y apply. • Funci´on compilada: compiladas en un bloque de c´odigo m´aquina que puede ser ejecutado por el int´erprete del hardware. • Macro: se declara con define. Es simplemente una funci´on ordinaria en LISP. Puede ser interpretada y compilada. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 13. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Gesti´on de almacenamiento La memoria se estructura en forma de mont´ıculo,usa espacios libres y un recolector de basura Entorno de referencia: • Local, es el que se da en las listas. • Global o com´un, se consigue mediante asociaci´on de un ´atomo. Paso de par´ametros: • Transmisi´on por valor, consiste en evaluar las expresiones de una lista de par´ametros. • Transmisi´on por nombre, transmitir las expresiones de la lista de par´ametros sin evaluar, y dejar que la funci´on llamada Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 14. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Predicados Estos eval´uan cierto o falso, en Lisp falso es NIL: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 15. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Predicados para comprobaci´on de tipo de objeto: INTEGERP Comprueba si el argumento es un n´umero entero. (defun integerp (dato)(eq (type dato) ’INT)) REALP Comprueba si el argumento es un n´umero real. (defun realp (dato)(eq (type dato) ’REAL)) STRINGP Comprueba si el argumento es una cadena. (defun stringp (dato)(eq (type dato) ’STR)) Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 16. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Caracter´ısticas del Lenguaje Abstracci´on y encapsulamiento LISP, en origen, no incluye caracter´ısticas de abstracci´on de datos. CLOS fue una ampliaci´on de LISP con orientaci´on de objetos. Caracter´ısticas: • Herencia m´ultiple. • Funciones gen´erica. • Metaclases y metaobjetos. • T´ecnica de creaci´on e inicializaci´on de objetos que permite control del proceso por parte del usuario. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 17. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Funciones en LISP Aritm´eticas +, -, *, /: Suma, resta, multiplicaci´on y divisi´on EJEMPLO: (+ (* 2 3) 5) 1+, 1- : Incrementa/Decrementa en uno el valor. EJEMPLO: (1+ 9) max, min : Devuelve el valor m´aximo de una lista EJEMPLO: (max 23 4 5 234 654) float: Devuelve el valor en coma flotante EJEMPLO: (float ( 22 / 7)) round: redondea un valor al entero m´as cercano Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 18. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Funciones en LISP Aritm´eticas expt: calcula potencias elevando su primer argumento a su segundo EJEMPLO: (expt 2 3) sqrt: calcula raices cuadradas EJEMPLO: (sqrt 9) abs: calcula el valor absoluto EJEMPLO: (abs -3) random: calcular un n´umero aleatorio de 0 a N-1 EJEMPLO: (random 5) Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 19. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Funciones en LISP Funciones de entrada y salida print, format: son operaciones de salida de texto. read: es una operaci´on de lectura de texto. read-line: absorve caracteres hasta donde aparece un fin de archivo. read-char: lee un car´acter open: permite escribir en archivos eval: es una operaci´on que lee y eval´ua. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 20. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Compiladores de LISP Los mas utilizados • GNU Common Lisp, (Software libre) • Allegro Common Lisp, (Software propietario) • CMU Common Lisp, (Software libre) • CLISP, Una implementaci´on de Common Lisp , (Software libre) • OpenMCL Common lisp para Macintosh , (Software libre) Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 21. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS LISP EN IA Como nace LA IA CON LISP El momento en el que se comienza a utilizar el t´ermino y este se populariza es en 1956, cuando John McCarthy organiza el Dartmouth Summer Research Project on Artificial Intelligence. Los a˜nos sucesivos a ese verano fueron especialmente fruct´ıferos: Newell, Simon y Shaw escribir´ıan el “Logic Theorist” y el “General Problem Solver” y John Mc Carthy crear´ıa Lisp y escribir´ıa el art´ıculo “Programs with Common Sense”. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 22. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS LISP EN IA LISP LENGUAJE DE ALTO NIVEL Lisp era el lenguaje de alto nivel que necesitaban en esos tiempos; fue el primer lenguaje en implementar programaci´on funcional, acercando las matem´aticas al lenguaje; permite entender el lenguaje hasta el nivel del int´erprete y es extensible, permitiendo crear nuevos paradigmas de programaci´on en el lenguaje. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 23. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS LISP EN IA LISP y PROLOG Hasta 1971 no se inventar´ıa Prolog, que se usar´ıa sobre todo en combinaci´on con Lisp, en los sistemas basados en reglas, debido a sus facilidades para el encadenamiento hacia Atr´as, entre otras cosas. As´ı es que hist´oricamente Lisp ha estado asociado a la inteligencia artificial y viceversa. Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 24. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Funciones Crear una funci´on que dada una lista de como resultado una nueva lista pero solo con el primer y ´ultimo elemento de la lista original. SOLUCI´ON: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 25. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Funcion Recursiva Crear una funci´on recursiva que dada una lista como par´ametro retorne la sumatoria de todos sus elementos. SOLUCI´ON: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 26. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Funci´on para matrices Crear una funci´on que permita realizar la suma de matrices. SOLUCI´ON: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 27. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Funci´on para listas Crear una funci´on en LISP que permita realizar suma de listas pares SOLUCI´ON: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 28. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Eliminar el en´esimo termino de una lista SOLUCI´ON: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 29. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS LAS TORRES DE HANOI Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 30. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS LAS TORRES DE HANOI Definicion de funcion torres de hanoi: Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 31. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS EJEMPLOS Recursividad.- LAS TORRES DE HANOI Omar Quito, Fernado Sumba Universidad de Cuenca LISP
  • 32. Introducci´on Caracter´ısticas del Lenguaje Funciones en LISP Compiladores de LISP LISP EN IA EJEMPLOS Bibliografia Bibliograf´ıa Omar Quito, Fernado Sumba Universidad de Cuenca LISP