Que funções de programação podemos usar?


Podemos criar nossas composições musicais com as seguintes catetorias de funções:

geração de sons
Os sons podem podem ser criados com as funções play e sample.
O comando play toca notas musicais com o instrumento escolhido previamente. A versão 2.11 do Sonic Pi conta com 40 instrumentos (synths, na nomenclatura do software).
O comando sample toca arquivos de áudio (wav, aif, flac), disponíveis dentro do Sonic Pi ou localizados no seu computador.

use_synth :prophet
play :C3
live_loop :sampleDrums do
  sample :loop_safari, amp: 2
  sleep sample_duration :loop_safari
end

live_loop :sampleBass do
  sample :bass_trance_c, amp: 3, rate: rrand(0.66,0.75), pan: -1
  sample :bass_trance_c, amp: 3, rate: rrand(0.66,0.75), pan: +1
  sleep (sample_duration :loop_safari) * 2
end

repetição
Repetições e loops podem ser gerados coms as funções times, loop e live_loop.

A função times repete o trecho de código x vezes.

3.times do
  play :C4
  sleep 1
end

A função loop repete o trecho de código, sem permitir o avanço da execução do programa.

loop do
  play chord(:C3, :minor)
  sleep 1
end

A função live_loop repete o trecho de código, mas deixando que os próximos trechos de código sejam executados, permitindo a existências de vários loops.

live_loop :bateria do
  sample :bd_sone, rate: 0.8
  sleep 2
end

live_loop :notas do
  play chord(:C3, :minor)
  sleep 1
end