New Features
- Now supports Hy >= 0.15
Breaking Changes
cons
Recent updates of Hy have removed the builtin cons
object, so a custom implementation is provided for semantic compatibility with other implementations of miniKanren in Lisp. Along with this change, the mapping from cons
pairs to Python collections is made strictly through Python list types. In other words, Python lists are equivalent to cons
lists (i.e. cons
pairs with cdr
set to an empty list or None
) and cons
pairs — that are not also lists — have no Hy or Python builtin equivalent.
To facilitate the construction of longer cons
pairs, the cons
factory function take a variable number of arguments so that
(cons car-1 car-2 ... car-N cdr) == (cons car-1 (cons car-2 (cons ... (cons car-N cdr))))