summaryrefslogtreecommitdiff
path: root/libraries/base/Control/Monad/Fix.hs
diff options
context:
space:
mode:
authorross <unknown>2002-10-01 16:29:47 +0000
committerross <unknown>2002-10-01 16:29:47 +0000
commitae10d00567b6fc11f51c7df5422ba5957f4a5e9c (patch)
tree3ef3e5d25cb506b3d4c93958554cf7fd7f146e8b /libraries/base/Control/Monad/Fix.hs
parentaee388f457d00c5cfd3694430266cdd9a0aaaf4e (diff)
downloadhaskell-ae10d00567b6fc11f51c7df5422ba5957f4a5e9c.tar.gz
[project @ 2002-10-01 16:29:47 by ross]
Removed the strict ST instance (already in Control.Monad.ST) and moved the lazy ST instance to Control.Monad.ST.Lazy, so Control.Monad.Fix contains only instances for Prelude types, and is portable.
Diffstat (limited to 'libraries/base/Control/Monad/Fix.hs')
-rw-r--r--libraries/base/Control/Monad/Fix.hs14
1 files changed, 1 insertions, 13 deletions
diff --git a/libraries/base/Control/Monad/Fix.hs b/libraries/base/Control/Monad/Fix.hs
index c465511d5b..6c9ac7f251 100644
--- a/libraries/base/Control/Monad/Fix.hs
+++ b/libraries/base/Control/Monad/Fix.hs
@@ -17,8 +17,6 @@
-- Mark P Jones (<http://www.cse.ogi.edu/~mpj>)
-- Advanced School of Functional Programming, 1995.
--
--- Oct. 1st, 2002: Added instances for Lazy ST, ST, and List monads
---
-----------------------------------------------------------------------------
module Control.Monad.Fix (
@@ -29,8 +27,6 @@ module Control.Monad.Fix (
) where
import Prelude
-import qualified Control.Monad.ST.Lazy as LazyST
-import qualified Control.Monad.ST as ST
import System.IO
fix :: (a -> a) -> a
@@ -39,7 +35,7 @@ fix f = let x = f x in x
class (Monad m) => MonadFix m where
mfix :: (a -> m a) -> m a
--- Instances of MonadFix
+-- Instances of MonadFix for Prelude monads
-- Maybe:
instance MonadFix Maybe where
@@ -55,11 +51,3 @@ instance MonadFix [] where
-- IO:
instance MonadFix IO where
mfix = fixIO
-
--- Lazy State:
-instance MonadFix (LazyST.ST s) where
- mfix = LazyST.fixST
-
--- Strict State:
-instance MonadFix (ST.ST s) where
- mfix = ST.fixST