1 {-# LANGUAGE NoMonomorphismRestriction #-}
2 {-# OPTIONS_GHC -fno-warn-missing-signatures #-}
6 import Prelude hiding ((&&), not, (||), id)
8 import Language.Symantic
9 import Language.Symantic.Lib
11 import qualified HUnit.Applicative as Applicative
12 import qualified HUnit.Bool as Bool
13 import qualified HUnit.Foldable as Foldable
14 import qualified HUnit.Functor as Functor
15 import qualified HUnit.Map as Map
16 import qualified HUnit.MonoFunctor as MonoFunctor
17 import qualified HUnit.Num as Num
18 import qualified HUnit.Tuple2 as Tuple2
22 hunits = testGroup "HUnit" $
34 te1 = lam $ \x -> lam $ \y -> (x || y) && not (x && y)
35 te2 = lam $ \x -> lam $ \y -> (x && not y) || (not x && y)
36 te3 = let_ (bool True) $ \x -> x && x
37 te4 = let_ (lam $ \x -> x && x) $ \f -> f `app` bool True
38 te5 = lam $ \x0 -> lam $ \x1 -> x0 && x1
39 te6 = let_ (bool True) id && bool False
40 te7 = lam $ \f -> (f `app` bool True) && bool True
41 te8 = lam $ \f -> f `app` (bool True && bool True)