SWI-Prolog - SWI-Prolog

SWI-Prolog
Autor (es) original (es) Jan Wielemaker
Desarrollador (es) Jan Wielemaker, Anjo Anjewierden, etc.
Versión inicial 1987 ; Hace 34 años ( 1987 )
Lanzamiento estable
8.2.4 / 27 de enero de 2021 ; hace 7 meses ( 27/01/2021 )
Versión de vista previa
8.3.28 / 4 de agosto de 2021 ; Hace 24 dias ( 04-08-2021 )
Escrito en C , prólogo
Sistema operativo Multiplataforma
Disponible en inglés
Escribe Programación lógica
Licencia BSD simplificado , LGPL antes de la versión 7.3.33
Sitio web swi-prolog .org

SWI-Prolog es una implementación gratuita del lenguaje de programación Prolog , comúnmente utilizado para la enseñanza y aplicaciones web semánticas . Tiene un amplio conjunto de características, bibliotecas para programación lógica de restricciones , multiproceso , pruebas unitarias , GUI , interfaz con Java , ODBC y otros, programación alfabetizada , un servidor web , SGML , RDF , RDFS , herramientas de desarrollo (incluido un IDE con un Depurador de GUI y generador de perfiles de GUI ) y una amplia documentación.

SWI-Prolog se ejecuta en plataformas Unix , Windows , Macintosh y Linux .

SWI-Prolog ha estado en continuo desarrollo desde 1987. Su autor principal es Jan Wielemaker.

El nombre SWI se deriva de Sociaal-Wetenschappelijke Informatica ("Informática de las ciencias sociales"), el nombre anterior del grupo en la Universidad de Amsterdam , donde trabaja Wielemaker. El nombre de este grupo ha cambiado a HCS (Human-Computer Studies).

Marco web

SWI-Prolog se instala con un marco web basado en gramáticas de cláusulas definidas .

Computación distribuída

Las consultas de SWI-Prolog pueden distribuirse en varios servidores y páginas web a través del sistema Pengines.

XPCE

XPCE es un conjunto de herramientas de GUI orientado a objetos independiente de la plataforma para SWI-Prolog, Lisp y otros lenguajes interactivos y dinámicamente tipados . Aunque XPCE fue diseñado para ser independiente del idioma, ha ganado popularidad principalmente con Prolog. El desarrollo del conjunto de herramientas gráficas XPCE comenzó en 1987, junto con SWI-Prolog.

Admite botones , menús , controles deslizantes , pestañas y otros widgets básicos de GUI . XPCE está disponible para todas las plataformas compatibles con SWI-Prolog.

PceEmacs

PceEmacs es un editor incorporado de SWI-Prolog. PceEmacs es un clon de Emacs implementado en Prolog (y XPCE). Admite sangría adecuada , resaltado de sintaxis , verificación de sintaxis completa llamando al analizador SWI-Prolog , advirtiendo sobre variables singleton y encontrando definiciones de predicado basadas en la información de origen de la base de datos de Prolog.

Interfaz entre Java y Prolog (JPL)

JPL es una interfaz bidireccional entre Java y Prolog. Requiere tanto SWI-Prolog como Java SDK . Se instala como parte de SWI-Prolog.

Bibliotecas de programación lógica de restricciones (CLP)

La funcionalidad de programación de lógica de restricción llegó bastante tarde en la vida útil de SWI-Prolog, porque carecía del soporte básico. Esto cambió a principios de 2004, cuando se agregaron variables atribuidas al lenguaje. La biblioteca CHR de Leuven fue entonces la primera biblioteca CLP que se transfirió a SWI-Prolog. Mencionamos la biblioteca INCLP (R) de SWI-Prolog (De Koninck et al. 2006), que proporciona restricciones no lineales sobre los reales y se implementó sobre CHR. Más tarde vino un puerto de la biblioteca CLP (QR) de Christian Holzbaur y un solucionador CLP (FD) de dominio finito. Finalmente, se agregó un solucionador booleano CLP (B).

Ver también

Referencias

enlaces externos