Diferencia entre revisiones de «Programación en LISP»

Contenido eliminado Contenido añadido
m {{libro2}} >> {{subst:libro2}}
Línea 5:
Lisp es un lenguaje de programación usado en el mundo de la [[w:inteligencia artificial|inteligencia artificial]]. A diferencia de otros lenguajes de programación, en Lisp, a pesar de ser un lenguaje con una cierta antigüedad, no es un lenguaje del que se disponga de mucha documentación, de hecho, casi toda la documentación disponible esta en inglés, y como es mi caso, hago uso de este medio para poder traducir a mi idioma, en este caso nuestro idioma y cultura que es el castellano, e ir ganando en la medida de lo posible, la batalla al inglés.
 
Lisp se diferencia de otros lenguajes, en que la forma de entender la programación no es la clásica que todo el mundo suele manejar, es decir, la forma de programación es totalmente [[w:Programación declarativa|declarativa]] y no [[w:Programación imperativa|procedimental]] como en el caso de los famosos lenguajes de programación {{libro2libro|Programación en C|C}}/{{libro2libro|Programación en C Más Más|C++}}, {{libro2libro|Programación en Java|Java}}, {{Libro2libro|Programación:C sharp NET|C<nowiki>#</nowiki> .NET}}, {{Libro2libro|Manual de ASP|ASP}}, {{libro2libro|Programación en PHP|PHP}}, etc.
 
Cuando se quiere implementar un problema en Lisp, éste se realiza escribiendo lo que se quiere conseguir y como, pero sin indicar paso a paso la secuencia de acciones que la computadora debe de realizar. Esta filosofía aunque parezca extraña, seguro que muchos programadores ya la han usado, ya que existen otros lenguajes declarativos como puedan ser el Prolog, Perl e incluso el mismo SQL. En esto lenguajes especificamos el qué queremos obtener sin preocuparnos del cómo.
Línea 66:
 
==cond==
La palabra cond ejecuta un flujo de control dependiendo de la condición si es cierta o no. Es algo parecido al switch de {{libro2libro|Programación en C|C}}/{{libro2libro|Programación en C Más Más|C++}}, {{libro2libro|Programación en Java|Java}}, {{Libro2libro|Programación:C sharp NET|C<nowiki>#</nowiki> .NET}}, etc.. pero con la diferencia que en este caso lo que se pone en los case son condiciones lógicas y no constantes.
 
(cond ((condicion1) bloque1)