viernes, 19 de julio de 2013

INTERPRETACIÓN LÓGICA

  • Conceptos de lógica que se definen.
  • Mecanismos de derivación a partir de reglas de inferencias.
  • Unificación (realiza dicha operación en presencia de variables).




Compiladores e intérpretes

• Existen una gran variedad de estrategias para conseguir que un programa se
ejecute en un ordenador
• Todas se basan en los "meta-programas" (compiladores, intérpretes, etc.)
cuyos datos de entrada son el código fuente de otros programas.
Compilación
• Ejemplos: C, C++
• Diferentes momentos en la vida de un programa: tiempo de compilación y
tiempo de ejecución
• Mayor eficiencia





 Interpretación
• Ejemplos: BASIC, LISP, Python, Ruby
• No hay diferencia entre el tiempo de compilación y el tiempo de ejecución
• Mayor flexibilidad: el código se puede construir y ejecutar "onthefly" (funciones lambda o clousures)

GNU Prolog
El GNU Prolog (también llamado gprolog) es un compilador con un ambiente interactivo de depuración para el lenguaje Prolog disponible para Unix, Windows y Mac OSX. También soporta algunas extensiones al Prolog incluyendo programación con restricciones sobre un dominio finito, usando gramáticas cláusula definida, y una interface de sistema operativo
El compilador convierte el código fuente de Prolog en codigo byte que se puede ser interpretado por una máquina abstracta de warren y convierte esto en código ejecutable independiente.

SWI-Prolog
SWI-Prolog es una implementación en código abierto del lenguaje de programacion PROLOG. Su autor principal es Jan WielemakerSWI-Prolog posee un rico conjunto de características, bibliotecas, herramientas y una documentación extensiva, funciona en las plataformas Unix, Windows y MacintoshEl nombre SWI deriva de Sociaal-Wetenschappelijke Informatica ("Informática de Ciencias Sociales"), el antiguo nombre de un grupo de investigación en la Universidad de Amsterdan en el que Wielemaker está integrado. El nombre de ese grupo se cambió a HCS(Human-ComputerStudies).

Amzi Prolog.
Es un Prolog comercial, pero tiene versiones para uso personal sin costo.

Prolog comercial. La página contiene una gran variedad de material en Prolog y varios enlaces interesantes.



Arity/Prolog 32
Es un completo entorno de programación en Prolog para Windows de 32 bits que incluye un verdadero compilador, editor, depurador, intérprete y ayuda. Para descargarlo hay que rellenar un formulario.


CU~PROLOG 
Es un lenguaje CLP experimental adecuado para el procesamiento de lenguajes naturales. Hay versiones Unix, MS-DOS (djcup) y Macintosh (MacCup).



Es un intérprete de Prolog compatible con Java que permite añadir la potencia de Prolog a cualquier aplicación o applet Java.

 Es un intérprete Prolog escrito en Java con un sistema innovador de built-ins basado en la extensión Fluents.
 es un entorno de programación en Prolog para Windows sucesor de Turbo Prolog y PDC Prolog.
La Personal Edition es gratuita, pero sólo debe usarse para su aprendizaje y no se deben distribuir los ejecutables generados, que mostrarán al principio un letrero.






XSB 

Es una extensión de Prolog para incluir una implementación eficiente de memorización y una implementación inicial de HiLog. Se puede descargar el código fuente y ejecutables para Windows.

Es un intérprete de un lenguaje tipo Prolog implementado en Java. Es muy portable y puede ejecutarse como aplicación o como applet.
SLDDRAW
Se trata de una aplicación que nos permite trazar arboles de ejecución SLD que meustra el árbol SLD y permite manipularlo hasta conseguir una representación adecuada, el árbol se genera por niveles y, dado un árbol puede tener ramas infinitas, Un circulo verde o rojo nos indica  claramente si el árbol esta completo o no. Esta herramienta nos facilita la visualización de árboles SLD para un programa y objetivo dado, permite modificar la visualización atendiendo a varios parámetros,  controla el nivel de profundidad del árbol.

Otros sitios interesantes relacionados con Prolog.




No hay comentarios: