Most graceful way for a lists -> maps transposition

user> (let [[names jobs langs :as all] [["john" "jane" "michael"]
					["chef" "driver" "vet"]
					["English" "German" "French"]]]
        (apply map 
         (fn [ & xs] (zipmap [:name :job :lang] xs))
         all))
({:name "john", :job "chef", :lang "English"}
 {:name "jane", :job "driver", :lang "German"}
 {:name "michael", :job "vet", :lang "French"})
1 Like