A Framework for Extending microKanren with Constraints

Jason Hemann
(Indiana University)
Daniel P. Friedman
(Indiana University)

We present a framework for building CLP languages with symbolic constraints based on microKanren, a domain-specific logic language shallowly embedded in Racket. We rely on Racket's macro system to generate a constraint solver and other components of the microKanren embedding. The framework itself and the constraints' implementations amounts to just over 100 lines of code. Our framework is both a teachable implementation for CLP as well as a test-bed and prototyping tool for symbolic constraint systems.

In Sibylle Schwarz and Janis Voigtländer: Proceedings 29th and 30th Workshops on (Constraint) Logic Programming and 24th International Workshop on Functional and (Constraint) Logic Programming (WLP'15/'16/WFLP'16), Dresden and Leipzig, Germany, 22nd September 2015 and 12-14th September 2016, Electronic Proceedings in Theoretical Computer Science 234, pp. 135–149.
Published: 1st January 2017.

ArXived at: https://dx.doi.org/10.4204/EPTCS.234.10 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org