3

3 つの目標のうち 2 つが成功するかどうかをチェックする core.logic コードを作成する必要があります。

私は次のように書くことができることを知っています:

(run* [a b c]
      (conde [goal1 goal2]
             [goal2 goal3]
             [goal3 goal1]))

...しかし、これは面倒です。実際には、「N out of M」の場合にコードを一般化する必要があり、これを一般化するのは困難です。この種の問題に使用する正しいアプローチを教えてもらえますか? これを簡単にする機能はありますか?

ありがとう!

4

1 に答える 1