the same as `chunk`, but runs from right to left.
-}
-- this was throwing a parse error when I ran it in tidal whenever I changed the function name..
_chunk' :: Integral a => a -> (Pattern b -> Pattern b) -> Pattern b -> Pattern b
_chunk' n f p = do i <- _slow (toRational n) $ rev $ run (fromIntegral n)
                   withinArc (Arc (i % fromIntegral n) ((i+)1 % fromIntegral n)) f p

chunk' :: Integral a1 
_chunk' :: Integral a => a -> (Pattern b -> Pattern b) -> Pattern b -> Pattern b
_chunk' n f p = do i <- _slow (toRational n) $ rev $ run (fromIntegral n)
                   withinArc (Arc (i % fromIntegral n) ((i+)1 % fromIntegral n)) f p
_chunk' n f p = do i <- _slow (toRational n) $ rev $ run (fromIntegral n)
                   withinArc (Arc (i % fromIntegral n) ((i+)1 % fromIntegral n)) f p