SuperCollider
Материал из Википедии — свободной энциклопедии
SuperCollider - это виртуальная среда и язык программирования для аудиосинтеза в реальном времени. В основу вошли понятие объектов схожее с Smalltalk, стиль синтаксиса C, принципы функционального программирования.
С третьей версии SuperCollider работает одновременно как клиент и сервер, обмениваясь сообщениями по OSC протоколу.
[править] пример
// проигрывает микс из розового шума и синуса 800 Гц
{ SinOsc.ar(800, 0, 0.1) + PinkNoise.ar(0.01) }.play;
// модуляция частоты синуса, а так же амплитуды шума другим синусом,
// чья частота зависит от горизонтальной позиции курсора мышки
{
var x = SinOsc.ar(MouseX.kr(1, 100));
SinOsc.ar(300 * x + 800, 0, 0.1)
+
PinkNoise.ar(0.1 * x + 0.1)
}.play;
// цикл проходящий все элементы списка, создаёт Collection, в который вписывается продукт индекса и элемента.
[1, 2, 5, 10, -3].collect { |item, i| item * i }
// функция для построения факториала
f = { |x| if(x == 0) { 1 } { f.(x-1) * x } }

