Hoogle Search
Within LTS Haskell 24.25 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]verset Verset zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function.
zipWith (,) xs ys == zip xs ys zipWith f [x1,x2,x3..] [y1,y2,y3..] == [f x1 y1, f x2 y2, f x3 y3..]
zipWith is right-lazy:>>> let f = undefined >>> zipWith f [] undefined []
zipWith is capable of list fusion, but it is restricted to its first list argument and its resulting list.Examples
zipWith (+) can be applied to two lists to produce the list of corresponding sums:>>> zipWith (+) [1, 2, 3] [4, 5, 6] [5,7,9]
>>> zipWith (++) ["hello ", "foo"] ["world!", "bar"] ["hello world!","foobar"]
zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]xmonad-contrib XMonad.Config.Prime zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function.
zipWith (,) xs ys == zip xs ys zipWith f [x1,x2,x3..] [y1,y2,y3..] == [f x1 y1, f x2 y2, f x3 y3..]
zipWith is right-lazy:>>> let f = undefined >>> zipWith f [] undefined []
zipWith is capable of list fusion, but it is restricted to its first list argument and its resulting list.Examples
zipWith (+) can be applied to two lists to produce the list of corresponding sums:>>> zipWith (+) [1, 2, 3] [4, 5, 6] [5,7,9]
>>> zipWith (++) ["hello ", "foo"] ["world!", "bar"] ["hello world!","foobar"]
zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]xmonad-contrib XMonad.Prelude zipWith generalises zip by zipping with the function given as the first argument, instead of a tupling function.
zipWith (,) xs ys == zip xs ys zipWith f [x1,x2,x3..] [y1,y2,y3..] == [f x1 y1, f x2 y2, f x3 y3..]
zipWith is right-lazy:>>> let f = undefined >>> zipWith f [] undefined []
zipWith is capable of list fusion, but it is restricted to its first list argument and its resulting list.Examples
zipWith (+) can be applied to two lists to produce the list of corresponding sums:>>> zipWith (+) [1, 2, 3] [4, 5, 6] [5,7,9]
>>> zipWith (++) ["hello ", "foo"] ["world!", "bar"] ["hello world!","foobar"]
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cbase Prelude Lift a binary function to actions. Some functors support an implementation of liftA2 that is more efficient than the default one. In particular, if fmap is an expensive operation, it is likely better to use liftA2 than to fmap over the structure and then use <*>. This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of <*> and fmap.
Example
>>> liftA2 (,) (Just 3) (Just 5) Just (3,5)
>>> liftA2 (+) [1, 2, 3] [4, 5, 6] [5,6,7,6,7,8,7,8,9]
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cbase Control.Applicative Lift a binary function to actions. Some functors support an implementation of liftA2 that is more efficient than the default one. In particular, if fmap is an expensive operation, it is likely better to use liftA2 than to fmap over the structure and then use <*>. This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of <*> and fmap.
Example
>>> liftA2 (,) (Just 3) (Just 5) Just (3,5)
>>> liftA2 (+) [1, 2, 3] [4, 5, 6] [5,6,7,6,7,8,7,8,9]
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cbase GHC.Base Lift a binary function to actions. Some functors support an implementation of liftA2 that is more efficient than the default one. In particular, if fmap is an expensive operation, it is likely better to use liftA2 than to fmap over the structure and then use <*>. This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of <*> and fmap.
Example
>>> liftA2 (,) (Just 3) (Just 5) Just (3,5)
>>> liftA2 (+) [1, 2, 3] [4, 5, 6] [5,6,7,6,7,8,7,8,9]
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f chedgehog Hedgehog.Internal.Prelude Lift a binary function to actions. Some functors support an implementation of liftA2 that is more efficient than the default one. In particular, if fmap is an expensive operation, it is likely better to use liftA2 than to fmap over the structure and then use <*>. This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of <*> and fmap.
Example
>>> liftA2 (,) (Just 3) (Just 5) Just (3,5)
>>> liftA2 (+) [1, 2, 3] [4, 5, 6] [5,6,7,6,7,8,7,8,9]
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cghc GHC.HsToCore.Monad No documentation available.
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cghc GHC.Prelude.Basic No documentation available.
liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f cghc GHC.Utils.Monad No documentation available.