SPLASH 2016 (series) / DLS 2016 (series) / DLS 2016 Research Papers /
A Small Embedding of Logic Programming with a Simple Complete Search
We present a straightforward, call-by-value embedding of a small logic
programming language with a simple complete search. We construct the
entire language in 54 lines of Racket—half of which implement
unification. We then layer over it, in 43 lines, a reconstruction of
an existing logic programming language, miniKanren, and attest to our
implementation's pedagogical value. Evidence suggests our combination
of expressiveness, concision, and elegance is compelling: since
microKanren's release, it has spawned over 50 embeddings in over two
dozen host languages, including Go, Haskell, Prolog and Smalltalk.
Tue 1 NovDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
Tue 1 Nov
Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:40 - 17:20 | |||
15:40 25mTalk | A Small Embedding of Logic Programming with a Simple Complete Search DLS Jason Hemann Indiana University, USA, Daniel P. Friedman Indiana University, USA, William E. Byrd University of Utah, USA, Matthew Might University of Utah, USA DOI | ||
16:05 25mTalk | Modular Semantic Actions DLS Alessandro Warth Y Combinator Research, USA, Patrick Dubroy Y Combinator Research, USA, Tony Garnock-Jones Northeastern University, USA DOI Pre-print | ||
16:30 25mTalk | Cross-Language Compiler Benchmarking: Are We Fast Yet? DLS Stefan Marr Johannes Kepler University Linz, Benoit Daloze JKU Linz, Austria, Hanspeter Mössenböck JKU Linz, Austria DOI Pre-print |