QUE ES PROLOG?
SWI-Prolog es una implementación en código abierto (en inglés, open source) del lenguaje de programación Prolog. Su autor principal
es Jan Wielemaker. En desarrollo
ininterrumpido desde 1987,
SWI-Prolog posee un rico conjunto de características, bibliotecas (incluyendo su propia biblioteca para GUI, XPCE),
herramientas (incluyendo unIDE) y una documentación extensiva.
SWI-Prolog funciona en las plataformas Unix, Windows y Macintosh.
El 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 Ámsterdam en el que Wielemaker está integrado.
El nombre de ese grupo se cambió posteriormente a HCS.
PEQUEÑA HISTORIA
Se trata de un lenguaje
de programación ideado a
principios de los años 70 en la Universidad
de Aix-Marseille I (Marsella, Francia) por los estudiantes modélicos Alain Colmerauer y Philippe Roussel.
Nació de un proyecto que no tenía como objetivo la traducción de un lenguaje de programación, sino la clasificación algorítmica de
lenguajes naturales. Alain Colmerauer y Robert Pasero trabajaban en la parte
del procesado del lenguaje natural y Jean Trudel y Philippe Roussel en la parte
de deducción e inferencia del sistema. Interesado por el método de resolución
SL, Trudel persuadió a Robert Kowalski para que se uniera al proyecto, dando
lugar a una versión preliminar del lenguaje Prolog a finales de 1971 y apareciendo la versión definitiva en
1972. Esta primera versión de
Prolog fue programada en ALGOL W.
Inicialmente
se trataba de un lenguaje totalmente interpretado hasta que, en 1983, David H.D. Warren desarrolló un compilador capaz de
traducir Prolog en un conjunto de
instrucciones de una máquina abstracta denominada Warren Abstract Machine, o
abreviadamente, WAM. Desde
entonces Prolog es un lenguaje semi-interpretado.
Si
bien en un principio se trataba de un lenguaje de uso reducido, la aparición de
intérpretes del mismo para microordenadores de 8 bits (ej: micro-PROLOG) y para
ordenadores domésticos de 16 bits (ej: Turbo
Prolog de Borland, entre otros
muchos) a lo largo de la década de 1980 contribuyó notablemente a su
popularización. Otro importante factor en su difusión
fue la adopción del mismo para el desarrollo del proyecto de la quinta generación de computadoras a principios de la década de los 80, en cuyo contexto se desarrolló la
implementación paralelizada del lenguaje llamada KL1 y
del que deriva parte del desarrollo moderno de Prolog.
Las
primeras versiones del lenguaje diferían, en sus diferentes implementaciones,
en muchos aspectos de sus sintaxis,
empleándose mayormente como forma normalizada el dialecto propuesto por la
Universidad de Edimburgo , hasta que en 1995 se estableció un
estándar ISO (ISO/IEC 13211-1), llamado ISO-Prolog.
Prolog
se enmarca en el paradigma de los lenguajes lógicos y declarativos,
lo que lo diferencia enormemente de otros lenguajes más populares tales como Fortran, Pascal, C o
Java.