archivo exposicion complemento

4
Diapositiva 2 Lisp es uno de los lenguajes de programación más simples que existen. Unos pocos conceptos, siete u ocho, abarcan todo el lenguaje. Hablamos de la especificación base del lenguaje, naturalmente. Los distintos dialectos han ido extendiendo el lenguaje y añadiendo nuevas construcciones. Pero, y esto es tremendamente importante, lo han hecho siempre utilizando esos mismos conceptos base. Eso implica que, una vez conocidos los pocos conceptos que constituyen la base del lenguaje, el lector será capaz de interpretar prácticamente cualquier programa Lisp. Esta circunstancia (ser un lenguaje muy sencillo) permite abarcar su estudio desde un punto de vista bastante original, y extremadamente productivo. En el aprendizaje de cualquier otro lenguaje de propósito general se tiende (muy acertadamente) a comenzar impartiendo las características a nivel de lenguaje como léxico (cómo se escribe una palabra reservada), sintaxis (en qué consiste una sentencia, o una expresión) y semántica (cómo evalúa una expresión aritmética). Una vez conocidos estos aspectos del lenguaje, por lo general se pasa a exponer las características más específicas del entorno y, por tanto, de cómo se traducen las semánticas expresadas en el lenguaje en una ejecución (las variables globales en C se inicializan a 0, cosa que no pasa con las variables locales, que contienen un valor indefinido, por ejemplo). En el caso de Lisp, vamos a hacerlo al revés: partiendo del conocimiento de cómo funciona (o cómo “ve el mundo”) un intérprete de Lisp, pasaremos a exponer los aspectos más importantes del lenguaje. El LISP es un lenguaje de programación creado por el profesor John McCarthy a finales de los años 50. John McCarthy quiso desarrollar un lenguaje que mostrara la información estructurada en listas en las que se pudieran gestionar esta. De ahí el nombre que le dio a este lenguaje, Lisp (List-Processing), porque fue creado principalmente para el procesamiento de listas. Con el trascurso del tiempo el Lisp dio origen a varios dialectos. Entre los más importantes podemos citar a: el

description

x

Transcript of archivo exposicion complemento

Diapositiva 2Lisp es uno de los lenguajes de programacin ms simples que existen. Unos pocos conceptos, siete u ocho, abarcan todo el lenguaje. Hablamos de la especificacin base del lenguaje, naturalmente. Los distintos dialectos han ido extendiendo el lenguaje y aadiendo nuevas construcciones. Pero, y esto es tremendamente importante, lo han hecho siempre utilizando esos mismos conceptos base. Eso implica que, una vez conocidos los pocos conceptos que constituyen la base del lenguaje, el lector ser capaz de interpretar prcticamente cualquier programa Lisp. Esta circunstancia (ser un lenguaje muy sencillo) permite abarcar su estudio desde un punto de vista bastante original, y extremadamente productivo. En el aprendizaje de cualquier otro lenguaje de propsito general se tiende (muy acertadamente) a comenzar impartiendo las caractersticas a nivel de lenguaje como lxico (cmo se escribe una palabra reservada), sintaxis (en qu consiste una sentencia, o una expresin) y semntica (cmo evala una expresin aritmtica). Una vez conocidos estos aspectos del lenguaje, por lo general se pasa a exponer las caractersticas ms especficas del entorno y, por tanto, de cmo se traducen las semnticas expresadas en el lenguaje en una ejecucin (las variables globales en C se inicializan a 0, cosa que no pasa con las variables locales, que contienen un valor indefinido, por ejemplo). En el caso de Lisp, vamos a hacerlo al revs: partiendo del conocimiento de cmo funciona (o cmo ve el mundo) un intrprete de Lisp, pasaremos a exponer los aspectos ms importantes del lenguaje. El LISP es un lenguaje de programacin creado por el profesor John McCarthy a finales de los aos 50. John McCarthy quiso desarrollar un lenguaje que mostrara la informacin estructurada en listas en las que se pudieran gestionar esta. De ah el nombre que le dio a este lenguaje, Lisp (List-Processing), porque fue creado principalmente para el procesamiento de listas.Con el trascurso del tiempo el Lisp dio origen a varios dialectos. Entre los ms importantes podemos citar a: el MACLISP, COMMONLISP, INTERLISP, ZETALISP, etc. De todos ellos el COMMONLISP se esta consolidando como el estndar. Del Lisp posteriormente surgi otro lenguaje de programacin importante como es el Logo.El Lisp es un lenguaje funcional que se apoya en la utilizacin de funciones matemticas para el control de los datos. Pero el elemento fundamental en el Lisp es la lista. Y desde el punto de vista ms amplio del trmino. Cada funcin del lisp y cada programa que generemos con l vienen dado en forma de lista. Por esta razn los datos no se pueden diferenciarse sintcticamente de los programas.A este tipo de lenguaje se les denomina aplicativos o funcionales porque se basan en la aplicacin de funciones a los datos. El lisp diferencia dos tipos de elementos bsicos: El tomo, datos elementales de varios tipos como nmeros, smbolos, caracteres y cadenas de caracteres. Y las Listas, entre las que podemos nombrar a un en especial. La lista nil, que es una lista nula que no tiene ningn elemento.El Lisp trata a los elementos o paramentos que le introducimos de manera no destructiva, de forma que la mayora de las funciones nos devuelven una lista que es el resultado de alguna transformacin de otra que recibi, pero sin cambiar a esta (la que recibi).Una de las razones por las que el Lisp esta especialmente dotado para la programacin en inteligencia artificial (IA), es precisamente, porque su cdigo y todos los datos tienen la misma estructura, en forma de lista. El lisp fue uno de los primeros lenguajes en manejar las excepciones con los comandos catch y throw.

