Datalog

tags
Database

Datalog is a declarative logic programming language often used as a query language.

Datalog is not Turing complete.

Datalog's syntax is a subset of Prolog's, having limitations including:

Literature

Aggregation in Datalog Under Set Semantics
What You Always Wanted to Know About Datalog (And Never Dared to Ask)
PUG: A Framework and Practical Implementation for Why & Why-Not Provenance
Efficient provenance tracking for datalog using top-k queries
A Practical Dynamic Programming Approach to Datalog Provenance Computation
GitHub - dwhjames/datomic-q-explain: A query explainer for Datomic
Debugging Large-scale Datalog: A Scalable Provenance Evaluation Strategy
Causes for Query Answers from Databases, Datalog Abduction and View-Updates: The Presence of Integrity Constraints

Applications

Lots of Clojure-Datalog projects: Datomic; DataScript and its descendants, Datalevin and Datahike; XTDB. See OSS Clojure-Datalog Databases
Dedalus, a temporal logic languge built on Datalog. Interesting descendants: Bloom, Eve (When logic programming meets CQRS), imp