Releases: fosskers/transducers
Releases · fosskers/transducers
1.5.1
1.5.0
Added
- Transducer:
sexpfor interpretting streams of chars or strings as separate
SEXP strings. - Transducer:
safefor handling conditions within individual transducers. - Reducer:
quantitiesfor counting unique occurrences of streamed items. - Reducer:
partitionfor splitting the stream results. - Reducer:
base-stringfor reducing into asimple-base-string. - Reducer:
bit-vectorfor reducing into abit-vector. - Can now
transduceover abit-vector(e.g.#*0101). - Can now
transducespecially oversimple-stringandsimple-bit-vector,
but only with certain compilers.
Changed
- Reducer:
vectorandaverageare now faster and use less memory. - Reducer:
stringis now more efficient and yields the specialized
(simple-array character (*))type. compis now a macro and uses less memory for long composition chains.- All iterations are no longer implicitly wrapped in a
restart-case. Doing so
improves performance (2x in the case of SBCL, 10x in the case of ECL, etc.)
and drastically reduces memory usage. As mentioned above, if you know that
specific transducers may fail, you can now wrap them insafe.
Fixed
- A forgotten
all?export.
1.4.0
1.3.1
1.3.0
1.2.0
Added
- lib: The
findreducer now accepts an optional:defaultvalue for when
nothing could be found in the transduction that matched the predicate. - fset:
transduceimplementations forset,map,seq, andbag. - fset: Reducers for
set,map,seq, andbag.
Changed
- lib: Conditions signalled somewhere in the transduction chain can now be
caught per-item, with various restarts available to rehandle or skip the
problematic item. - jzon: plists now
writeas JS objects.
1.1.1
1.1.0
Added
- New condition:
no-transduce-implementation
Changed
- If
transduceis called on a type which has nodefmethodfor it, a custom
condition is thrown with a more helpful error message. - The JSON support system/package is now named
transducers/jzonto avoid
compiler warnings.