Relational programming in miniKanren: techniques, applications, and implementations
WE Byrd - 2009 - search.proquest.com
The promise of logic programming is that programs can be written relationally, without
distinguishing between input and output arguments. Relational programs are remarkably …
distinguishing between input and output arguments. Relational programs are remarkably …
Neural guided constraint logic programming for program synthesis
Synthesizing programs using example input/outputs is a classic problem in artificial
intelligence. We present a method for solving Programming By Example (PBE) problems by …
intelligence. We present a method for solving Programming By Example (PBE) problems by …
[PDF][PDF] A unified approach to solving seven programming problems (functional pearl)
WE Byrd, M Ballantyne, G Rosenblatt… - Proceedings of the ACM …, 2017 - dl.acm.org
A Unified Approach to Solving Seven Programming Problems (Functional Pearl) Page 1 8 A
Unified Approach to Solving Seven Programming Problems (Functional Pearl) WILLIAM E …
Unified Approach to Solving Seven Programming Problems (Functional Pearl) WILLIAM E …
miniKanren, live and untagged: Quine generation via relational interpreters (programming pearl)
We present relational interpreters for several subsets of Scheme, written in the pure logic
programming language miniKanren. We demonstrate these interpreters running" …
programming language miniKanren. We demonstrate these interpreters running" …
[PDF][PDF] A type-theoretic framework for software component synthesis
J Bessai - 2019 - eldorado.tu-dortmund.de
A language-agnostic approach for type-based component-oriented software synthesis is
developed from the fundamental principles of abstract algebra and Combinatory Logic. It …
developed from the fundamental principles of abstract algebra and Combinatory Logic. It …
Pure, declarative, and constructive arithmetic relations (declarative pearl)
We present decidable logic programs for addition, multiplication, division with remainder,
exponentiation, and logarithm with remainder over the unbounded domain of natural …
exponentiation, and logarithm with remainder over the unbounded domain of natural …
Leveraging constraint logic programming for neural guided program synthesis
We present a method for solving Programming by Example (PBE) problems that tightly
integrates a neural network with a constraint logic programming system called miniKanren …
integrates a neural network with a constraint logic programming system called miniKanren …
Building language towers with Ziggurat
D Fisher, O Shivers - Journal of Functional Programming, 2008 - cambridge.org
Ziggurat is a meta-language system that permits programmers to develop Scheme-like
macros for languages with nontrivial static semantics, such as C or Java (suitably encoded …
macros for languages with nontrivial static semantics, such as C or Java (suitably encoded …
From definitional interpreter to symbolic executor
AD Mensing, H Van Antwerpen… - Proceedings of the 4th …, 2019 - dl.acm.org
Symbolic execution is a technique for automatic software validation and verification. New
symbolic executors regularly appear for both existing and new languages and such …
symbolic executors regularly appear for both existing and new languages and such …
[PDF][PDF] A pattern matcher for miniKanren or How to get into trouble with CPS macros
CPS macros written using Scheme's syntax-rules macro system allow for guaranteed
composition of macros and control over the order of macro expansion. We identify a …
composition of macros and control over the order of macro expansion. We identify a …