Personnellement, j'utilise gprolog ou swipl dans l'environnement interprété. Vous écrivez donc des faits et des règles dans un fichier mydb.pl et ouvrez l'interpréteur dans le même répertoire. Une fois l'invite affichée, vous pouvez interroger
['mydb.pl'].
pour charger votre base de données. maintenant vous pouvez voir les avertissements\erreurs ou commencer à interroger depuis l'intérieur de l'interpréteur prolog.
Oui, vous pouvez utiliser n'importe quel éditeur de texte, incl. VIGUEUR. Une fois que vous avez écrit un fichier source Prolog, disons, file.pl
, vous pouvez le charger dans SWI-Prolog comme suit :
swipl -s file.pl
Cela compilera votre fichier et vous amènera à un shell interactif où vous pourrez ensuite poser des requêtes sur les définitions de votre fichier.
Si vous souhaitez utiliser votre programme Prolog en mode batch, vous pouvez utiliser :
swipl -s file.pl -t goal
où goal
est l'objectif/la requête que vous souhaitez évaluer. Notez que dans ce cas, vous n'aurez pas la possibilité de demander des solutions alternatives.
Sur Ubunutu, j'ai commencé par utiliser emacs, qui fait au moins la coloration syntaxique :
http://www.swi-prolog.org/FAQ/GnuEmacs.html
(2 suggestions emacs sur cette page ^)
Mais maintenant j'utilise prolog en colère, j'utilise un plugin Eclipse appelé PDT :
http://sewiki.iai.uni-bonn.de/research/pdt/docs/v2.1/start
Le débogage et le traçage ligne par ligne en temps réel sont particulièrement utiles, de sorte que vous pouvez entrer, parcourir des prédicats individuels, surveiller les noms de variables, etc., tout comme un autre véritable IDE que vous trouveriez dans eclipse.
L'installation ne vaut probablement la peine que si vous l'utilisez BEAUCOUP, car l'installation demande beaucoup de travail, mais c'est un excellent IDE.
Mais si vous aimez vos éditeurs de bas niveau comme VIM, vous devrez utiliser les outils de débogage et de trace intégrés à swi-prolog, voir :
http://www.swi-prolog.org/pldoc/man?section=debugger
Pour comprendre comment fonctionne l'étrange et magnifique interpréteur de prologue, l'utilisation d'un traceur quelconque est indispensable.