diff options
Diffstat (limited to 'pkgs/development/haskell-modules/unlambda-fix-ghc710.patch')
-rw-r--r-- | pkgs/development/haskell-modules/unlambda-fix-ghc710.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/pkgs/development/haskell-modules/unlambda-fix-ghc710.patch b/pkgs/development/haskell-modules/unlambda-fix-ghc710.patch new file mode 100644 index 00000000000..51c453557aa --- /dev/null +++ b/pkgs/development/haskell-modules/unlambda-fix-ghc710.patch @@ -0,0 +1,28 @@ +diff -ru3 unlambda-0.1.3-old/Language/Unlambda.hs unlambda-0.1.3/Language/Unlambda.hs +--- unlambda-0.1.3-old/Language/Unlambda.hs 2015-04-17 21:16:32.415751612 +0300 ++++ unlambda-0.1.3/Language/Unlambda.hs 2015-04-17 21:25:38.210123501 +0300 +@@ -29,6 +29,7 @@ + import Prelude hiding(catch) + #endif + import Control.Exception (catch, IOException) ++import Control.Monad (liftM, ap) + + ------------------------------------------------------------------------ + -- Abstract syntax +@@ -85,6 +86,16 @@ + + type Cont a = (Maybe Char, Int) -> a -> IO Exp + ++instance Functor Eval where ++ ++ fmap = liftM ++ ++instance Applicative Eval where ++ ++ pure = return ++ ++ (<*>) = ap ++ + instance Monad Eval where + + (Eval cp1) >>= f = Eval $ \dat1 cont2 -> |