ChucK
# ChucK

ChucK è un linguaggio di programmazione concorrente, strongly-timed per la sintesi audio in tempo reale, composizione e live performance, che può essere installato su Linux, MacOS X, Microsoft Windows e iOS.

Supporta la concorrenza deterministica e control rate multipli, simultanei e dinamici.

Offre la possibilità di eseguire live coding, aggiungendo, rimuovendo e modificando il codice in tempo reale, durante l'esecuzione del programma. Utilizza un preciso modello di sincronizzazione e concorrenza ed offre a compositori e ricercatori un potente mezzo per la realizzazione di programmi di sintesi audio complessi e controllabili in tempo reale.

ChucK è stato realizzato da Ge Wang sotto la guida di Perry R. Cook.

È distribuito gratuitamente sotto i termini della GNU General Public License (Linux, Microsoft Windows e MacOS X). Su iPhone e iPad, ChiP (ChucK for iPhone) è distribuito sotto una licenza limitata e non open source, e non è disponibile al pubblico.

## Caratteristiche del linguaggio

ChucK è un linguaggio di programmazione orientato agli oggetti simile al linguaggio C, con tipizzazione forte.

ChucK si distingue per le seguenti caratteristiche:

* Supporto per la sintesi audio in tempo reale
* Potente e semplice modello di programmazione concorrente
* Meccanismo di sincronizzazione che permette il controllo di eventi e processi a velocità diverse
* Modello di sincronizzazione definito strongly-timed
* Compilazione dinamica dei programmi in bytecode da parte della virtual machine
* Un ambiente runtime che supporta la programmazione on-the-fly
* L'operatore ChucK (=>), utilizzato per connettere UGens (unit generators), assegnazioni di variabili, etc.

Le librerie standard supportano:

* MIDI input e output
* Open Sound Control
* Synthesis Toolkit

## Esempi

Il seguente è un semplice programma che genera una melodia random, utilizzando un oscillatore sinusoidale:

## Utilizzo

ChucK è stato utilizzato dalla Princeton Laptop Orchestra (PLOrk) e per lo sviluppo di alcune applicazioni della compagnia americana Smule, tra cui il simulatore di ocarina PLOrk organizers attribute some of the uniqueness of their performances to the live coding they can perform with ChucK..

