Fork me on GitHub

Hey, @plexus thanks for creating the channel! Is somebody aware of libraries containing datalog rules on clojars? I think most of the Datalog in the Clojure community is not shared so far, right?


What do you mean? All the Datalog implementation in the Clojure community, with the exception of Datomic, are open source and available on clojars.


I don’t know if any popular libraries with out of the box datalog queries


@huahaiy I mean Datalog rule sets, not implementations of runtimes. Somehow the Clojure community thinks of Datalog only as a glorified SQL replacement instead of its own DSL that it is worth to share programs in. I think it would be cool if we can do that to a certain degree between implementations.


@whilo that sounds cool. What would that look like? Any examples to point to?


@huahaiy that goes in the right direction, I did not know about it, thanks! It is more about addressing the limitations of Datomic's rule address space concept though, where you effectively have to pass everything at once, and provides some experimental reordering, which is not needed with a proper query planner. I was more thinking about creating an explicit Datalog file format and explicitly providing Datalog programs (rules) as libraries.


At one point I did a set of rules for SKOS. They were written for the rules engine in Mulgara, but I think Naga will process them as well (Naga is a rules engine that runs over Asami or Datomic)

👍 1

Most of that file is made of atoms that declare the properties in SKOS, but the final 7 rules are horn clauses that make it work