kanren

  1. kanren
    1. Description
    2. Author
    3. Documentation
    4. Version
    5. License

Description

A declarative applicative logic programming system used in The Reasoned Schemer.

Author

Oleg Kiselyov and Dan Friedman, packaged for CHICKEN by Alex Shinn.

Documentation

Note: This extension provides the kanren and reasoned-schemer modules. reasoned-schemer is the language used in the book of the same name, useful when following along but otherwise deprecated by improvements provided in the mini-kanren egg. kanren is a larger, more complicated language not widely used.

KANREN is a declarative logic programming system with first-class relations, embedded in a pure functional subset of Scheme. The system has a set-theoretical semantics, true unions, fair scheduling, first-class relations, lexically-scoped logical variables, depth-first and iterative deepening strategies. The system achieves high performance and expressivity without cuts.

For more information and example code, visit http://kanren.sourceforge.net.

Version

5.505
rename mini-kanren to reasoned-schemer
4.504
fixed test-dependencies
4.503
Ported to CHICKEN 4
4.502
There is now only a single setup file, also installs html [Thanks to Benedikt Rosenau]
4.501
Added missing file (kanren-term.scm) [Thanks to Benedikt Rosenau]
4.50
Initial release

License

KANREN is OpenSource, distributed under the MIT license.