Difference between revisions of "every"
From TidalCycles userbase
								
												
				|  (Marked this version for translation) | SlowLeopard (talk | contribs)  m (Further small tweaks to punctuation) | ||
| (One intermediate revision by the same user not shown) | |||
| Line 6: | Line 6: | ||
| <!--T:2--> | <!--T:2--> | ||
| − | '''every''' is function | + | '''every''' is function that allows you to apply another function conditionally. It takes three inputs: how often the function should be applied (e.g. <syntaxhighlight lang="haskell" inline>3</syntaxhighlight> to apply it every 3 cycles), the function to be applied, and the pattern you are applying it to.   | 
| <!--T:3--> | <!--T:3--> | ||
| − | For example to reverse a pattern every three cycles (and for the other two play it normally) | + | For example: to reverse a pattern every three cycles (and for the other two play it normally)   | 
| <!--T:4--> | <!--T:4--> | ||
| Line 17: | Line 17: | ||
| <!--T:5--> | <!--T:5--> | ||
| − | Note that if the function you're applying requires additional parameters  | + | Note that if the function you're applying itself requires additional parameters (such as <syntaxhighlight lang="haskell" inline>fast 2</syntaxhighlight> to make a pattern twice as fast), then you'll need to wrap it in parenthesis, like so: | 
| <!--T:6--> | <!--T:6--> | ||
Latest revision as of 11:59, 25 March 2021
Type: every :: Pattern Int -> (Pattern a -> Pattern a) -> Pattern a -> Pattern a
every is function that allows you to apply another function conditionally. It takes three inputs: how often the function should be applied (e.g. 3 to apply it every 3 cycles), the function to be applied, and the pattern you are applying it to. 
For example: to reverse a pattern every three cycles (and for the other two play it normally)
d1 $ every 3 rev $ n "0 1 [~ 2] 3" # sound "arpy"
Note that if the function you're applying itself requires additional parameters (such as fast 2 to make a pattern twice as fast), then you'll need to wrap it in parenthesis, like so:
d1 $ every 3 (fast 2) $ n "0 1 [~ 2] 3" # sound "arpy"
Otherwise, the every function will think it is being passed too many parameters.
See also every'.
