miniKanren 2020
as the organisers put it
The miniKanren and Relational Programming Workshop is a new workshop for the miniKanren family of relational (pure constraint logic programming) languages: miniKanren, microKanren, core.logic, OCanren, Guanxi, etc. The workshop solicits papers and talks on the design, implementation, and application of miniKanren-like languages. A major goal of the workshop is to bring together researchers, implementors, and users from the miniKanren community, and to share expertise and techniques for relational programming. Another goal for the workshop is to push the state of the art of relational pr ...
who it's for
miniKanren implementors, relational programming researchers, program synthesis researchers, language designers and implementors, formal methods researchers, bioinformatics engineers using logic programming, programming languages educators
topics
Spoofax generated parser and typechecker; fair relational conjunction; conservative partial deduction and supercompilation; rank polymorphic unification; higher-order logic programming (lambdaKanren); Coq certified disequality semantics; mediKanren biomedical query engine; relational pattern match synthesis; relational interpreter for JavaScript; relational parser to LambdaJS; relational algebra and differentiation (dxo)
| title | author | length |
|---|---|---|
| Executing Declarative Language Definitions | Visser | 54m |
Spoofax implements the claim that high-level declarative meta-languages can generate multiple real tools from one definition: an sdf3 grammar produces a parser… | ||
| On Fair Relational Conjunction | Petr Lozov | 14m |
Presents a new symmetric conjunction evaluator for miniKanren that switches conjuncts based on a structural recursion predicate (postpone a conjunct until its… | ||
| An Empirical Study of Partial Deduction for miniKanren | Ekaterina Verbitskaia | 15m |
Presents an implemented specializer that combines partial deduction and supercompilation into a conservative partial deduction for miniKanren, plus a… | ||
| MicroKanren in J | Raoul Schorer | 14m |
Reimplements MicroKanren as a J library and claims a rank-polymorphic unification that applies the same unification expression across scalars, rows, or… | ||
| λKanren: Higher-order Logic Programming with Shallow Embedding | Weixi Ma | 17m |
λKanren is a shallow‑embedding of a subset of higher‑order hereditary Harrop formulas built by adding about 40 lines to the TRS2 chapter 10 miniKanren core… | ||
| Kanren Light | Maggesi, Nocentini | 20m |
An experimental system implemented on top of HOL Light tactics brings miniKanren-style relational programming inside a theorem prover and synthesizes candidate… | ||
| Certified Semantics for Disequality | Dmitry Rozplokhas | 18m |
Semantics extends core miniKanren with disequality by parameterizing the operational rules over an abstract constraint store and proving completeness under… | ||
| mediKanren: A System for Bio-medical Reasoning | Byrd | 23m |
A system called mediKanren combines miniKanren relations, a GUI, and a custom on‑disk graph store to run low‑latency biomedical queries; data are stored as… | ||
| Relational Synthesis for Pattern Matching | Dmitrii Kosarev | 14m |
The work encodes pattern-match synthesis in miniKanren using two relational interpreters and replaces the resulting universal quantifier by enumerating… | ||
| Some Novel miniKanren Synthesis Tasks | Hemann, Friedman | 19m |
A mirrored relational interpreter for a second language is implemented and used to synthesize quines, polyglot programs valid under both interpreters, and… | ||
| A Relational Interpreter For Synthesizing JavaScript | Artem Chirkov | 14m |
A miniKanren system combines a relational parser that maps S-expression JavaScript to LambdaJS and a relational interpreter that runs LambdaJS to synthesize… | ||
| dxo: A System for Relational Algebra and Differentiation | Steele | 14m |
dxo is a miniKanren relational system that manipulates s‑expression math: addition, multiplication, exponentiation, tagged-variable symbols, and natural… | ||
| nothing matches | ||