1{-# LANGUAGE Trustworthy #-}
2
3-----------------------------------------------------------------------------
4-- |
5-- Module      :  Control.Monad.ST.Lazy
6-- Copyright   :  (c) The University of Glasgow 2001
7-- License     :  BSD-style (see the file libraries/base/LICENSE)
8--
9-- Maintainer  :  libraries@haskell.org
10-- Stability   :  provisional
11-- Portability :  non-portable (requires universal quantification for runST)
12--
13-- This module presents an identical interface to "Control.Monad.ST",
14-- except that the monad delays evaluation of state operations until
15-- a value depending on them is required.
16--
17-----------------------------------------------------------------------------
18
19module Control.Monad.ST.Lazy (
20        -- * The 'ST' monad
21        ST,
22        runST,
23        fixST,
24
25        -- * Converting between strict and lazy 'ST'
26        strictToLazyST, lazyToStrictST,
27
28        -- * Converting 'ST' To 'IO'
29        RealWorld,
30        stToIO,
31    ) where
32
33import Control.Monad.ST.Lazy.Imp
34
35