
ClojureTV
2 HN recommenders · recommended in 3 months, 2013–2018
46:17 · 9.6K views · Jan 7, 2013
Dan Friedman and William Byrd demonstrate miniKanren, a logic programming system for Scheme, in an unconference talk. It includes generating programs by running relations in reverse.
HN recommends it as a mind-blowing and fun introduction to logic programming for working programmers.
3 comments from Hacker News
Fun! I highly recommend watching Dan Friedman and William Byrd give their miniKanren conference talk (they've done it a number of times slightly differently) e.g. this one at the "Conj" Clojure convention: this video It's really a fun presentation and does a great job introducing logic programming and miniKanren to lay programmers.
Here's a related talk on MiniKanren by Dan Freidman and Will Byrd: this video The bits about generating programs using MiniKanren was truly mind blowing.
Beside dependent types, bidirectional (~relational) programming is the only thing that amaze me. Dan Friedman gave talks about [mini]kanren, see this video I couldn't find the one where he asks (eval exp '()) to be 6 and gets many results such as 6 ;; duh (let ((_ 5)) ((lambda (x) (+ x 1)) _)) ;; better Here's an example involving cons cells only [LINK]