Specter 0.13.0 released. Specter is a library that supercharges your ability to query and transform regular data structures. Discuss in #specter https://github.com/nathanmarz/specter/blob/master/CHANGES.md
Also published a benchmark along with the release comparing Specter against various manual ways of doing common operations. This includes comparisons with lazy operations, transducers, transients, clojure.walk, and other miscellaneous functions/interfaces. https://gist.github.com/nathanmarz/b7c612b417647db80b9eaab618ff8d83
@nathanmarz what version of Clojure is being used for the benchmarks?
project.clj has 1.7 for dev dependency but it’s hard to tell for the benchmarks themselves. There have been some mods in 1.9 (maybe 1.8 too, not sure) that affect some of these significantly.
in any case, it should be clear what the comparison is
@alexmiller 1.7.0, will make that clear on the benchmark and publish another one against 1.8.0. Thanks
thx
kinda nice to see some of these even just for the core calls
on the “map a function over a vector”, could you add (into [] (map inc) data)
(transducer w/ transients) ?
on “filter a sequence”, maybe (into [] (filter even?) data)