Diapositiva 3Inventar con conocimientos en javaDiapositiva 4 Nmeros. Lisp permite almacenar en la memoria de datos tomos de tipo numrico. Esto incluye tanto nmeros enteros (2, 4, 32222) como reales (2.0, 4.43, 3.2222). En forma escrita, los tomos numricos utilizan el lxico habitual de dgitos consecutivos, utilizando un punto para denotar la coma decimal. En la figura 1 podemos ver dos tomos num- ricos: uno consiste en el nmero 1 y el otro en el nmero 2. Cadenas de caracteres. En Lisp las cadenas de caracteres son tomos, y pueden contener cualquier carcter. En forma escrita, los tomos cadena de caracteres utilizan la representacin habitual de caracteres encerrados entre comillas dobles. En la figura 1 podemos ver un tomo de tipo cadena de caracteres en la memoria de datos, siendo su valor foo. Smbolos. Los smbolos son nombres. Su nica semntica es que dos smbolos de distinto nombre se consideran como smbolos distintos. En forma escrita, los smbolos utilizan un lxico similar al de los identificadores de otros lenguajes de programacin, aunque permiten la inclusin de muchos caracteres alfanumricos dada la particular (y generosa) forma sintctica de Lisp, como guiones y barras. En la figura 1 podemos ver dos tomos de tipo smbolo, siendo sus valores a y c. Un aspecto importante de la memoDiapositiva 6Los tomos pueden ser palabras, tal como CASA, SACA, ATOMO, etc. o cualquier disparate como EDSDS, DFKM454, etc. En general, un tomo en LISP puede ser cualquier combinacin de las 26 letras del alfabeto (excluyendo obviamente la ) en conjunto con los 10 dgitos. Al igual que en otros sistemas, no son tomos aquellas combinaciones que comienzan con dgitos.Diapositiva 5Namas hay que explicar la diferencia de las operaciones en lisp con otros lenguajes

Diapositiva 7El segundo tipo de palabras con las que trabaja LISP son las listas. Una lista es puede ser una secuencia de tomos separados por un espacio y encerrados por parntesis redondos, incluyendo la posibilidad de que una lista contenga una sublista que cumple con las mismas caractersticas.

Diapositiva 8 en adelante todo se leera xD