Skip to content
This repository was archived by the owner on Jun 13, 2025. It is now read-only.

Commit 29f28ed

Browse files
committed
pattern time parameter of outside just once. Fixes #385
1 parent 375e804 commit 29f28ed

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/Sound/Tidal/UI.hs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1254,11 +1254,17 @@ _chunk' n f p = do i <- _slow (toRational n) $ rev $ run (fromIntegral n)
12541254
chunk' :: Integral a1 => Pattern a1 -> (Pattern a2 -> Pattern a2) -> Pattern a2 -> Pattern a2
12551255
chunk' npat f p = innerJoin $ (\n -> _chunk' n f p) <$> npat
12561256

1257+
_inside :: Time -> (Pattern a1 -> Pattern a) -> Pattern a1 -> Pattern a
1258+
_inside n f p = _fast n $ f (_slow n p)
1259+
12571260
inside :: Pattern Time -> (Pattern a1 -> Pattern a) -> Pattern a1 -> Pattern a
1258-
inside n f p = density n $ f (slow n p)
1261+
inside np f p = innerJoin $ (\n -> _inside n f p) <$> np
1262+
1263+
_outside :: Time -> (Pattern a1 -> Pattern a) -> Pattern a1 -> Pattern a
1264+
_outside n = _inside (1/n)
12591265

12601266
outside :: Pattern Time -> (Pattern a1 -> Pattern a) -> Pattern a1 -> Pattern a
1261-
outside n = inside (1/n)
1267+
outside np f p = innerJoin $ (\n -> _outside n f p) <$> np
12621268

12631269
loopFirst :: Pattern a -> Pattern a
12641270
loopFirst p = splitQueries $ p {query = f}

0 commit comments

Comments
 (0)