Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Programming Language

ChucK

Object-Oriented Language

ChucK is a programming language for making sound. It is concurrent and strongly timed, meaning that the passage of time is something the programmer controls directly, which suits real-time audio synthesis, composition and performance. It was created and chiefly designed by Ge Wang as a graduate student working with Perry R. Cook. The syntax is loosely C-like and object-oriented with strong static typing, and it is built around the ChucK operator, written as an arrow, which sends data from left to right through a chain of sound generators. Programs are compiled to bytecode for the ChucK virtual machine, and the system supports live coding, so code can be added, changed or removed while a program is running. Its libraries cover MIDI, Open Sound Control, unit generators such as oscillators and filters, and file and serial input and output. It has been used by the Princeton Laptop Orchestra and in Smule applications, and is distributed under the GNU General Public License.

Facts
Paradigm
Object-oriented 1
Execution Model
Bytecode VM 1
Connections

Follows Typing Discipline

Source ChucK (Wikipedia)
Source ChucK (Wikipedia)
Sources
1. ChucK (Wikipedia)
  • Language features
    Programs are dynamically compiled to ChucK virtual machine bytecode.
  • Language features, paradigm
    The ChucK programming language is a loosely C-like object-oriented language, with strong static typing.
  • Follows Typing Discipline: Static Typing, Language features, static typing
    The ChucK programming language is a loosely C-like object-oriented language, with strong static typing.
  • Follows Typing Discipline: Strong Typing, Language features, strong typing
    The ChucK programming language is a loosely C-like object-oriented language, with strong static typing.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.