summaryrefslogtreecommitdiff
path: root/Utility/Applicative.hs
diff options
context:
space:
mode:
authorJoey Hess2014-03-29 23:10:52 -0400
committerJoey Hess2014-03-29 23:16:43 -0400
commitd9af8bac5eb7836a3c90e37e870fd73d30b841fd (patch)
tree40443efd384415172cf393571fe3f1651ea57423 /Utility/Applicative.hs
initial check-in
too young to have a name
Diffstat (limited to 'Utility/Applicative.hs')
-rw-r--r--Utility/Applicative.hs16
1 files changed, 16 insertions, 0 deletions
diff --git a/Utility/Applicative.hs b/Utility/Applicative.hs
new file mode 100644
index 00000000..64400c80
--- /dev/null
+++ b/Utility/Applicative.hs
@@ -0,0 +1,16 @@
+{- applicative stuff
+ -
+ - Copyright 2012 Joey Hess <joey@kitenet.net>
+ -
+ - Licensed under the GNU GPL version 3 or higher.
+ -}
+
+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
+f <$$> v = fmap f . v
+infixr 4 <$$>