A Framework for Extending microKanren with Constraints

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 itse...

Full description

Bibliographic Details
Main Authors: Jason Hemann, Daniel P. Friedman
Format: Article
Language:English
Published: Open Publishing Association 2017-01-01
Series:Electronic Proceedings in Theoretical Computer Science
Online Access:http://arxiv.org/pdf/1701.00633v1
id doaj-8daa6fddacb94d3bb2ac336fdd46b2e3
record_format Article
spelling doaj-8daa6fddacb94d3bb2ac336fdd46b2e32020-11-25T01:52:05ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802017-01-01234Proc. WLP 2015/'16/WFLP'1613514910.4204/EPTCS.234.10:316A Framework for Extending microKanren with ConstraintsJason Hemann0Daniel P. Friedman1 Indiana University 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.http://arxiv.org/pdf/1701.00633v1
collection DOAJ
language English
format Article
sources DOAJ
author Jason Hemann
Daniel P. Friedman
spellingShingle Jason Hemann
Daniel P. Friedman
A Framework for Extending microKanren with Constraints
Electronic Proceedings in Theoretical Computer Science
author_facet Jason Hemann
Daniel P. Friedman
author_sort Jason Hemann
title A Framework for Extending microKanren with Constraints
title_short A Framework for Extending microKanren with Constraints
title_full A Framework for Extending microKanren with Constraints
title_fullStr A Framework for Extending microKanren with Constraints
title_full_unstemmed A Framework for Extending microKanren with Constraints
title_sort framework for extending microkanren with constraints
publisher Open Publishing Association
series Electronic Proceedings in Theoretical Computer Science
issn 2075-2180
publishDate 2017-01-01
description 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.
url http://arxiv.org/pdf/1701.00633v1
work_keys_str_mv AT jasonhemann aframeworkforextendingmicrokanrenwithconstraints
AT danielpfriedman aframeworkforextendingmicrokanrenwithconstraints
AT jasonhemann frameworkforextendingmicrokanrenwithconstraints
AT danielpfriedman frameworkforextendingmicrokanrenwithconstraints
_version_ 1724994921100738560