packages feed

mersenne-random-pure64 0.2.0.5 → 0.2.2.0

raw patch · 2 files changed

Files

System/Random/Mersenne/Pure64.hs view
@@ -48,19 +48,27 @@ import System.Random import Data.Word import Data.Int-import System.Time+import Data.Time.Clock+import Data.Time.Calendar import System.CPUTime  -- | Create a PureMT generator from a 'Word64' seed. pureMT :: Word64 -> PureMT pureMT = mkPureMT . seedBlock . fromIntegral +#if !MIN_VERSION_time(1,6,0)+diffTimeToPicoseconds :: DiffTime -> Integer+diffTimeToPicoseconds d =+    round (1000 * 1000 * 1000 * 1000 * d)+#endif+ -- | Create a new PureMT generator, using the clocktime as the base for the seed. newPureMT :: IO PureMT newPureMT = do-    ct             <- getCPUTime-    (TOD sec psec) <- getClockTime-    return $ pureMT (fromIntegral $ sec * 1013904242 + psec + ct)+    ct <- getCPUTime+    t  <- getCurrentTime+    let seed = toModifiedJulianDay (utctDay t) + diffTimeToPicoseconds (utctDayTime t) + ct+    return $ pureMT $ fromIntegral seed  ------------------------------------------------------------------------ -- System.Random interface.
mersenne-random-pure64.cabal view
@@ -1,5 +1,5 @@ name:            mersenne-random-pure64-version:         0.2.0.5+version:         0.2.2.0 homepage:        http://code.haskell.org/~dons/code/mersenne-random-pure64/ synopsis:        Generate high quality pseudorandom numbers purely using a Mersenne Twister description:@@ -26,7 +26,7 @@ maintainer:      Don Stewart <dons00@gmail.com> cabal-version:   >= 1.6.0 build-type:      Simple-tested-with:     GHC == 7.6.2, GHC == 7.7+tested-with:     GHC == 7.6.2, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1  source-repository head   type: git@@ -46,7 +46,7 @@     if flag(small_base)         build-depends: base  < 3     else-        build-depends: base >= 3 && < 6, old-time, random+        build-depends: base >= 3 && < 6, time, random      cc-options:         -O3 -finline-functions -fomit-frame-pointer