module Data.Tuple.Extended ( module Data.Tuple , curry3 , curry4 , uncurry3 , uncurry4 ) where import Prelude import Data.Tuple curry3 :: ((a, b, c) -> d) -> a -> b -> c -> d curry3 f a b c = f (a, b, c) curry4 :: ((a, b, c, d) -> e) -> a -> b -> c -> d -> e curry4 f a b c d = f (a, b, c, d) uncurry3 :: (a -> b -> c -> d) -> (a, b, c) -> d uncurry3 f (a, b, c) = f a b c uncurry4 :: (a -> b -> c -> d -> e) -> (a, b, c, d) -> e uncurry4 f (a, b, c, d) = f a b c d