Similarly, I have had some success using Gemini to extract facts from plain text in the format of Souffle Datalog[1] facts. The resulting dataset can then be conveniently and efficiently queried with Datalog. In this way, LLMs allow for a partial return of the software development strategies of the semantic web[2]. I wrote up some thoughts along those lines earlier this year[3].
Thank you! I went with a Prolog base, because I was interested in what might be possible when combining its execution model with LLM-defined predicates. For anything related to modelling and querying data, a Datalog dialect might indeed be a better choice. I've also used Logica [0] as an intermediate layer in a text2sql system, but as models get better and better, I believe there is less need for these kinds of abstractions.
Great idea to bring the consistency to coding agent with domain specific language (DSL). It reminded me of Google's CaMel work https://arxiv.org/abs/2503.18813 which introduces DSL to LLM prompt to prevent prompt injection by design, and the DeepClause work is like a more general approach on code agent. Great work!
bwestergard•1d ago
https://github.com/deepclause/deepclause-desktop?tab=readme-...
Similarly, I have had some success using Gemini to extract facts from plain text in the format of Souffle Datalog[1] facts. The resulting dataset can then be conveniently and efficiently queried with Datalog. In this way, LLMs allow for a partial return of the software development strategies of the semantic web[2]. I wrote up some thoughts along those lines earlier this year[3].
1: https://souffle-lang.github.io/ 2: https://en.wikipedia.org/wiki/Semantic_Web 3: https://bjornwestergard.com/llm-extractors/
schmuhblaster•19h ago
[0] https://logica.dev/