🐙 miniKanren in Ruby
Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
spec
README.md
mk.rb

README.md

miniKanren

an implementation of miniKanren in Ruby

what is miniKanren?

miniKanren is a fascinating little DSL for logic programming. it can be used to solve complex logical problems that other languages struggle at. it is based on ideas from Scheme and Prolog, and it's most popular implementation is Clojure's core.logic.

features

[X] fresh

[X] run

[X] union

[X] conde

TODO

[ ] complete stream for non-conde goals

[ ] additional constraints (symbolor, numbero, =/=)

[ ] more testing

[ ] sample program (path finder? sudoku solver? boolean satisfiability?)