[project @ 2000-04-14 16:16:13 by rrt]
[ghc-hetmet.git] / ghc / lib / std / Random.lhs
index 2d61fc2..94aca4b 100644 (file)
@@ -34,14 +34,12 @@ import PrelNum              ( fromInt )
 import PrelShow                ( showSignedInt, showSpace )
 import PrelRead                ( readDec )
 import PrelIOBase      ( unsafePerformIO, stToIO )
-import PrelArr         ( MutableVar, newVar, readVar, writeVar )
+import PrelArr         ( STRef, newSTRef, readSTRef, writeSTRef )
 import PrelReal                ( toInt )
 import PrelFloat       ( float2Double, double2Float )
 import Time            ( getClockTime, ClockTime(..) )
 #else
-import Prelude
-import privileged Prelude
-                       ( IORef
+import PrelPrim                ( IORef
                        , newIORef
                        , readIORef
                        , writeIORef
@@ -285,16 +283,16 @@ theStdGen  = unsafePerformIO (newIORef (createStdGen 0))
 
 #else
 
-global_rng :: MutableVar RealWorld StdGen
+global_rng :: STRef RealWorld StdGen
 global_rng = unsafePerformIO $ do
    rng <- mkStdRNG 0
-   stToIO (newVar rng)
+   stToIO (newSTRef rng)
 
 setStdGen :: StdGen -> IO ()
-setStdGen sgen = stToIO (writeVar global_rng sgen)
+setStdGen sgen = stToIO (writeSTRef global_rng sgen)
 
 getStdGen :: IO StdGen
-getStdGen = stToIO (readVar global_rng)
+getStdGen = stToIO (readSTRef global_rng)
 
 #endif