[project @ 2001-08-22 12:24:41 by simonmar]
[ghc-hetmet.git] / ghc / tests / typecheck / should_run / tcrun010.hs
diff --git a/ghc/tests/typecheck/should_run/tcrun010.hs b/ghc/tests/typecheck/should_run/tcrun010.hs
deleted file mode 100644 (file)
index 1dec290..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# OPTIONS -fglasgow-exts #-}
-
--- !!! Functional dependencies
--- This one gave "zonkIdOcc:  FunDep_a11w" in earlier days
-
-module Main (main) where
-
-data ERR a b = EOK a | ERR b deriving (Show)
-data Error   = No | Notatall deriving (Show, Eq)
-
-
-class MonadErr m e | m -> e where
-   aerturn ::           e   -> m a
-   areturn ::           a   -> m a
-   acatch  ::           a   -> (a -> m b) -> (e -> m b) -> m b
-   (>>>=)  ::           m a -> (a -> m b) -> m b
-   (>>>)   ::           m a -> m b        -> m b
-
-data BP a = BP (Int -> (ERR a Error, Int))
-
-instance MonadErr BP Error where
-   aerturn k             = BP $ \s  -> (ERR k, s)
-   areturn k             = BP $ \s  -> (EOK k, s)
-   acatch  k try handler = BP $ \s  -> let BP try'     = try  k
-                                           (r,s1)      = try' s
-                                           (BP c2, s2) = case r of
-                                                           EOK r -> (areturn r, s1)
-                                                           ERR r -> (handler r, s)
-                                       in  c2 s2
-   a >>> b =  a >>>= \_ -> b
-
-   (BP c1) >>>= fc2      = BP $ \s0 -> let (r,s1) = c1 s0
-                                           BP c2 = case r of
-                                                     EOK r -> fc2 r
-                                                     ERR r -> BP (\s -> (ERR r, s))
-                                       in c2 s1
-
-run_BP :: Int -> BP a -> (ERR a Error, Int)
-run_BP st (BP bp) = bp st
-
-foo :: (ERR Int Error, Int)
-foo = run_BP 111 (aerturn No)
-
-main = print (show foo)