私は自分の仕事のためにプロローグを学び始める必要があります。
私は以前にPrologを使用したことがなく、会社はPrologを使用するプログラムを構築する必要があります。
したがって、プログラムは商業的に使用されます。
だからいくつかの質問:
1)Prologはコンパイラーを使用してプログラムをコンパイルしますか? gccがcに対して行うように?
2)プロローグの商用規格はありますか?私はSWI Prologについてしか聞いたことがありません。
3)私は長年、LinuxでGNU Emacsを使用しています。Prolog.elパッケージの使用を考えていますか?それについてのコメント?
答えてくれてありがとう
最も精巧なProlog IDE私が精通しているのはEclipseベースのIDE Amzi!Prologです。これは商用製品ですが、IDEはStudent Editionで無料でダウンロードして使用できます。初心者のPrologプログラマーにとっては理想的かもしれません。免責事項:Amzi!のサポートフォーラムで無料のアドバイスをたくさん提供しているので、偏見があるかもしれません。いくつかのオープンソースのProlog実装もサポートするオープンソースのEclipseプラグインがあると思いますUpdate(2016年5月)Amzi!Prolog v。 10は現在、MITのようなライセンスを使用して オープンソースになる を持っています。
SWI-Prologはオープンソース(GPL)ですが、GNU PrologやYAPなどの他のいくつかのオープンソースProlog実装と同様に、SWI-Prologを使用して商用アプリケーションを開発できます。Amzi!Prolog以外にも、他のいくつかの商用製品です。VisualPrologは、PrologのISO標準と十分に異なり、ほとんどのPrologプログラマーはそれを「実際のプロローグ」とは見なしません。SICStusPrologはISO準拠の商用Prolog実装です。Prologに似ているが、 Eclipse(IDEと混同しないでください)やMercuryなどの大幅な拡張機能。IFPrologがMINERVAに取って代わられたときのように、Prologの多くの商用実装は長年にわたって時代遅れになっています。ここに 実装のリスト 2006年から。
GNU EMACSのプロローグモードを高く評価している多くのプログラマーを知っています。しかし、初心者はAmzi!プロローグが提供するような統合されたデバッガー/エディターの恩恵を受けると思います。SWI-プロローグはグラフィカルIDEはXPCEに基づいて作成中です。これは、SWI-Prologがクロスプラットフォーム開発用に選択したグラフィカルインターフェイスライブラリです。ほとんどすべてのプログラマーエディターは、正しい定義でPrologの構文強調表示を提供しますファイルがインストールされました。
SICStus Prolog には EclipseベースのIDE があります。 SICStus IDEには、無料または商用の競合製品には見られない多くの高度な機能があります。特に、入力時に構文エラーやその他の一般的な間違いを検出します。これは、初心者にとって特に価値があります。
SICStusにはEmacsモードもありますが、EclipseベースのIDEのすべての機能を提供するわけではありません。
SICStus Prologの評価は ホームページ からダウンロードできます。
私は偏見があります。私はSICStus Prolog開発者の1人であり、SICStus Prolog IDEの開発者です。
Gusbroがすでに言ったことに加えて、SWI-Prologは、学習に最適なPrologだと思います。これは最速の実装ではないかもしれませんが、コマンドライン編集や組み込みのEmacsのようなエディターなどのかなりの数の特徴があり、無料のソフトウェアであり、WindowsとLinux(およびMac OS X)の両方に簡単にインストールできます。も、私は考えている)。ほとんどのPrologsと同様に、仮想マシンのバイトコードコンパイラとして実装されています。ネイティブコードを生成するものでさえ、ある時点で仮想マシンを使用することがよくあります。
Prologの基本は、実装間でほとんど同じです。追加のライブラリ、OSインターフェース、制約プログラミングなどの非標準の拡張機能は少し異なる傾向があります。
さまざまなProlog-JavaおよびProlog-C#インターフェースが存在します。 SWIには、Webサーバーとして機能するための拡張機能があります。
通常、prologプロジェクトをコンパイルできます。ただし、使用しているプロローグ環境によっては、中間コードであり、直接実行可能なコードではない場合があります。 SWIプロローグとSicstusプロローグはどちらも、この形式の実行可能ファイルを生成することができます(インタープリターをコンパイル済みの中間コードと共に埋め込む)。 Arity Prolog/32などの他のプロローグは、x86実行可能ファイルに直接コンパイルされます。 Wikipediaには、さまざまなプロローグシステム 比較 のページがあります。
PrologにはISO標準があります。ただし、ほとんどすべてのプロローグシステムは互いにほとんど互換性があり、コードをあるプロローグシステムから別のプロローグシステムに移植するために少し変更する必要があります。
私は商業開発のためにideに組み込まれたswi-prologを使用しています。
OSによっては、グラフィック環境を取得するためにswipl-win.exeまたはxpceから始める必要がある場合があります。
私はEclipseを使用していますIDEプラグイン [〜#〜] pdt [〜#〜] と呼ばれています。インストールはかなり簡単で、すばらしいと思いますインストール後、「 開始ページ 」の指示に従ってインストールを完了し、稼働させることができます。
emacs環境での作業に慣れている場合は、Ciaoディストリビューションを使用してみてください。多くの興味深い強力な機能、ライブラリがあり、またGNU LGPLライセンスです。高度に文書化され、サポートされています。 http://ciaohome.org/ にアクセスしてください