__group__ ticket summary component version milestone type owner status created _changetime _description _reporter Active Tickets 36 equals{S,P} functions are missing INILNE pragamas repa 3.2.2 defect new 2012-04-24T01:28:17Z 2015-05-19T12:53:51Z like it says Ben Lippmeier Active Tickets 13 Optimise Repa.fromByteString to avoid bounds checks in ByteString repa 3.2.2 enhancement new 2010-04-30T04:37:56Z 2015-05-19T12:54:19Z Should be able to use an intermediate CString for this. Ben Lippmeier Active Tickets 37 Swap order of parameters to 'extend' so it matches 'slice'. repa 3.2.2 defect new 2012-10-16T01:46:09Z 2015-05-19T12:54:06Z The example expression also has the parameters in the wrong order. Ben Lippmeier Active Tickets 39 Missing bounds checks. repa 3.2.2 defect new 2013-09-06T02:05:46Z 2015-05-19T12:54:00Z "{{{ > let arr = fromListUnboxed (Z :. 3 :. 5) [1..15] :: Array U DIM2 Int > arr ! (Z:.2:.4 :: DIM2) 15 > reshape (Z:.15) arr ! (Z:.14 :: DIM1) 15 > reshape (Z:.15) arr ! (Z:.15 :: DIM1) 1076040336 > reshape (Z:.15) arr ! (Z:.(-15) :: DIM1) 140454916268033 > (fromListUnboxed (Z :. 10) [1..10] :: Array U DIM1 Int) ! (Z:.10 :: DIM1) *** Exception: ./Data/Vector/Generic.hs:244 ((!)): index out of bounds (10,10) }}}" Ben Lippmeier Active Tickets 40 Don't demand the whole list with fromList repa 3.2.2 defect new 2013-12-14T03:56:32Z 2015-05-19T12:54:12Z " If the client tries something like: {{{fromListUnboxed (Z:.s:.s) [0.0,0.0..]}}} then the code will stall when trying to determine the length of the list. " Ben Lippmeier Active Tickets 38 Make unsafeWriteMVec for boxed arrays strict repa 3.2.2 enhancement new 2013-04-23T02:25:08Z 2015-05-19T12:54:38Z " See the following SO question: http://stackoverflow.com/questions/16097418/parallel-repa-code-doesnt-create-sparks/ We can force an (Array V) to be evaluated by mapping a deepseq function across every element, but this is non-intuitive. It would be better to just make the write function strict and ensure all elements in such an array are properly evaluated. " Ben Lippmeier Active Tickets 41 Generalise foldS worker to have a different accumulator type repa 3.2.2 enhancement new 2014-02-11T11:20:53Z 2015-05-19T12:54:25Z "With {{{ foldS :: (Elt a, V.Unbox a) => M.IOVector a -- ^ vector to write elements into -> (Int# -> a) -- ^ function to get an element from the given index -> (a -> a -> a) -- ^ binary associative combination function -> a -- ^ starting value (typically an identity) -> Int# -- ^ inner dimension (length to fold over) -> IO () }}} the worker could really have type (a -> b -> b) in the sequential case." Ben Lippmeier Active Tickets 43 Avoid intermediate lists when packing Ints and Strings repa-convert 4.2.0 enhancement new 2015-05-19T12:50:16Z 2015-05-19T13:02:44Z The packer for Ints uses plain Haskell show, and the intermediate list of Chars won't be fused away. Ben Lippmeier