New patches: [Beef up Data.Tuple a bit Josef Svenningsson **20070912182921 Some people import Control.Arrow just to get access to the functions &&& and *** specialized to the function arrow. This patch add the specialized version of these two functions to Data.Tuple which is more logical thing to import if you wish to have functions operating on tuples. ] { hunk ./Data/Tuple.hs 21 + , (&&&) -- :: (a -> b) -> (a -> c) -> a -> (b,c) + , (***) -- :: (a -> a') -> (b -> b') -> (a,b) -> (a',b') hunk ./Data/Tuple.hs 280 +infixr 3 &&& + +-- | Construct a tuple using two functions which applied to the same +-- argument returns the respective tuple components +(&&&) :: (a -> b) -> (a -> c) -> a -> (b,c) +f &&& g = \a -> (f a, g a) + +infixr 3 *** + +-- | Apply two functions pointwise to a pair +(***) :: (a -> a') -> (b -> b') -> (a,b) -> (a',b') +f *** g = \ (a,b) -> (f a, g b) + } Context: [put extra-tmp-files field in the right place Simon Marlow **20070914140812] [Add more entries to boring file Ian Lynagh **20070913210500] [Add a boring file Ian Lynagh **20070913204641] [TAG 2007-09-13 Ian Lynagh **20070913215720] Patch bundle hash: 5095a05ce4fe17193e77037f68dfc2f7d2d95e2f