OCanren-ppxversion Documentation on ocaml.org
Implementation of miniKanren relational (logic) EDSL: PPX extensions
PPX rewriters for writing relational programs more conveniently.
1) ppx_fresh -- a clone of original miniKanren syntax
fresh (x...) goal
expands into
Fresh.numeral (fun x ... -> goal)
2) ppx_distrib for easier generation of type-safe smart constructors and reifiers...
[%%distrib type nonrec _ t = fully_abstract_type type ground = ... ]
3) ppx_repr for testing. Expands REPR(expr) to (string_of_expr expr, expr)
| Authors | Dmitrii Kosarev https://github.com/Kakadu and JetBrains Research https://research.jetbrains.org |
|---|---|
| License | LGPL-2.1-only |
| Published | |
| Homepage | https://github.com/JetBrains-Research/OCanren |
| Issue Tracker | https://github.com/JetBrains-Research/OCanren/issues |
| Maintainer | Dmitrii Kosarev Kakadu@pm.me |
| Dependencies |
|
| Source [http] | https://github.com/JetBrains-Research/OCanren/archive/refs/tags/0.3.0.tar.gz sha256=eaf9624bbdbae8050eb43a48c0e79e97160b83b6f65a543ee1beca4c9f4ff4b2 sha512=e55dd7a3026b1dedcd37f55181059dfa44ad6976d241a1199246ee3c1684dcfdf1ae0c1da32165b5b2eb5748cfc57c906a0f0ebab56d03035a5bb87187a63cf7 |
| Edit | https://github.com/ocaml/opam-repository/tree/master/packages/OCanren-ppx/OCanren-ppx.0.3.0/opam |


