DOI

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.

Original languageEnglish
Pages (from-to)1-22
Number of pages22
JournalElectronic Proceedings in Theoretical Computer Science, EPTCS
Volume285
DOIs
StatePublished - 31 Dec 2018
Event2016 ML Family Workshop / OCaml Users and Developers Workshops, ML/OCAML 2016 - Nara, Japan
Duration: 22 Sep 201623 Sep 2016

    Scopus subject areas

  • Software

ID: 76606756