Greg, > map_ :: (a -> b) -> (b -> c -> d) -> a -> c -> d > map_ f g a b = g (f a) b Please note that map_ = flip (.) or, if you import Control.Arrow, map_ = (>>>) Regards, Stefan