Blocks

Een structuur die je vaak zal terugvinden in Sonic Pi is de blok-structuur. Deze “Blocks” kunnen ervoor zorgen dat we heel handig met grote happen code gaan kunnen omspringen. Met de Synth en sample parameters konden we deze al op een enkele lijn gaan veranderen. Soms willen we echter op een slimme manier verschillende lijnen kunnen aanspreken om hun parameters te gaan veranderen. Bijvoorbeeld, als we die willen loop-en, een reverb toe willen voegen, deze 1 van de vijf keer willen laten afspelen etc… Kijk dan even naar deze code:

play 50
sleep 0.5
sample :elec_plip
sleep 0.5
play 62

Om iets met een stuk code-reeksen te laten gebeuren, moeten we Sonic Pi vertellen waar die blok van code moet starten en waar deze eindigt. Hiervoor gebruiken we do om te starten en end om te eindigen. Bijvoorbeeld:

do
  play 50
  sleep 0.5
  sample :elec_plip
  sleep 0.5
  play 62
end

Maar… we zijn er nog niet helemaal (als je dit zou uitproberen krijg je een foutmelding) want we hebben Sonic Pi nog niet verteld wat we willen doen met deze do/end block. Door een speciale code vóór de do te zetten kunnen we dit duidelijk maken aan Sonic Pi. We zullen deze speciale stukjes code later in deze handleiding bekijken. Het belangrijkste om weten nu, is dat als je je code inpakt met deze do en end je hiermee iets speciaal kan aanvangen.