Skip to content

Latest commit

 

History

History
70 lines (45 loc) · 2.09 KB

NEWS

File metadata and controls

70 lines (45 loc) · 2.09 KB

2.0.0 - UNRELEASED

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* instead.

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>

Bugfix: Support hy >= 0.10.1

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 list.

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.