Je dois commencer à apprendre Prolog pour mon travail.
Je n'ai jamais utilisé Prolog auparavant et mon entreprise doit créer un programme qui utilisera Prolog.
Le programme sera donc utilisé commercialement.
Donc quelques questions:
1) Prolog utilise-t-il un compilateur pour compiler les programmes. Comme gcc le fait pour c?
2) Existe-t-il une norme commerciale de Prolog? Je n'ai entendu parler que de SWI Prolog.
3) J'utilise GNU Emacs avec Linux depuis de nombreuses années. Je pense utiliser le package Prolog.el? Des commentaires à ce sujet?
Merci beaucoup pour toutes les réponses,
Le Prolog le plus élaboré IDE que je connais est celui basé sur Eclipse IDE pour Amzi! Prolog. Il s'agit d'un produit commercial, mais le IDE peut être téléchargé et utilisé gratuitement dans l'Édition Étudiant. Il pourrait être idéal pour un programmeur Prolog débutant. Avertissement: je peux être biaisé parce que je fournis beaucoup de conseils gratuits sur le forum d'assistance d'Amzi! Je pense qu'il existe un plugin Eclipse open source qui prend également en charge certaines des implémentations open source de Prolog. Mise à jour (mai 2016) Amzi! Prolog v. 10 a maintenant devenu open source en utilisant une licence de type MIT.
Bien que SWI-Prolog soit open source (GPL), il est possible de développer des applications commerciales avec lui, comme avec plusieurs autres implémentations Prolog open source comme GNU Prolog et YAP. Outre Amzi! Prolog, il y a plusieurs autres produits commerciaux. Visual Prolog est suffisamment différent de la norme ISO pour Prolog que la plupart des programmeurs Prolog ne le considèrent pas comme un "vrai prolog". SICStus Prolog est une implémentation commerciale Prolog conforme ISO. Il y en a d'autres qui sont de type Prolog mais avec extensions substantielles, comme Eclipse (à ne pas confondre avec l'IDE) et Mercury. Un certain nombre d'implémentations commerciales de Prolog sont devenues obsolètes au fil des ans, comme lorsque IF Prolog a été remplacé par MINERVA. Voici ne liste d'implémentations à partir de 2006.
Je connais de nombreux programmeurs qui font l'éloge du mode Prolog pour GNU EMACS. Cependant, je pense qu'un débutant bénéficierait d'un débogueur/éditeur intégré comme Amzi! Prolog propose. SWI-Prolog a un graphique IDE en construction basé sur XPCE, qui est la bibliothèque d'interface graphique que SWI-Prolog a choisie pour le développement multiplateforme. Presque tous les éditeurs de programmeurs fourniront une coloration syntaxique pour Prolog, avec les bonnes définitions fichier installé.
SICStus Prolog a un IDE basé sur Eclipse . Le SICStus IDE possède de nombreuses fonctionnalités avancées que l'on ne trouve pas dans les produits concurrents, gratuits ou commerciaux. Il détecte entre autres les erreurs de syntaxe et autres erreurs courantes lors de la frappe, ce qui peut être particulièrement utile pour un débutant.
SICStus dispose également d'un mode Emacs mais il n'offre pas toutes les fonctionnalités de l'IDE basé sur Eclipse.
Vous pouvez télécharger une évaluation de SICStus Prolog depuis la page d'accueil .
Je suis partisan, je suis l'un des développeurs SICStus Prolog et le développeur de l'IDE SICStus Prolog.
En plus de ce que Gusbro a déjà dit: SWI-Prolog est, je pense, le meilleur Prolog pour l'apprentissage. Ce n'est peut-être pas l'implémentation la plus rapide, mais il a pas mal de cloches et de sifflets comme l'édition de ligne de commande et un éditeur de type Emacs intégré, c'est un logiciel gratuit et il est facile à installer sur Windows et Linux (et Mac OS X je pense aussi). Il est implémenté comme un compilateur de bytecode pour une machine virtuelle, comme la plupart des Prologs; même ceux qui produisent du code natif utilisent souvent une machine virtuelle à un moment donné.
Les bases de Prolog sont sensiblement les mêmes parmi les implémentations; les extensions non standard telles que les bibliothèques supplémentaires, les interfaces OS, la programmation par contraintes, etc. ont tendance à être un peu différentes.
Il existe différentes interfaces d'interfaces Prolog-Java et Prolog-C #. SWI possède des extensions qui lui permettent de fonctionner comme un serveur Web.
Vous pouvez généralement compiler votre projet prolog. Cependant, selon l'environnement prologue que vous utilisez, il peut s'agir d'un code intermédiaire et non d'un code directement exécutable. SWI Prolog et Sicstus prolog permettent tous deux de générer un exécutable de ce formulaire (en incorporant l'interpréteur avec le code intermédiaire compilé). D'autres prologues comme Arity Prolog/32 se compilent directement dans un exécutable x86. Il y a une page sur Wikipedia qui compare divers systèmes de prologue.
Il existe une norme ISO pour les prologues. Cependant, presque tous les systèmes de prologue seront pour la plupart compatibles entre eux, nécessitant des modifications mineures pour porter le code d'un système de prologue à un autre.
J'utilise le swi-prolog intégré dans ide pour le développement commercial.
Selon votre système d'exploitation, vous devrez peut-être commencer par swipl-win.exe ou xpce pour obtenir l'environnement graphique
J'utilise un plug-in Eclipse IDE appelé PDT . L'installation est assez facile et je pense que c'est un Nice Après l'installation, vous pouvez suivre les instructions à la " page de démarrage " pour terminer votre installation et vous mettre en route.
si vous avez l'habitude de travailler dans un environnement emacs, essayez d'utiliser la distribution Ciao. Il possède de nombreuses fonctionnalités et bibliothèques intéressantes et puissantes et est également GNU Licence LGPL. Hautement documenté et pris en charge. Allez à http://ciaohome.org/