##logiclangs
Datalog Disassembly (2020)
www.usenix.org
October 1, 2026 at 3:40 AM
λProlog: Logic programming in higher-order logic https://lobste.rs/s/wvngfj ##logiclangs
λProlog: Logic programming in higher-order logic
www.lix.polytechnique.fr
February 24, 2026 at 6:10 PM
Picat in WebAssembly
brainsignals.de
September 8, 2026 at 3:05 PM
Data-Parallel Functional Programming in Datalog https://lobste.rs/s/3awbix ##logiclangs
Post 3: Data-Parallel Functional Programming in Datalog
In the early days of our PPoSS project, we built Slog, an untyped logic programming language that extended Datalog to be much closer to Scheme. In this post, I want to describe Slog informally, but also describe some of our initial excitements, alongside key challenges we faced in our prototype implementations. Slog was initially designed using MPI and InfiniBand, running on Theta (a now-retired supercomputer at Argonne). We still maintain an old version of the Slog 1.0 repository, but our focus has moved on; the reality is that the codebase had grown to a gnarly mishmash of partial implementations along with a research prototype compiler. We have recently started new efforts to reboot the ideas from our initial Slog project to modern hardware (e.g., GPU clusters) and especially focusing on GPUs. In previous attempts, we had planned to integrate Slog with SMT solving–personally, I am wary of this in light of the recent LLM takeover. However, I am still optimistic on high-performance exact reasoning, especially in a way which enables richly-expressive queries that involve nontrivial logic reasoning.
kmicinski.com
August 24, 2026 at 8:10 PM
L-system
en.wikipedia.org
June 26, 2026 at 8:40 PM
Datalog
What is datalog? What can you do with datalog? Getting Started Path Reachability Python Naive Semi-Naive Indexing Lattice SQL recursive common table subexpressions Naive SQL translation Seminaive Lattices Ocaml Naive Rust Magic Set Program Analysis Evaluation Constant Propagation Symbolic Evaluation Reaching Definitions Liveness Points To Available Expressions Intersection Very Busy Expressions Zippers For Program Points Dominators Forall Emulation Doop Datalog Diassembly / Decompilers Bap Resources First Class Sets \& Reflection BitSets Bitset reflection Sort Lists Patricia Tries BDDs Call Meta circular interpreter BogoSort Translating functional programs Lists Dynamic Programming Q learning Mandelbrot Ball and Springs Sudoku Constraint handling Rules (CHR) Backprop Lambda representation Parsing Hilog Equality Saturation Term Rewriting Datalog Modulo Term Rewriting Graph rewriting Graph Algorithms Reachability Shortest Path Spanning Tree Clique Cycle Subgraph Matching Coloring Propagators Boolean Constraint Propagation Difference Logic Finite Domain Macros define ORBODY(h,b1,b2) CLAUSE(h, b1) CLAUSE(h, b2) define ORHEAD(h1,h2,b) CLAUSE(h1,b) CLAUSE(h2,b) define IMPLBODY(h, b1, b1) CLAUSE( h, (b1, b2) ) define IMPLHEAD() Emulating Prolog Need Sets Magic Set First class union find Translating Imperative Programs Iteration Model Checking Timestamping Theorem Proving Skolemization for Existential Heads Goals / Queries Uncurrying Contextual Datalog / Hypothetical Datalog Higher Order Clauses (Harrop) Stack database / Harrop Datalog / Tentative Datalog Existenial Queries Universal Quantifier Geometry Categorical Example Typeclass resolution Borrow Checker Type checking Coinductive or Greatest Fixed Point Datalog DFA Minimization CRDTs MultiSet Semantics Access Control Policies Networks Make Topics Answer Set Programmng Provenance Semi Naive Evaluation Algebraic Data Types Lattices Subsumption Subsumption as a master feature Provenance max min Recurusive Sum and Count Lattices Min/max lattice Maybe/Option lattice Intervals Widening Dyadic lattice Equivalence relations Negation Choice domain Semiring Semantics Probability Datalog+- and the chase Tabling Descriptive Complexity and Least Fixed Point Logic Push based Datalog Incremental / Differential Datalog Backtracking a Datalog Implementations Rel DDlog IncA Formulog Datafrog Ascent Flix dr lojekyl Datafun QL Souffle intrinsic functors floats Souffle proofs Aggregates User Defined Functors ADTs Contexts are King field accessors Vectors Use ADT instead of autoinc() Record Packing Macros Components Choice Domain Negation Souffle source EPR datalog Resources include prelude.ml class(slotname : f(x,y) , ) :- building souffle emscripten
www.philipzucker.com
June 15, 2026 at 4:00 AM
Deconstructing Datalog
www.rntz.net
June 14, 2026 at 5:10 PM
MiniLitelog: Easy Breezy SQLite Datalog https://lobste.rs/s/us7nlm ##logiclangs
MiniLitelog: Easy Breezy SQLite Datalog
Simple Shallow Embedding of Seminaive Datalog into SQLite
www.philipzucker.com
June 9, 2026 at 8:50 PM
Ciao - Assertions and their Use https://lobste.rs/s/qz0gu0 ##logiclangs
Ciao - Assertions and their Use
ciao-lang.org
June 5, 2026 at 2:20 AM
The case against boolean logic https://lobste.rs/s/hkmhzi ##logiclangs
The case against boolean logic
abuseofnotation.github.io
May 22, 2026 at 4:20 PM
Thinking in States
www.metalevel.at
May 17, 2026 at 3:30 AM
EMA-XPS - Hybrid Graphic Expert System Shell https://lobste.rs/s/h8rne8 ##osdev ##logiclangs
EMA-XPS - Hybrid Graphic Expert System Shell
ema-xps.org
May 17, 2026 at 2:40 AM
Prolog Projects Tips
occasionallycogent.com
May 16, 2026 at 6:20 AM
Abstract Machines for Logic Programs https://lobste.rs/s/7yy79j ##concatenative ##logiclangs
Abstract Machines for Logic Programs
chrisistyping.bearblog.dev
May 10, 2026 at 2:00 AM
The Event Made Visible: Event-Based Modelling and Reifications in Turtle 1.2 https://lobste.rs/s/usy3fd ##logiclangs
The Event Made Visible
Event-Based Modelling andReifications in Turtle 1.2
ontologist.substack.com
May 6, 2026 at 11:00 PM
A Dumb Introduction to z3 https://lobste.rs/s/c1tlxi ##logiclangs
A Dumb Introduction to z3
Exploring the world of constraint solvers with very simple examples.
ar-ms.me
April 13, 2026 at 7:50 AM