Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- type Couple a = forall z. (a -> z) -> z
- consCouple :: a -> Couple a
- consCouple = a -> p -> p a
- type Test = forall x. x -> x
- t :: Test
- t = x -> x
- c :: Couple Test
- c = consCouple (t :: Test)
- main :: IO ()
- main = do{
- print "test"
- }
- Couldn't match type `x0 -> x0' with `forall x. x -> x'
- Expected type: Test
- Actual type: x0 -> x0
- In the first argument of `consCouple', namely `(t :: Test)'
- In the expression: consCouple (t :: Test)
- In an equation for `c': c = consCouple (t :: Test)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement