Programación Prolog en Ubuntu


Tengo un interés en jugar y fuxing con prolog, he instalado el swi-prolog y añadido el repositorio, por si alguien está interesado en cuál de los comandos he utilizado:

% sudo apt-add-repository ppa:swi-prolog/stable
% sudo apt-get update
% sudo apt-get install swi-prolog

¿Cómo empiezo a escribir códigos prolog en mi máquina linux? para mi programación regular uso VIM para escribir / editar / depurar y terminal para compilar. ¿Puedo usar vim para escribir prolog? ¿Cómo compilo o uso el intérprete prolog (creo que así se llama)?

Author: lurker, 2013-12-08

3 answers

Sí, puede utilizar cualquier editor de texto, incl. VIM. Una vez que haya escrito un archivo fuente prolog, por ejemplo, file.pl, puede cargarlo en swi-prolog de la siguiente manera:

swipl -s file.pl

Esto compilará su archivo y lo llevará a un shell interactivo donde podrá realizar consultas sobre las definiciones de su archivo.

Si desea utilizar su programa prolog en modo por lotes, puede utilizar:

swipl -s file.pl -t goal

Donde goal es el objetivo/consulta que desea evaluar. Tenga en cuenta que en este caso no obtendrá el opción de pedir soluciones alternativas.

 37
Author: Christian Fritz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-08 00:50:05

En Ubunutu, empecé usando emacs, que al menos hace resaltado de sintaxis:

Http://www.swi-prolog.org/FAQ/GnuEmacs.html

(2 sugerencias de emacs en esa página ^)

Pero ahora uso prolog con ira, uso un complemento de Eclipse llamado PDT:

Http://sewiki.iai.uni-bonn.de/research/pdt/docs/v2.1/start

Especialmente útil es la depuración y el seguimiento línea por línea en tiempo real, para que pueda entrar, pasar por encima de predicados individuales, monitorear nombres de variables, etc.. al igual que otro IDE real que encontrarías en eclipse.

Probablemente solo vale la pena instalar si vas a usarlo MUCHO, ya que la instalación es mucho trabajo, pero es un gran IDE.

Pero si te gustan tus editores de bajo nivel como VIM, tendrás que usar las herramientas de depuración y rastreo integradas en swi-prolog, ver:

Http://www.swi-prolog.org/pldoc/man?section=debugger

Para averiguar cómo funciona el extraño y hermoso intérprete de prolog, el uso de un trazador de algún tipo es imprescindible.

 9
Author: magus,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-12-09 18:55:37

Yo personalmente uso gprolog o swipl en el entorno interpretado. Así que escribes hechos y reglas en un mydb.pl y abra el intérprete en el mismo directorio. Una vez que aparezca el mensaje, puede consultar

['mydb.pl'].

Para cargar su base de datos. ahora puede ver las advertencias \ errors o comenzar a consultar desde dentro del intérprete prolog.

 1
Author: majik,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-13 12:32:51