TinyKanren. A stripped-down tool for solving logic puzzles and pattern-matching problems.

github.com/yinwang0/tinyKanren

Vaya's read on this project

Problem, audience, market, and the verdict — sign in to see it.

Updates

May 2022
  • change mplus* to function. remove fold from bind*
April 2022
  • export all definitions
  • option for setting logic variable prefix
  • remove confusing case
  • slightly fairer interleaving
  • readme fix
  • print multiple vars
  • clearer message
  • optional message
  • add trace function for debugging
  • fix force
  • add back interleaving and delay
  • remove unused cases
  • put all substitution into lists
  • remove flip
  • reorder
  • no need to force here
  • simplify take
  • improve force
  • add back extra thunk