2

mini-kanren 语言具有四个条件运算符:condacondecondi在此处condu描述)。我知道有两个可用于 Racket 的迷你 kanren 库(均在此处描述)。他们都没有实现。condi

我的印象(在阅读 The Reasoned Schemer 的中途,minikanren.org 将其称为“The Book”)很condi重要:它是唯一通过交错分支采用“公平分离”的条件,因此您不会陷入无限 -循环在一个永远不会终止的分支中,而另一个分支确实终止了。

编辑:我可能已经设法实现了condi自己,在这里。在 The Reasoned Schemer 中,conde不同之处condi仅在于最后两个参数mplus被翻转mplusi,所以这就是我实现的。conde但据我所知,它的工作方式并不公平。

4

0 回答 0