Convolution (computer Science) - Language Comparison

Language Comparison

List of languages by support of convolution:

Zip in various languages
Language Zip Zip 3 lists Zip n lists Notes
Clojure (map list list1 list2)
(map vector list1 list2)
(map vector list1 list2 list3)
(map vector list1 list2 list3)
(map list list1listn)
(map vector list1listn)
Stops after the length of the shortest list.
Common Lisp (mapcar #'list list1 list2) (mapcar #'list list1 list2 list3) (mapcar #'list list1 ... listn) Stops after the length of the shortest list.
Haskell zip list1 list2 zip3 list1 list2 list3 zipn list1listn zipn for n > 3 is available in the module Data.List. Stops after the shortest list ends.
Python zip(list1, list2) zip(list1, list2, list3) zip(list1, …, listn) zip and map (3.x) stops after the shortest list ends, whereas map (2.x) and itertools.zip_longest (3.x) extends the shorter lists with None items
Unzip in various languages
Language Unzip Unzip 3 tuples Unzip n tuples Notes
Clojure (apply map vector convlist) (apply map vector convlist) (apply map vector convlist)
Common Lisp (apply #'mapcar #'list convlist) (apply #'mapcar #'list convlist) (apply #'mapcar #'list convlist)
Haskell unzip convlist unzip3 convlist unzipn convlist unzipn for n > 3 is available in the module Data.List.
Python zip(*convvlist) zip(*convvlist) zip(*convvlist)

Read more about this topic:  Convolution (computer Science)

Famous quotes containing the words language and/or comparison:

    Talking about dreams is like talking about movies, since the cinema uses the language of dreams; years can pass in a second and you can hop from one place to another. It’s a language made of image. And in the real cinema, every object and every light means something, as in a dream.
    Frederico Fellini (1920–1993)

    Envy and jealousy are the private parts of the human soul. Perhaps the comparison can be extended.
    Friedrich Nietzsche (1844–1900)