A Framework for Extending microKanren with Constraints
Jason Hemann (Indiana University), Daniel P. Friedman (Indiana, University)

TL;DR
This paper introduces a lightweight framework built on microKanren and Racket macros for developing constraint logic programming languages with symbolic constraints, serving as an educational and prototyping tool.
Contribution
It provides a minimal, easily extensible framework for CLP with constraints using microKanren and Racket macros, enabling rapid development and experimentation.
Findings
Framework is just over 100 lines of code
Supports building teachable CLP systems
Serves as a prototyping platform for symbolic constraints
Abstract
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
