packages feed

monte-carlo 0.4 → 0.4.1

raw patch · 3 files changed

+12/−5 lines, 3 filesdep ~mtl

Dependency ranges changed: mtl

Files

NEWS view
@@ -1,3 +1,8 @@+Changes in 0.4.1:++* Get project to compile with ghc7.++ Changes in 0.4:  * Felipe Lessa added applicative instances to GSL's MC and MCT.
lib/Control/Monad/MC/Sample.hs view
@@ -236,12 +236,13 @@ shuffle :: (MonadMC m) => [a] -> m [a] shuffle xs = let     n = length xs-    in shuffleInt n >>= \swaps -> (return . BV.toList . BV.create) $ do-           marr <- MV.new n :: ST s (BMV.MVector s a)+    in shuffleInt n >>= \swaps -> (return . BV.toList) $ BV.create $ do+           marr <- MV.new n            zipWithM_ (MV.unsafeWrite marr) [0 .. n-1] xs            mapM_ (swap marr) swaps            return marr   where+    swap :: BMV.MVector s a -> (Int,Int) -> ST s ()     swap marr (i,j) | i == j    = return ()                     | otherwise = do         x <- MV.unsafeRead marr i@@ -253,12 +254,13 @@ shuffleU :: (Unbox a, MonadMC m) => [a] -> m [a] shuffleU xs = let     n = length xs-    in shuffleInt n >>= \swaps -> (return . V.toList . V.create) $ do+    in shuffleInt n >>= \swaps -> (return . V.toList) $ V.create $ do            marr <- MV.new n            zipWithM_ (MV.unsafeWrite marr) [0 .. n-1] xs            mapM_ (swap marr) swaps            return marr   where+    swap :: (Unbox a) => MVector s a -> (Int,Int) -> ST s ()     swap marr (i,j) | i == j    = return ()                     | otherwise = do         x <- MV.unsafeRead marr i
monte-carlo.cabal view
@@ -1,5 +1,5 @@ name:           monte-carlo-version:        0.4+version:        0.4.1 license:        BSD3 license-file:   LICENSE author:         Patrick Perry@@ -45,7 +45,7 @@      build-depends:  base       >= 4     && < 5,                     gsl-random >= 0.4.3 && < 0.5,-                    mtl        >= 1.1   && < 1.2,+                    mtl        >= 1.1   && < 3.0,                     vector     >= 0.6   && < 0.8      hs-source-dirs: lib