conferences | speakers | series

miniKanren: a minimal declarative language for relational programming

home

miniKanren: a minimal declarative language for relational programming
FOSDEM 2021

In this talk I will give an introduction to miniKanren, a minimal embedded domain-specific language for constraint logic programming. miniKanren is designed to support relational programming, in which all code is written as mathematical relations, with no distinction between inputs and outputs. miniKanren uses a complete interleaving search, combined with unification and other constraints, to solve for variables representing unknown values. In effect, every miniKanren query is a program synthesis problem.

In this talk I will give an introduction to miniKanren, a minimal embedded domain-specific language for constraint logic programming. miniKanren is designed to support relational programming, in which all code is written as mathematical relations, with no distinction between inputs and outputs. miniKanren uses a complete interleaving search, combined with unification and other constraints, to solve for variables representing unknown values. In effect, every miniKanren query is a program synthesis problem.

Speakers: William Byrd