core-logic 2021-11-16

Has anyone tried or explored the possibility of implementing the core.logic streams as reducibles or iterables and not as lazy sequences?

I think this may be the piece I needed to treat Choice directly as reducible https://github.com/halgari/odin/blob/master/src/com/tbaldridge/odin/contexts/data.clj#L9 Maybe I'll just need to tease apart the pull from take

The way minikanren handles branches by interleaving makes expressing it as a reduce tricky

I think someone wrote a datalog in clojure based on reduce, Odin maybe?

From chasing down the papers, isn't it the only way to guarantee fairness in the implementation?