On Tuesday, January 10, 2017 at 2:37:22 PM UTC-5, Beau Fabry wrote:
>
> With specter:
>
> (map-indexed (fn [i name] (sp/transform sp/MAP-VALS #(nth % i) optij)) 
> (:name optij))
> => ({:name :tom, :age 1, :tone :do} {:name :dick, :age 2, :tone :re} 
> {:name :harry, :age 3, :tone :mi})
>

One line! With specter, but still nice.

But to me this is the downside of specter and even Clojure: the code starts 
to get opaque. I am reminded of the C Puzzle Book which offered simple data 
and a few lines of code and defied us to guess what the code produced.

My big take-away here is map-indexed. Forgot about that and it would have 
greatly simplified my original efforts.
 

>
> Without:
>
> (map-indexed (fn [i name] (into {} (map (fn [[k v]] [k (nth v i)]) 
> optij))) (:name optij))
> => ({:name :tom, :age 1, :tone :do} {:name :dick, :age 2, :tone :re} 
> {:name :harry, :age 3, :tone :mi})
>
>
Gonna have to study that one. :) Still one line, tho! Cool.

-kt

>
>>

-- 
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.

Reply via email to