
28 May
2013
28 May
'13
4:54 a.m.
Hi all, I often find myself needing the following definitions: mapPair :: (a -> b) -> (c -> d) -> (a,c) -> (b,d) mapPair f g (x,y) = (f x, g y) mapFst :: (a -> b) -> (a,c) -> (b,c) mapFst f = mapPair f id mapSnd :: (b -> c) -> (a,b) -> (a,c) mapSnd = mapPair id But they seem missing from the prelude and Hoogle or Hayoo only turn up versions of them in packages like scion or fgl. Has anyone else felt the need for these functions? Am I missing some generalisation of them perhaps? Regards, Dominique