This looks like a fantastic library for updating nested data structures -- something that's definitely been a pain point in writing Clojure.
I wrote a library that complements this nicely -- it's for transforming one deeply nested data structure into one that has a different shape, for example:
I wrote a library that complements this nicely -- it's for transforming one deeply nested data structure into one that has a different shape, for example:
(f/transform {:a [1 2 3] :b [2 3 4] :c [5 6]} {k [vs]} {vs #{k}}) => {1 #{:a}, 2 #{:a, :b}, 3 #{:a, :b}, 4 #{:b}, 5 #{:c}, 6 #{:c}}
https://github.com/disalvjn/faconne