{- applicative stuff - - Copyright 2012 Joey Hess <id@joeyh.name> - - License: BSD-2-clause -} module Utility.Applicative where {- Like <$> , but supports one level of currying. - - foo v = bar <$> action v == foo = bar <$$> action -} (<$$>) :: Functor f => (a -> b) -> (c -> f a) -> c -> f b a -> b f <$$> :: forall (f :: * -> *) a b c. Functor f => (a -> b) -> (c -> f a) -> c -> f b <$$> c -> f a v = forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b fmap a -> b f forall b c a. (b -> c) -> (a -> b) -> a -> c . c -> f a v infixr 4 <$$>