Skip to content

Releases: tfeb/tfeb-lisp-hax

Bug fix and enhancements in with-accumulators

15 Jun 10:34
v8.7.0
Compare
Choose a tag to compare

with-accumulators was broken in the last release: it would get the arglist of the local function wrong. This fixes that and adds a new by argument:

(with-accumulators ((a + :by 1))
  ...
  (a)
  ...)

will make the local function have no arguments and step by the value of by. by is a form evaluated in the current lexical environment for each call.

Utilities enhancements, minimal documentation

13 Jun 14:17
v8.6.0
Compare
Choose a tag to compare

org.tfeb.hax.utilities was previously undocumented. It now is slightly documented but is explicitly not stable.

thunk and thunk* are new: this new version is because Štar depends on these now, and I wanted to be able to say that you need at least 8.6.0

Enhancements to collecting and trace-macroexpand

28 May 16:25
v8.5.0
Compare
Choose a tag to compare

with-accumulators now can provide defaults for the accumulator functions it defines.

trace-macroexpand now has its own stream, *trace-macroexpand-output*, which by default is a synonym stream to *trace-output*.

Both these changes are (should be!) compatible.

There was no 8.4.0 release.

Catchup release for Štar

02 May 08:22
v8.3.0
Compare
Choose a tag to compare

This includes an undocumented with-names macro in utilities, which Štar relies on. There are no other changes since 8.2.1

An iteration macro for multiple lists: dolists

26 Aug 07:58
v8.2.0
Compare
Choose a tag to compare

simple-loops now has dolists, which is like dolist but for multiple lists. It also has fine control over what values, if any, are returned by the iteration.

Improvements to slog and collecting

04 Apr 14:01
v8.1.0
Compare
Choose a tag to compare

slog. The default condition type used by slog when its first argument is a string is now controlled by a variable. There is support for resetting the precision time offset, which is needed for dumping & restoring images.

collecting. collect-into can now collect into the local functions defined by collecting / with-collectors, not just the objects made by make-collector.

New iterate variants, some cleanups and improvements

16 Mar 09:49
v8.0.0
Compare
Choose a tag to compare

There is a new iterating macro which is a fancier version of iterate which uses keyword arguments for the local function: this is slower but quite powerful. Both iterate and iterating have starred variants which bind sequentially.

The utilities no longer depend on other hacks.

Metatronic macros now exports some functionality which can helps you to write your own metatronic macros.

Macro tracing can control *print-circle*, metatronic macro improvements

01 Feb 11:11
v7.2.0
Compare
Choose a tag to compare

*trace-macroexpand-print-circle* is now the default for *print-circle* during macro tracing. It's useful to set it to true so you can see which gensyms are the same

Metatronic macros has some small improvements, and supports a version of define-compiler-macro (unclear is this is useful but it should be there).

Heavily revised slog

01 Feb 11:08
v7.0.0
Compare
Choose a tag to compare

slog now does a lot less pathname handling than the previous one. It may not be completely compatible, especially around when log files are created and so on. But I think it is better.

Small fixes on 6.0.0

27 Sep 07:45
v6.0.1
Compare
Choose a tag to compare

There was a missing test in the publication repo.

Metatronic is now more configurable.