{
   "labels" : [
      "code fork",
      "sequencer",
      "algorithmic composing"
   ],
   "code" : "// derived from an answer by Sergio Luque to a mail to the sc-users SuperCollider mailing list on 2013/03/22\r\n\r\n(\r\nvar registerSize = 16;\r\nvar min =\"C2\".namemidi.asInteger;\r\nvar max = \"C6\".namemidi.asInteger;\r\nvar waitTime = 0.05; // in seconds\r\n//var chance = 0.1;\r\nvar chance = Pseq([Pseries(0, 0.1, 10), Pseries(1, -0.1, 10)], inf);\r\nvar change = 10; // step size\r\n\r\n\r\nPbind(\r\n\t\\midinote, Pswitch1(\r\n\t\t{ \r\n\t\t\tPbrown(min, max, Pif(Prout({ chance.trace.coin.embedInStream }), change, 0))\r\n\t\t} ! registerSize, \r\n\t\tPseq(Array.iota(registerSize), inf)\r\n\t),\r\n\t\\dur, waitTime\r\n).play\r\n)",
   "is_private" : null,
   "id" : "1-4SJ",
   "name" : "wiard noise ring variation using a ringbuffer instead of bitshifting, language implementation (pattern-based)",
   "author" : "LFSaw",
   "ancestor_list" : [
      "1-4SE"
   ],
   "description" : "wiard noise ring variation using a ringbuffer instead of bitshifting.\r\nRe-implemented according to Julian Parker's m4l patch.\r\nDerived from an answer by Sergio Luque to a mail to the sc-users SuperCollider mailing list on 2013/03/22"
}
