問題タブ [prolog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
11 に答える
15071 参照

prolog - Prologの優れた初心者向け資料

私は、オンラインと印刷の両方で、Prologの優れた初心者向け資料を探しています。私は「言語を学ぶ」だけでなく、背景や科学情報にも興味があります。

0 投票する
5 に答える
3492 参照

statistics - 論理言語-PrologまたはLisp/Smalltalkまたは他の何か?

だから、私はある種の統計プログラムを書いています(実際にはそれをよりエレガントなものに再設計しています)そして私はその種のもののために作成された言語を使うべきだと思いました(統計の膨大なデータ、それらの間の接続を扱うある種の遺伝的/ニューラルプログラミング)。

実を言うと、私はlisp / smalltalkに飛び込む言い訳が欲しいだけです(smalltalk / lisp / clojureは同じではありませんか?-pythonとrubyのように?-セマンティクス的に)が、言語も簡単に理解できるようにしたいですBASIC言語が好きな他の人々によって(それが私がLISPを選択しなかった理由です-まだ:D)。

私もPrologをチェックしましたが、それはかなりクールな言語(データ間の関係を行うのが簡単で、Lispよりも簡単)のようですが、あなたの考えを聞きたいです。

どうも

編集:私はいつも一般的なlispをSmalltalkと混同しています。これらの2つの言語を組み合わせて申し訳ありません。また、「BASIC言語が好きな他の人々 」が意味するのは、lisp(CSのバックグラウンドを持たない人々)のようなセマンティクスを持つ言語を好まないということです。Prologはもう少し直感的です(しかし、それは私の私がそれらの両方を少しいじった後の意見)。

0 投票する
2 に答える
190 参照

prolog - What should return from a disjunction with independent variables?

What would result from something like the following:

I don't have a Prolog compiler handy, so I can't test what would happen if you then asked p(X,Y). Would the code even compile? Would p return two answers, each with one of the variables unbound?

In a real world scenario, I don't think p(X,Y) would make much sense (one would probably rather want p(X) to follow from either q(X) or r(X)), but I'm interested in what actually happens here, and peripherally, what should happen in such a degenerate case.

0 投票する
1 に答える
1517 参照

string - Prolog アトムの空白文字の正規化

SWI-Prolog などの Prolog アトムで空白文字 (スペース、改行、タブ) を正規化する最良の方法は何ですか? つまり、ルールが必要です:

そのようなAtom2

  • 単一のスペースに変換された一連の空白文字があります
  • スペースなしで始まる
  • スペースなしで終わる
0 投票する
1 に答える
3315 参照

prolog - リストをPrologの用語に変換する

効率の観点から、PrologリストをProlog用語(リストではない)に変換し、既存の組み込み述語を可能な限り使用するための最良の方法は何ですか?

インターフェイスと使用例は次のようになります。

つまり、指定されたリスト(実際にはネストされた用語)は、指定された名前の用語にフラット化されます。

私はこれを行うことが理にかなっていると言っているのではありません。(ただし、そうだと思われる場合は、回答にユースケースを記載してください。)

0 投票する
13 に答える
9445 参照

programming-languages - なぜ論理プログラミングがうまくいかなかったのですか?

時間が経つにつれて、関数型プログラミングが他のプログラミング言語により多くの影響を及ぼしているように見えます。私は私のAIクラスでPrologを始めていますが、AI以外の分野でのプログラミングを容易にするものがいくつかあるようです。私の質問はこれです:なぜ論理プログラミングが同じように普及しなかったのですか?

このトピックでは、論理プログラミングは有用であるが、そのように証明されなければならないという一般的なコンセンサスに達したようです。役に立たないと思われる理由はありますか?

更新:おそらく私はもう少し明確にする必要があります。私は実際にPrologについて質問していません。ほとんどの実際のアプリケーションにPrologを選択するのが得策ではない理由がわかります。

私が話していることの例をもっと示すために、Pythonのリスト内包/マップ/フィルターを検討してください。これらは明らかに関数型言語の影響を受けています。Pythonのような言語も、関数型言語のように論理プログラミング言語からこれらの種類のものを取り上げていないのはなぜですか?

0 投票する
1 に答える
325 参照

prolog - prolog の prompt_alternatives_on フラグを .plrc から変更するには?

prompt_alternatives_onREPL でフラグを変更できます。

  1. しかし、どうすれば .plrc でこのフラグを変更できますか?

それから私は得る

目標: 「もっと?」を取得しないこと。常にすべての回答のテキスト。フラグを変更することによって。

0 投票する
1 に答える
343 参照

c++ - Prolog ECLiPSe - yield メソッドを実装するには?

ECLiPSe プログラミング ロジック システムを使用しています。

プロローグからC/C++に値を渡すyieldメソッドを実装したいです。誰かがそれを実装しましたか?

値を渡す他の方法はありますか?

0 投票する
4 に答える
6624 参照

mapping - Prologへの入力

私は現在、ルートをリンクしてバーミンガム地域の基本的なGPSを作成する再帰的なPrologプログラムに取り組んでいます。現時点では、次のように出力を取得できます。

入力

出力

私がやりたいのは、プログラムにある種のインターフェースを提供させることです。そのため、次のように入力するとします。

それは私に以下を提供します:

Prologは強力な言語なので、これは簡単に可能だと思いますが、私が取り出した本の多くはこの部分をスキップしているようです。詳細はわかりませんが、私が知る限り、write()とread()の行に沿って何かを使用する必要があります。

ここにいる誰かが、いくつかの基本的な例や詳細情報へのリンクを持ったProlog初心者を出してくれませんか?

編集:これらの答えの多くは非常に複雑に見えます。解決策は約5〜10行のコードである必要があります。次の行に沿って何かを行うことができるので、値の読み取りは問題ではありません。

write()を使用して出力を書き出すことができれば、新しい行(nl)を使用して、上記の出力のように表示できるようにしたいと思います。

これが私の入力である場合、これらの入力で機能するように最上位のrouteplan()をどのように調整しますか?また、これらのステーションのラインを追加のパラメータとして追加した場合、これはどのように実装されますか?すべてのリンクは、次のようにファイルの先頭で定義されます。

したがって、この情報があれば、そのように行を読み取ることができればよいでしょう。

0 投票する
6 に答える
55035 参照

prolog - Prolog家系図

私はそれをしましたが、それは答えを示していません私が兄弟、姉妹、叔父、叔母について尋ねるとき

これは私が書いたものです、何が問題なのですか?

そしてもう1つ、Xがそれ自体の兄弟にならないように、兄弟のルールを最適化するにはどうすればよいですか。