zipWith

zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]
base Prelude, base Data.List
zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function. For example, zipWith (+) is applied to two lists to produce the list of corresponding sums.
zipWith :: (Char -> Char -> Char) -> Text -> Text -> Text
text Data.Text, text Data.Text.Lazy
O(n) zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function. Performs replacement on invalid scalar values.
zipWith :: (Char -> Char -> a) -> ByteString -> ByteString -> [a]
bytestring Data.ByteString.Char8, bytestring Data.ByteString.Lazy.Char8
zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function. For example, zipWith (+) is applied to two ByteStrings to produce the list of corresponding sums.
zipWith :: (Word8 -> Word8 -> a) -> ByteString -> ByteString -> [a]
bytestring Data.ByteString, bytestring Data.ByteString.Lazy
zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function. For example, zipWith (+) is applied to two ByteStrings to produce the list of corresponding sums.
zipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c
containers Data.Sequence
O(min(n1,n2)). zipWith generalizes zip by zipping with the function given as the first argument, instead of a tupling function. For example, zipWith (+) is applied to two sequences to take the sequence of corresponding sums.
zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
base Prelude, base Data.List
The zipWith3 function takes a function which combines three elements, as well as three lists and returns a list of their point-wise combination, analogous to zipWith.
zipWith4 :: (a -> b -> c -> d -> e) -> [a] -> [b] -> [c] -> [d] -> [e]
base Data.List
The zipWith4 function takes a function which combines four elements, as well as four lists and returns a list of their point-wise combination, analogous to zipWith.
zipWith5 :: (a -> b -> c -> d -> e -> f) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f]
base Data.List
The zipWith5 function takes a function which combines five elements, as well as five lists and returns a list of their point-wise combination, analogous to zipWith.
zipWith6 :: (a -> b -> c -> d -> e -> f -> g) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g]
base Data.List
The zipWith6 function takes a function which combines six elements, as well as six lists and returns a list of their point-wise combination, analogous to zipWith.
zipWith7 :: (a -> b -> c -> d -> e -> f -> g -> h) -> [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h]
base Data.List
The zipWith7 function takes a function which combines seven elements, as well as seven lists and returns a list of their point-wise combination, analogous to zipWith.
zipWithM :: Monad m => (a -> b -> m c) -> [a] -> [b] -> m [c]
base Control.Monad
The zipWithM function generalizes zipWith to arbitrary monads.
zipWithM_ :: Monad m => (a -> b -> m c) -> [a] -> [b] -> m ()
base Control.Monad
zipWithM_ is the extension of zipWithM which ignores the final result.
zipWith3 :: (a -> b -> c -> d) -> Seq a -> Seq b -> Seq c -> Seq d
containers Data.Sequence
O(min(n1,n2,n3)). zipWith3 takes a function which combines three elements, as well as three sequences and returns a sequence of their point-wise combinations, analogous to zipWith.
zipWith4 :: (a -> b -> c -> d -> e) -> Seq a -> Seq b -> Seq c -> Seq d -> Seq e
containers Data.Sequence
O(min(n1,n2,n3,n4)). zipWith4 takes a function which combines four elements, as well as four sequences and returns a sequence of their point-wise combinations, analogous to zipWith.
gzipWithM :: Monad m => GenericQ (GenericM m) -> GenericQ (GenericM m)
syb Data.Generics.Twins
Twin map for monadic transformation
gzipWithQ :: GenericQ (GenericQ r) -> GenericQ (GenericQ [r])
syb Data.Generics.Twins
Twin map for queries
gzipWithT :: GenericQ (GenericT) -> GenericQ (GenericT)
syb Data.Generics.Twins
Twin map for transformation