@@ -1230,7 +1230,7 @@ partitionBy = undefined
12301230--
12311231-- /Unimplemented/
12321232{-# INLINE shuffleBy #-}
1233−shuffleBy :: (a -> a -> m Bool) -> Array a -> Array a -> m (Array a)
1233+shuffleBy :: (a -> a -> m Bool) -> Array a -> Array a -> m ()
12341234shuffleBy = undefined
12351235
12361236-- XXX we can also make the folds partial by stopping at a certain level.
@@ -1246,19 +1246,19 @@ shuffleBy = undefined
12461246-- /Unimplemented/
12471247{-# INLINABLE divideBy #-}
12481248divideBy ::
1249− Int -> (Array a -> Array a -> m (Array a)) -> Array a -> m (Array a)
1249+ Int -> (Array a -> m (Array a, Array a)) -> Array a -> m ()
12501250divideBy = undefined
12511251
12521252-- | @mergeBy level merge array@ performs a pairwise bottom up fold recursively
12531253-- merging the pairs using the supplied merge function. Level indicates the
12541254-- level in the tree where the fold would stop.
12551255--
1256−-- This performs a random shuffle if the shuffle function is random. If we
1256+-- This performs a random shuffle if the merge function is random. If we
12571257-- stop at level 0 and repeatedly apply the function then we can do a bubble
12581258-- sort.
12591259--
12601260-- /Unimplemented/
1261−mergeBy :: Int -> (Array a -> Array a -> m (Array a)) -> Array a -> m (Array a)
1261+mergeBy :: Int -> (Array a -> Array a -> m ()) -> Array a -> m ()
12621262mergeBy = undefined
12631263
12641264-------------------------------------------------------------------------------