Sonic Pi's random functions are deterministic: the same run always produces the same sequence
Sonic Pi uses a pre-generated list of pseudo-random values. Each call to rand, rrand, choose, dice, one_in etc. advances a pointer through this list. Pressing Run resets the pointer to 0, so every run produces identical results. use_random_seed N jumps to position N, enabling exploration of different melodic or rhythmic variations without true randomness. This makes patterns both composable and shareable.
Examples
use_random_seed 42 5.times do play rrand(50, 90) sleep 0.25 end
Always plays the same 5 notes
Assessment
Run a live_loop with rrand and verify it repeats. Then add use_random_seed with different values to generate distinct melodies.