El documento compara tres lenguajes de programación lógica: Prolog, CLIPS y Lisp. Prolog se basa en listas y representa datos como una serie de elementos separados por comas entre corchetes. CLIPS incorpora objetos y puede extenderse mediante protocolos definidos. Lisp no tiene tipos estáticos, representa funciones como expresiones entre paréntesis y usa listas encadenadas como estructura de datos principal.
1. CUADRO COMPARATIVO DE PROGRAMACIÒN LÒGICA
PROLOG
Conformado por listas, que son estructuras
de datos muy común en la programación no
numérica.
Utiliza una secuencia ordenada de
elementos que puede tener cualquier
longitud.
CLIPS
Incorpora un conjunto de lenguaje orientado a
objetos (COOL) para la elaboración de
sistemas expertos.
Aunque está escrito en C, su interfaz más
próxima se parece a LISP
LISP
LISP no posee un sistema de tipos estáticos
.LISP asocia los tipos a los valores en vez que
a las variables.
Una función se representa como una expresión
completamente puesta entre paréntesis con
todos los operadores en la forma prefija.
Sus elementos pueden ser cualquier
término e incluso otra lista.
Puede escribirse extensiones a CLIPS sobre C, Las listas encadenadas son una de las
y al contrario, LISP puede ser llamado desde C. estructuras de datos importantes del Lisp, y el
código fuente del Lisp en sí mismo está
compuesto de listas.
Se representa como una serie de elementos Puede ser extendido por el usuario mediante el La intercambialidad del código y los datos
separados por comas y encerrados entre
uso de protocolos definidos.
también da a Lisp su instantáneamente
corchetes.
reconocible sintaxis.
Prolog tiene un sintaxis y semántica
simples. Solo busca relaciones entre los
objetos creados.
Permite manejar una amplia variedad de
conocimiento, soportando tres paradigmas de
programación: el declarativo, el imperativo y el
orientado a objetos
La principal característica de LISP es su
habilidad de expresar algoritmos recursivos que
manipulen estructuras de datos dinámicos
Produce estilo de programación orientada a La versión estándar de CLIPS provee un
metas. No se especifica cómo debe hacerse. ambiente de desarrollo interactivo y basado en
texto
Los programas de LISP pueden manipular el
código fuente como una estructura de datos,
dando lugar a macro sistemas.
El programa de PROLOG se compone de
CLIPS fue escrito en C con el fin de hacerlo
hechos (datos) y un conjunto de reglas es
mas portable y rápido es multiplataforma sin
decir, relaciones entre objetos de la base de ser necesario modificar su código
datos
Las funciones del Lisp pueden ser manipuladas
alteradas o aun creadas dentro de un programa
Lisp sin un extensivo análisis sintáctico
(parsing) o manipulación de código de maquina
binario.