-- | -- Module: Main -- Copyright: (c) 2013 Ertugrul Soeylemez -- License: BSD3 -- Maintainer: Ertugrul Soeylemez module Main where import Control.Category.Schoenfinkel import Test.Framework.Providers.QuickCheck2 import Test.Framework.TH import Test.QuickCheck.Function prop_schoen :: Fun (Int, Int) Int -> Int -> Int -> Bool prop_schoen (Fun _ f) x y = schoen f x y == curry f x y prop_unschoen :: Fun Int (Fun Int Int) -> Int -> Int -> Bool prop_unschoen (Fun _ f') x y = let f = apply . f' in unschoen f (x, y) == uncurry f (x, y) main :: IO () main = $(defaultMainGenerator)