LISP Lenguaje de programacin de 5 generacin QU

  • Slides: 26
Download presentation
LISP Lenguaje de programación de 5ª generación

LISP Lenguaje de programación de 5ª generación

¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN? Lenguaje formal diseñado para realizar procesos que pueden

¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN? Lenguaje formal diseñado para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras.

LENGUAJE DE 5ª GENERACIÓN Clasificación para los lenguajes de programación que incluye aquellos que

LENGUAJE DE 5ª GENERACIÓN Clasificación para los lenguajes de programación que incluye aquellos que emplean la programación con restricciones para resolver problemas, en lugar de emplear algoritmos escritos por el programador.

¿QUÉ ES LISP? List processing (Procesamiento de listas) Es una familia de lenguajes de

¿QUÉ ES LISP? List processing (Procesamiento de listas) Es una familia de lenguajes de programación de computadora de tipo multiparadigma Se basa en la aplicación de funciones a los datos y se apoya en la utilización de funciones matemáticas para el control de los mismos.

HISTORIA Creado en el MIT (Instituto Tecnológico de Massachusetts) en 1958 Bajo la dirección

HISTORIA Creado en el MIT (Instituto Tecnológico de Massachusetts) en 1958 Bajo la dirección de John Mc. Carthy Diseñado para IBM 704

El diseño fue publicado en 1960 en Communications of the ACM (Association For Computing

El diseño fue publicado en 1960 en Communications of the ACM (Association For Computing Machinery) Titulado "funciones recursivas de expresiones simbólicas y su cómputo por la máquina, parte I"

Primera implementación en el mercado con un manual se llamó “Lisp 1. 5” Antes

Primera implementación en el mercado con un manual se llamó “Lisp 1. 5” Antes de finales de la década se creo Lisp 1. 6, Lisp 1. 75, Lisp 1. 9 A finales de los 60´s surge Lisp 2

CARACTERISTICAS LISP posee un manejo de memoria automático que libera el espacio utilizado por

CARACTERISTICAS LISP posee un manejo de memoria automático que libera el espacio utilizado por los objetos que dejan de ser necesitados. Incluye un mecanismo bastante simple para utilizar evaluaciones lentas de expresiones LISP no posee un sistema de datos estáticos los errores solo pueden ser detectados en tiempo de ejecución y no de compilación.

VENTAJAS Se puede razonar matemáticamente Tiene compatibilidad con todos los sistemas operativos Programación corta

VENTAJAS Se puede razonar matemáticamente Tiene compatibilidad con todos los sistemas operativos Programación corta y sencilla

DESVENTAJAS La ejecución de los programas es más lenta. Código “feo” y dificil de

DESVENTAJAS La ejecución de los programas es más lenta. Código “feo” y dificil de comprender, sobretodo en programas de tamaño considerable en grupo Dificultad para depuración

COMPILADORES LISP En los sistemas LISP modernos todos los elementos que se introducen en

COMPILADORES LISP En los sistemas LISP modernos todos los elementos que se introducen en la computadora a través del teclado pasan por un ciclo conocido como read-eval-print (lecturaevaluación-impresión).

ALGUNOS COMPILADORES GNU Common Lisp, (Software libre) Allegro Common Lisp, (Software propietario) CMU Common

ALGUNOS COMPILADORES GNU Common Lisp, (Software libre) Allegro Common Lisp, (Software propietario) CMU Common Lisp, (Software libre) CLISP, Una implementación de Common Lisp , (Software libre) Open. MCL Common lisp para Macintosh , (Software libre) Steel Bank Common Lisp, (Creado a partir de CMU Common Lisp, es un software libre con énfasis en proveer facilidades para su mantenimiento. )

MÁQUINA LISP Computadora de uso general destinada, gracias a su particular hardware, a ejecutar

MÁQUINA LISP Computadora de uso general destinada, gracias a su particular hardware, a ejecutar eficientemente programas escritos en Lisp.

ENTORNOS DE PROGRAMACIÓN COMMONLISP FRANZLISP LE-LISP NIL UCI-LISP

ENTORNOS DE PROGRAMACIÓN COMMONLISP FRANZLISP LE-LISP NIL UCI-LISP

SINTAXIS Los caracteres mas comunes de la sintaxis de lisp son: ( Un parentesis

SINTAXIS Los caracteres mas comunes de la sintaxis de lisp son: ( Un parentesis izquierdo indica el comienzo de una lista de objetos. ) Un parentesis derecho termina una lista de objetos ‘ un apóstrofo, seguido de un objeto, es la abreviación de la función

; El punto y coma es el carácter que indica el principio de un

; El punto y coma es el carácter que indica el principio de un comentario , La coma se emplea como un blanco “ Las dobles comillas sirven para delimitar las de caracteres ] El corchete derecho es un superparéntesis que sirve para balancear (cerrar) todos los parentesis izquierdos

DATOS Common Lisp tiene predefinidos una serie de tipos de datos El usuario puede

DATOS Common Lisp tiene predefinidos una serie de tipos de datos El usuario puede definir otros tipos de datos Dentro de un tipo de datos pueden existir subtipos que, a su vez pueden tener subtipos

TIPOS DE DATOS

TIPOS DE DATOS

NUMBER Common Lisp contiene cuatro tipos de datos Numéricos para el tratamiento de éstos

NUMBER Common Lisp contiene cuatro tipos de datos Numéricos para el tratamiento de éstos Los tipos de datos son: Integer, Ratio, Floating-point y Complex.

INTEGER • Contiene el conjunto de números enteros • Números positivos y negativos sin

INTEGER • Contiene el conjunto de números enteros • Números positivos y negativos sin decimales

RATIO • Se representan por dos enteros: un numerador y un denominador • El

RATIO • Se representan por dos enteros: un numerador y un denominador • El numerador puede ser positivo o negativo • El denominador debe ser un numero diferente a 0

FLOATING-POINT • Números de COMA FLOTANTE son aquellos que tienen decimales. • Según el

FLOATING-POINT • Números de COMA FLOTANTE son aquellos que tienen decimales. • Según el número de dígitos existen estos subtipos : Long, Short, Single y Double

COMPLEX • Los números tipo COMPLEJO Formado por una parte real y otra imaginaria

COMPLEX • Los números tipo COMPLEJO Formado por una parte real y otra imaginaria (Parte-real (- 45/34 Parte-imaginaria) 21. 87546)

OPERACIONES BÁSICAS

OPERACIONES BÁSICAS

REFERENCIAS http: //jyplisp. galeon. com/ http: //bvs. sld. cu/revistas/san/vol 2_2_98/san 15298. html https: //www.

REFERENCIAS http: //jyplisp. galeon. com/ http: //bvs. sld. cu/revistas/san/vol 2_2_98/san 15298. html https: //www. ecured. cu/Lisp https: //es. wikipedia. org/wiki/Analizador_si nt%C 3%A 1 ctico http: //www. larevistainformatica. com/Lisp. htm

https: //es. wikibooks. org/wiki/Programaci% C 3%B 3 n_en_LISP http: //www. davidam. com/docu/un-lenguajeen-diez-minutos. html http:

https: //es. wikibooks. org/wiki/Programaci% C 3%B 3 n_en_LISP http: //www. davidam. com/docu/un-lenguajeen-diez-minutos. html http: //www. rodoval. com/paginalen. php? len =Lisp https: //sobrelisp. blogspot. mx/2012/04/entor no-de-desarrolo-lisp. html