2 comments

[ 4.0 ms ] story [ 16.7 ms ] thread
It's an excellent paper. The way it describes logic programs as a stream of environments is very general. I've taken the basic concepts in this paper and implemented them with Clojure lazy seqs, CSP (https://github.com/halgari/async-mu-kanren/blob/master/src/a...), and transducers. Monads (as described in this paper) probably have the fewest drawbacks, but the technique can be implemented many ways.