我想使用Clojure的Core.logic。但是,我也想了解它是如何工作的。在某处有简洁的解释吗? (像实现元循环评估器一样?)
谢谢!
最佳答案
core.logic是miniKanren的实现-最初由Dan Friedman,William Byrd,Oleg Kiselyov等人在Scheme中编写和设计。试图在Lisp中嵌入Prolog风格的关系编程。
如果您想了解其工作原理,则需要阅读威廉·伯德论文的前三章:https://scholarworks.iu.edu/dspace/bitstream/handle/2022/8777/Byrd_indiana_0093A_10344.pdf?sequence=1
合理计划者还详细介绍了统一者。但是,对miniKanren更为微妙的目标部分并没有进行全面的处理-为此,您需要查看Byrd的学位论文。
即使到那时,就像使用元循环解释器一样,如果不尝试以各种编程语言自己实现系统,就无法获得许多见解。
关于clojure - Core.logic的简要说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10387320/