Changelogs » Adderall



This release is a bugfix release that allows adderall to work with
recent versions of Hy. However, that bugfix comes with an API
breakage, and as such, the version number had to be bumped.

** Bugfix: No more keyword arguments.

The run and run* macros no longer accept an optional :lazy
argument. This feature was removed because it broke compatibility with
Hy >= 0.11's keyword argument syntax. Use lazy-run or lazy-run*

* 1.0.0 - <2015-03-05 Thu>

Having been used in production for about a year, it is time to admit
defeat, and declare adderall stable.

** Feature: Extendable unification

Objects can now have their own unification strategy by implementing a
"unify" function, that takes three arguments: u, v and s; and returns
a tuple or nil. Whenever a logic variable is being unified with an
object, instead of unifying with the object itself, adderall will call
this method of it, and let the object handle the unification itself.

This allows one to extend adderall in ways not possible before.

* 0.1.3 - <2014-12-05 Fri>


The library was updated to work with hy >= 0.10.1, which changed a few
details of the language it was relying on. With the change, the
library should work with all versions of hy past 0.10.

* 0.1.2 - <2014-07-25 Fri>

** Feature: set unification support

It is now possible to place logic variables within sets, adderall
learned how to traverse them. This means one can now do:

(run* [q]
(memberáµ’ 3 (set [1 2 q q])))
;=> [3]

** Feature: Support lazy results

One can now pass :lazy as the first argument to the run and run*
macros, and they will return a generator, and not force them into a

** Miscellaneous: Drop the toolz dependency

The library only used the interval function from toolz, which was an
overkill. It now ships with an internal implementation of the
function, and drops the toolz dependency.

* 0.1.1 - <2014-04-13 Sun>

** Bugfix: Install all modules

Install every module, including extra ones.

* 0.1.0 - <2014-04-13 Sun>

Initial public release.