16

論理プログラミングに特化した Prolog よりも新しい言語はありますか?

4

6 に答える 6

10

Mercuryは素晴らしくモダンで、プロローグに似ています。

Mercury は、宣言型プログラミングの明快さと表現力を、高度な静的分析およびエラー検出機能と組み合わせた、新しいロジック/関数型プログラミング言語です。その高度に最適化された実行アルゴリズムは、既存のロジック プログラミング システムをはるかに上回り、従来のプログラミング システムに近い効率を実現します。Mercury は大規模なプログラム開発の問題に対処し、モジュール性、個別のコンパイル、多数の最適化/時間のトレードオフを可能にします。

于 2011-01-16T16:18:04.350 に答える
5

Curryと呼ばれる非常に有望な関数型論理プログラミング言語があります。その新しさにもかかわらず、Haskell と Prolog はこれら 2 つの言語の直接的な影響を受けているため、既に知っている場合は Curry に慣れるのは簡単です。

Curry は、関数型プログラミング (ネストされた式、高階関数、遅延評価)、論理型プログラミング (論理変数、部分データ構造、組み込み検索)、および並行プログラミング (同期を使用した式の並行評価) の機能をシームレスな方法で組み合わせます。論理変数)。

于 2011-01-16T16:22:28.357 に答える
3

Logtalkは、コードのカプセル化と再利用メカニズムに焦点を当てた、大規模なプログラミングに適した機能セットを備えた Prolog 言語を拡張および活用するオブジェクト指向のロジック プログラミング言語です。移植性が高く、最も積極的に維持されている Prolog 実装をバックエンド コンパイラとしてサポートします。その他の注目すべき機能には、プロトタイプとクラス、プロトコル (インターフェース)、コインダクション、コンポーネントベースのプログラミング、イベント駆動型プログラミング、および高レベルのマルチスレッドプログラミングの両方のサポートが含まれます。現在のディストリビューションには、多数のプログラミング例、プログラミング ツール、ライブラリ、テキスト エディタ、およびプログラミングとソース コードの公開のためのシンタックス ハイライターのサポートが含まれています。

于 2013-11-16T02:23:26.483 に答える
1

Oz/Mozartは、その機能の 1 つとしてロジック プログラミングをサポートするマルチパラダイム プログラミング言語です。使ったことがないので良し悪しはわかりません。確かに面白そうだけど。

免責事項: 私は Mercury プロジェクトに取り組んでおり、Oz/Mozart と Mercury の間で Mercury を選択します。

于 2011-08-04T04:24:24.743 に答える
1

Prolog は、それ自体で言語と見なすことができる多くの新しい拡張機能のホストであることを忘れないでください。CLP(R)、CLP(Q)、CLP(FD) などの特定の制約言語。CHR などのより一般的な拡張機能だけでなく、多くの型付けされたアプローチ。

これらの言語は通常、既存の Prolog システムのライブラリとして出荷されます。その設定で得られるものは、多くの場合、最初からシステムが提供できるものよりもはるかに成熟した安定した実装です。結局のところ、多くの Prolog システムはほぼ 30 年前のものです。

于 2013-11-16T01:35:33.770 に答える