home/ atoms/ strudel-mini-notation-vs-js-functions

Every Strudel mini-notation pattern has an equivalent JS function form, but mini-notation has only a handful of modifiers

In Strudel everything is made of functions, and every mini-notation construct has a direct JavaScript function equivalent that produces the identical pattern. Which to use is contextual: mini-notation is concise for individual rhythms, while JS functions suit larger compositional contexts. Mini-notation exposes only a handful of modifiers (* / ! @), whereas the JS functions give the full pattern algebra. A concrete limit: mini-notation’s comma (stack) cannot combine elements that carry different sound sources, so mixing a .s('sawtooth') line with an s('bd') line forces you to use the JS stack() function instead.

Examples

stack( note(“c2 eb2(3,8)“).s(‘sawtooth’).cutoff(800), s(“bd(5,8), hh*8”) ) // the comma works inside a single s(), but stacking a sawtooth line with a // kick line needs the JS stack() function

Assessment

Write "c3 e3 g3" as mini-notation and as a JS function call. Then try to stack a sawtooth bass with a kick using only mini-notation and explain why it fails.

“While mini notation is almost always shorter, it only has a handful of modifiers”
corpus · strudel-javascript-functions-reference-intro-full-categorise · chunk 1