diff --git a/website/src/pages/learn/mondo-notation.mdx b/website/src/pages/learn/mondo-notation.mdx index caf9f67fe..6a2f07ff9 100644 --- a/website/src/pages/learn/mondo-notation.mdx +++ b/website/src/pages/learn/mondo-notation.mdx @@ -14,14 +14,20 @@ Here's an example: /2 -.jux /2 -.rarely (12.note.add) .delay .4 .vib 1:.3 -.fm (sine/4.range .5 4).fmh 2.02 -.lpf (sine/2.range 200 2000).lpq 4 -.s piano .clip 2 -.add (perlin.range 0 .2 .note)`} + tune={`$ note c2 .(euclid <3 6 3> <8 16>) . *2 +.s "sine" .add (note [0 <12 24>]*2) +.dec(sine .range .2 2) .room .5 +.lpf(sine/3.range 120 400) +.lpenv(rand .range .5 4) +.lpq(perlin .range 5 12 . * 2) +.dist 1 .fm 4 .fmh 5.01 .fmdecay <.1 .2> +.postgain .6 .delay .1 .clip 5 + +$ s [bd bd bd bd] .bank tr909.clip.5 +.ply<1 [1 [2 4]]> + +$ s oh*4 .press .bank tr909 .speed.8 +.dec <.02 .05>*2 .(add (saw/8.range 0 1))`} /> ## Calling Functions @@ -42,21 +48,29 @@ The outermost parens are not needed, so we can drop them: Besides function calling with round parens, Mondo Notation has a lot in common with Mini Notation: +### Brackets + - `[]` for 1-cycle sequences - `<>` for multi-cycle sequences - `{}` for stepped sequences (more on that later) + +### Infix Operators + - \* => [fast](/learn/time-modifiers/#fast) - / => [slow](/learn/time-modifiers/#slow) -- , => [stack](/learn/factories/#stack) - ! => [extend](/learn/stepwise/#extend) - @ => [expand](/learn/stepwise/#expand) - % => [pace](/learn/stepwise/#pace) - ? => [degradeBy](/learn/random-modifiers/#degradeby) (currently requires right operand) - : => tail (creates a list) - .. => range (between numbers) + +### Separators + +- , => [stack](/learn/factories/#stack) - | => [chooseIn](/learn/random-modifiers/#choose) -Example: +### Example + +In this case, the \*2 will be applied to the whole pattern. + ### Lambda Functions Some functions in strudel expect a function as input, for example: