chickadee » srfi-1 » unzip4

unzip1 listprocedure
unzip2 listprocedure
unzip3 listprocedure
unzip4 listprocedure
unzip5 listprocedure

unzip1 takes a list of lists, where every list must contain at least one element, and returns a list containing the initial element of each such list. That is, it returns (map car lists). unzip2 takes a list of lists, where every list must contain at least two elements, and returns two values: a list of the first elements, and a list of the second elements. unzip3 does the same for the first three elements of the lists, and so forth.

(unzip2 '((1 one) (2 two) (3 three))) =>
    (1 2 3) 
    (one two three)