Presents a compilation method that turns polymorphic semiringKanren programs into equivalent non-polymorphic ones via equality patterns and sufficiently large relation instances, together with a correctness proof.
Typed Embedding of a Relational Language in OCaml
1 Pith paper cite this work. Polarity classification is still indexing.
abstract
We present an implementation of the relational programming language miniKanren as a set of combinators and syntax extensions for OCaml. The key feature of our approach is polymorphic unification, which can be used to unify data structures of arbitrary types. In addition we provide a useful generic programming pattern to systematically develop relational specifications in a typed manner, and address the problem of integration of relational subsystems into functional applications.
fields
cs.PL 1years
2026 1verdicts
UNVERDICTED 1representative citing papers
citing papers explorer
-
Polymorphic Bottom-Up Weighted Relational Programming
Presents a compilation method that turns polymorphic semiringKanren programs into equivalent non-polymorphic ones via equality patterns and sufficiently large relation instances, together with a correctness proof.