ミニ・カンレンcond-a cond-uとcond-eの違いは何ですか?
-
29-09-2019 - |
質問
私は、Clojureでミニカンレンの実装を使用しようとしました。しかし、Cond-A Cond-uとCond-eの違いを理解するのに苦労していました。私はcond-eについてはっきりとはっきりとしているようですが、コンド-Aとコンドウを理解するのは静かです。
Cond-Eは一連の目標を取り、それぞれを試みます...つまり、成功したすべてのブランチを試みます。
それどころか、Cond-AとCond-uは、最初の述語が成功し、Cond-Aが成功したすべての統合をその後に返す支部にコミットします。 Cond-uは最初の成功した統一のみを返しますが...しかし、私がそれを使用するとき、この理解は正しくないようです。誰かが私がこの理解を明確にするのを手伝ってくれますか。
解決
Cond-eは、成功したすべての支店からすべての答えを与えます
cond-iはすべての答えを与えますが、それらをインターリーズします。
cond-aは最初の成功したブランチからの答えを与えるだけです
cond-uは最初の成功したブランチから最初の答えを与えるだけです
他のヒント
私はただこれらの問題に頭を巻き込もうとしていました。短いスキームの実装がありますSokuza-Kanren いくつかのコメントで、今夜それを読みます。
所属していません StackOverflow