2025 - Present

Performing Code: Rhythm Generation and Structure in Live Coding

Live Coding, Rhythm Generation, Sieve Theory, SuperCollider, Sound Synthesis


In this series of live coded performances, Luis Sanz explores rhythm and musical form through algorithmic systems built on controlled randomness and integer-based sieve techniques. Developed in SuperCollider, the setup merges evolving rule sets with real-time performer interaction, shaping musical parameters, structure, and rhythmic patterns.

The series embodies a dynamic and performative approach to composition, where live coding becomes both a method of creation and a form of improvisation. Here, code functions simultaneously as instrument, score, and interface for spontaneous musical expression.




*recommended: use headphones for optimal listening



Rhythm Generator #1

 t.stop; Tempo.bpm = 99;
(
Pdefn(\degree, [36, \r, 46, 39, \r, 49, 49, 40] - 1 + PSVop_oi([3, 5, 6, 7, 9, 11]).asStream); // note values
Pdefn(\legato, Pwhite(0.1, 0.5, inf) + Pseq([0.0, 0.2, 0.3, 0.5, 0.7], inf)); // note lengths
Pdefn(\amp, PSVsymdif_i([3, 5, 6, 7, 9, 10, 11, 12, 14, 15])/2.5); //  velocity values 
Pdefn(\dur, Pbjorklund2(Pwhite(2, 3), 8, inf) * 0.02 * PSVunion_i([4, 6, 7]).asStream); //duration 
)
Pdefn(\degree, [36, \r, 46, 39, \r, 49, 49, 40] - 1 * PSVop_oi([3, 5, 6, 7, 9, 11]).asStream)
Pdefn(\degree, [48, \r, \49, \r, \54] * 1 + PSVop_oi([3, 5, 6, 7, 9, 11]).asStream);
Pdefn(\degree, [48, \r, \49, \r, \54] - 1 + PSVop_oi([3, 5, 6, 7, 9, 11]).asStream);




Rhythm Generator #2

// rhythm generator #2 | 
(
Pdefn(\degree, [50, \r, \49, \r, \54, 36] * 1 + PSVop_i([3, 5, 6, 7, 9, 11]).asStream);
Pdefn(\legato, 1);
Pdefn(\dur, Pseq([1, 0.5, 1.5, 1], inf)/16 * PSVunion_oi([1, 5, 10, 7]).asStream);
Pdefn(\amp, Pseq([0.7, 0.3, 0.7, 0.3, 0.6, 0.2, 0.6, 0.2], inf));
)
Pdefn(\degree, [36, \r, 46, 39, \r, 49, 49, 50] - 1 + PSVop_i([3, 5, 6, 7, 9, 11]).asStream);
Pdefn(\degree, [48, \r, \r, 49, \r, \54] - 1 + PSVop_i([3, 5, 6, 7, 9, 11]).asStream);
Pdefn(\degree, [36, \r, 46, 39, \r, 49, 49, 36] - 1 + PSVop_i([3, 5, 6, 7, 9, 11]).asStream);





Project Iteration: ICLC-522
Rhythmic Sequencing & Analog Synthesis (Barcelona, 2025)

Developed for the 2025 International Conference on Live Coding (ICLC) in Barcelona, ICLC-522 is a series of rhythmic sequencing exercises utilizing SuperCollider to drive an MFB-522 analog drum machine. The project explores the nuanced relationship between repetition and variation through single, focused patterns.

These exercises were recorded in February 2026 at Zentralwäscherei (Zurich), using a Boss BX-800 mixer to capture the raw character of the analog synthesis. The resulting collection of short recordings documents the project’s transition from conceptual framework to recorded performance.