Введение

Аудиоязык программирования ChucK — это язык программирования для синтеза, композиции и исполнения звука в реальном времени, поддерживающий параллельное выполнение и точное управление временем. Он работает в операционных системах Linux, Mac OS X, Microsoft Windows и iOS. При разработке ChucK приоритет отдавался читаемости и гибкости для программиста, а не сырой производительности. Он обеспечивает детерминированное параллельное выполнение и поддержку множественных, одновременных, динамических частот управления. Важной особенностью является возможность интерактивного редактирования кода – добавления, удаления и изменения кода "на лету", во время работы программы, без её остановки или перезапуска. ChucK обладает высокоточной моделью синхронизации и параллельного выполнения, позволяющей достичь произвольно малого шага дискретизации. Он предоставляет композиторам и исследователям мощный и гибкий инструмент для создания и экспериментирования со сложными программами звукового синтеза и интерактивного управления в реальном времени. ChucK был создан и разработан Ге Ваном во время обучения в аспирантуре под руководством Перри Р. Кука. ChucK распространяется бесплатно под лицензией GNU General Public License для Mac OS X, Linux и Microsoft Windows. На iPhone и iPad, ChiP (ChucK для iPhone) распространяется по ограниченной лицензии с закрытым исходным кодом и в настоящее время не доступен для публичного лицензирования. Однако команда разработчиков выразила намерение изучить "возможности открытия ChiP, создав благоприятную среду для всех".

Применение

ChucK использовался в выступлениях Принстонского ноутбучного оркестра (PLOrk) и при разработке приложений Smule, в том числе эмулятора окарины. Организаторы PLOrk отмечают, что уникальность их выступлений во многом обусловлена возможностью живого кодирования с использованием ChucK.

Казалось бы, независимый охват

Грэм Моррисон, (2009) Создавайте треки с Чаком. Устав от однообразной музыки в чартах, мы создаем собственную музыку из серии псевдослучайных чисел. Linux Format, выпуск 125.
Алан Блэквелл и Ник Коллинз, Язык программирования как музыкальный инструмент в сборнике трудов под редакцией P. Ромеро, J. Гуда, Э. Акоста Чапарро и С. Брайанта (Eds). Proc. PPIG 17, с. 120–130.