In Clojure, I want to combine two lists to give a list of pairs,
> (zip \'(1 2 3) \'(4 5 6)) ((1 4) (2 5) (3 6))
In Haskell or Ruby t
The built-in way would simply be the function 'interleave':
(interleave [1 2 3 4] [5 6 7 8]) => [1 5 2 6 3 7 4 8]