Happy to announce the release of Specter 0.10.0. If you're unfamiliar with Specter, it's a library that supercharges your ability to query and manipulate data structures and has performance rivaling hand-optimized code. The README and my talk at Clojure/west are the best introductions to the project.
Thanks to @StephenRudolph, @thomasathorne, @bfrabry, @aengelberg, and @mfikes for their contributions to this release. Their work constituted the bulk of the new functionality. Highlights of the release: - No longer uses reducers in cljs version (uses transducers instead). All the issues people were having using ALL should now be resolved. - Zippers are integrated into Specter in the com.rpl.specter.zipper namespace. - subselect, parser, and submap navigators - Now compatible with bootstrap cljs Here's a couple of interesting transformations using the new navigators: (transform (subselect ALL :a even?) reverse [{:a 2 :b 2} {:a 3} {:a 4} {:a 6} {:a 8}]) ;; [{:a 8 :b 2} {:a 3} {:a 6} {:a 4} {:a 2}] (def STRING<->LONG (parser #(Long/parseLong %) str)) (transform [ALL LAST STRING<->LONG] inc {:a "1" :b "2"} ) ;; {:a "2" :b "3"} -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.