blob: 4ec2a17395e2d1500112f9acb76c93c5af2bb017 (
plain)
1
2
3
4
5
6
7
8
9
|
{-# LANGUAGE RankNTypes #-}
-- !!! Local universal quantification.
module ShouldSucceed where
data Monad2 m = MkMonad2 (forall a. a -> m a)
(forall a b. m a -> (a -> m b) -> m b)
halfListMonad :: (forall a b. [a] -> (a -> [b]) -> [b]) -> Monad2 []
halfListMonad b = MkMonad2 (\x -> [x]) b
|