PLTools / OCanren

Statically typed embedding of miniKanren relational programming language into OCaml
GNU Lesser General Public License v2.1
117 stars 19 forks source link
minikanren ocaml relational-programming

OCanren License API docs

OCanren is a strongly-typed embedding of relational programming language miniKanren into OCaml. Nowadays, the implementation of OCanren strongly reminds faster-miniKanren. Previous implementation was based on microKanren with disequality constraints.

See installation instructions, API documentation for more details, or ReadTheDocs for detailed information. (All papers about OCanren are not located in the separate repo.)

Check our template repository for OCanren projects for faster startup!

Installation

To try out developer version of OCanren and OCanren-ppx both, use

  opam pin add https://github.com/PLTools/OCanren.git --yes

OCanren is available in the main OPAM repository, but it's version may be lagging behind.

  opam install OCanren-ppx OCanren --yes