Kyma is a visual programming language for sound design used by musicians, researchers, and sound designers. In Kyma, a user programs a multiprocessor digital signal processor (DSP) by graphically connecting modules on the display of a Macintosh or Windows computer.
Kyma has characteristics of both object-oriented and functional programming languages. The basic unit in Kyma is the Sound object, not the note of traditional music notation. A Sound is defined as:
A Sound atom is a source of audio (like a microphone input or a noise generator), a unary transform modifies its argument (for example, a low-pass filter might take a running average of its input), and an n-ary transform combines two or more Sounds (a Mixer, for example, is defined as the sum of its inputs).
The first version of Kyma, which computed digital audio samples on a Macintosh 512K was written in the Smalltalk programming language in 1986 by Carla Scaletti in Champaign, Illinois. In May 1987, Scaletti had partitioned Kyma into graphics and sound generation engines and ported the sound generation code to a digital signal processor called the Platypus designed by Lippold Haken and Kurt J. Hebel of the CERL Sound Group.[2]
In 1987, Scaletti presented a paper on Kyma and demonstrated live digital sound generation on the Platypus at the International Computer Music Conference where it was identified by electronic synthesis pioneer Bob Moog as a technology to watch in his conference report for Keyboard Magazine:
One new language that acknowledges no distinction between sound synthesis and composition is Kyma, a music composition language for the Macintosh that views all elements in a piece of music, from the structure of a single sound to the structure of the entire composition, as objects to be composed.[3]
When the University of Illinois at Urbana-Champaign eliminated the funding for the PLATO laboratory in 1989, Scaletti and Hebel formed Symbolic Sound Corporation to continue developing Kyma and digital audio signal processing hardware.