From 8216a0d53988012fa0e9f6d90cb38eedbf07fed0 Mon Sep 17 00:00:00 2001 From: Alexey Kuleshevich Date: Thu, 5 Jul 2018 14:26:41 +0300 Subject: [PATCH] Disabled experimental generateM and related due to #24 --- massiv/massiv.cabal | 2 +- massiv/src/Data/Massiv/Array/Mutable.hs | 18 ++++++++++++------ massiv/tests/Spec.hs | 4 ++-- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/massiv/massiv.cabal b/massiv/massiv.cabal index af93c47d..bbfaace9 100644 --- a/massiv/massiv.cabal +++ b/massiv/massiv.cabal @@ -74,7 +74,7 @@ test-suite tests main-is: Spec.hs other-modules: Data.Massiv.Array.DelayedSpec , Data.Massiv.Array.Manifest.VectorSpec - , Data.Massiv.Array.MutableSpec + --, Data.Massiv.Array.MutableSpec , Data.Massiv.Array.Ops.ConstructSpec , Data.Massiv.Array.Ops.FoldSpec , Data.Massiv.Array.Ops.SliceSpec diff --git a/massiv/src/Data/Massiv/Array/Mutable.hs b/massiv/src/Data/Massiv/Array/Mutable.hs index e5ac42de..675c177f 100644 --- a/massiv/src/Data/Massiv/Array/Mutable.hs +++ b/massiv/src/Data/Massiv/Array/Mutable.hs @@ -35,13 +35,13 @@ module Data.Massiv.Array.Mutable -- * Generate (experimental) -- $generate - , generateM + {-, generateM , generateLinearM , mapM , imapM , forM , iforM - , sequenceM + , sequenceM -} ) where import Prelude hiding (mapM, read) @@ -51,7 +51,7 @@ import Control.Monad.Primitive (PrimMonad (..)) import Data.Massiv.Array.Manifest.Internal import Data.Massiv.Array.Unsafe import Data.Massiv.Core.Common -import GHC.Base (Int (..)) +--import GHC.Base (Int (..)) import GHC.Prim -- errorSizeMismatch fName sz1 sz2 = @@ -174,7 +174,7 @@ swap' marr ix1 ix2 = do else ix1 {-# INLINE swap' #-} - +{- unsafeLinearFillM :: (Mutable r ix e, Monad m) => MArray RealWorld r ix e -> (Int -> m e) -> WorldState -> m WorldState unsafeLinearFillM ma f (State s_#) = go 0# s_# @@ -273,11 +273,17 @@ sequenceM r' -> Array r ix (m e) -> m (Array r' ix e) sequenceM r = mapM r id {-# INLINE sequenceM #-} - +-} {- $generate -Functions in this sections can monadically generate manifest arrays using their associated mutable +Functions in this section has been removed until better times due to a known bug https://github.com/lehins/massiv/issues/24 + +-} + +{- + +Functions in this section can monadically generate manifest arrays using their associated mutable interface. Due to the sequential nature of monads generation is done also sequentially regardless of supplied computation strategy. All of functions here are very much experimental, so please if you see something not working diff --git a/massiv/tests/Spec.hs b/massiv/tests/Spec.hs index 99770d71..fb6c95f4 100644 --- a/massiv/tests/Spec.hs +++ b/massiv/tests/Spec.hs @@ -2,7 +2,7 @@ module Main where import Data.Massiv.Array.DelayedSpec as Delayed import Data.Massiv.Array.Manifest.VectorSpec as Vector -import Data.Massiv.Array.MutableSpec as Mutable +--import Data.Massiv.Array.MutableSpec as Mutable import Data.Massiv.Array.Ops.ConstructSpec as Construct import Data.Massiv.Array.Ops.FoldSpec as Fold import Data.Massiv.Array.Ops.SliceSpec as Slice @@ -29,6 +29,6 @@ main = do Slice.spec Transform.spec describe "Delayed" $ Delayed.spec - describe "Mutable" $ Mutable.spec + --describe "Mutable" $ Mutable.spec describe "Stencil" $ Stencil.spec describe "Vector" $ Vector.spec