Video not available

Send us an email to hello@eventil.com

Relational Interpreters, Program Synthesis, and Barliman: Strange, Beautiful, and Possibly Useful

0 0

This talk will show how the miniKanren constraint logic programming language can be used to automatically generate Scheme code by example, a form of test-driven development on steroids. Our approach is unusual: we define an interpreter for Scheme as a relation, rather than as a standard function. We can use this "relational interpreter" to perform program synthesis, to automatically turn a proof checker into a theorem prover, to generate quines, and to perform other bizarre and fascinating tasks. We will also look at the current version of Barliman, a prototype Interactive Development Environment that will hopefully inspire future IDEs.

Code Mesh 2017

Code Mesh, the Alternative Programming Conference, focuses on promoting useful non-mainstream technologies to the software industry. The underlying theme is "the right tool for the job", as opposed...