Re: nested reduce/reduce-kv idiom

2013-04-04 Thread John D. Hume
On Apr 4, 2013 6:54 AM, "Jim - FooBar();" wrote: > > Thanks John, > > I came up with this, which uses destructuring quite heavily and might slow things down... > > (reduce (fn [s [t1 t2 w3 v]] (assoc-in s [t1 t2 w3] (/ (count v) all))) {} > (for [[k1 v1] ems [k2 v2] v1 [k3 v3] v2] [k1 k2 k3 v3]))

Re: nested reduce/reduce-kv idiom

2013-04-04 Thread Jim - FooBar();
Thanks John, I came up with this, which uses destructuring quite heavily and might slow things down... (reduce (fn [s [t1 t2 w3 v]] (assoc-in s [t1 t2 w3] (/ (count v) all))) {} (for [[k1 v1] ems [k2 v2] v1 [k3 v3] v2] [k1 k2 k3 v3])) is this what you meant? Jim On 03/04/13 19:54, John D.

Re: nested reduce/reduce-kv idiom

2013-04-03 Thread John D. Hume
Destructure the map entry. (for [[k vs] some-map, v vs] v) or whatever. On Wed, Apr 3, 2013 at 1:44 PM, Jim - FooBar(); wrote: > Hi all, > > I 've recently come across this idiom (instead of nested reduces - from > Christophe's blog post of course!) > > (reduce f init (for [x xs, y x, z y] z)) ;;

nested reduce/reduce-kv idiom

2013-04-03 Thread Jim - FooBar();
Hi all, I 've recently come across this idiom (instead of nested reduces - from Christophe's blog post of course!) (reducef init (for[x xs, y x, z y] z)) ;;it took me a while to realise how cool this is :) I'm trying to do the same for reduce-kv (for nested maps) but doesn't quite