What it is: ChucK is a general-purpose programming language, intended for real-time audio synthesis and graphics/multimedia programming.It introduces a truly concurrent programming model that embeds timing directly in the program flow (we call this strongly-timed). Other potentially useful features include the ability to write/change programs on-the-fly.
Who it is for: Audio/multimedia researchers, developers, composers, and performers.
- MacOS X (CoreAudio)
- Linux (ALSA/OSS/Jack)
- Windows/also Cygwin (DirectSound)
ChucK's programming model provides programmers direct, precise, and readable control over time, durations, rates, and just about anything else involving time. This makes ChucK a potentially fun and highly flexible tool for describing, designing, and implementing sound synthesis and music-making at both low and high levels.
On-the-fly programming is a style of programming in which the programmer/performer/composer augments and modifies the program while it is running, without stopping or restarting, in order to assert expressive, programmable control for performance, composition, and experimentation at run-time. Because of the fundamental powers of programming languages, we believe the technical and aesthetic aspects of on-the-fly programming are worth exploring.