-{-# OPTIONS -fno-implicit-prelude #-}
-----------------------------------------------------------------------------
---
+-- |
-- Module : Control.Monad.Fix
-- Copyright : (c) Andy Gill 2001,
-- (c) Oregon Graduate Institute of Science and Technology, 2001
--- License : BSD-style (see the file libraries/core/LICENSE)
+-- License : BSD-style (see the file libraries/base/LICENSE)
--
-- Maintainer : libraries@haskell.org
-- Stability : experimental
-- Portability : portable
--
--- $Id: Fix.hs,v 1.3 2002/03/14 12:09:49 simonmar Exp $
---
-- The Fix monad.
--
--- Inspired by the paper:
--- \em{Functional Programming with Overloading and
--- Higher-Order Polymorphism},
--- \A[HREF="http://www.cse.ogi.edu/~mpj"]{Mark P Jones},
--- Advanced School of Functional Programming, 1995.}
---
+-- Inspired by the paper
+-- /Functional Programming with Overloading and
+-- Higher-Order Polymorphism/,
+-- Mark P Jones (<http://www.cse.ogi.edu/~mpj>)
+-- Advanced School of Functional Programming, 1995.
-----------------------------------------------------------------------------
module Control.Monad.Fix (
fix -- :: (a -> a) -> a
) where
-#ifdef __GLASGOW_HASKELL__
--- MonadFix is needed by System.IO, so it is below the Prelude.
-import Control.Monad
-import GHC.Base
-import GHC.Err
-import Data.Maybe
-#endif
-
+import Prelude
import System.IO
fix :: (a -> a) -> a