SuperCollider is an open source programming language created in 1996.
#404on PLDB | 28Years Old | 4kRepos |
SuperCollider is an environment and programming language originally released in 1996 by James McCartney for real-time audio synthesis and algorithmic composition. Since then it has been evolving into a system used and further developed by both scientists and artists working with sound. It is an efficient and expressive dynamic programming language providing a framework for acoustic research, algorithmic music, interactive programming and live coding. Read more on Wikipedia...
"Hello World".postln;
// Hello World in SuperCollider
"Hello, world!".postln;
WarpPreset {
*new {|path|
if(path.notNil) {
^Object.readArchive(path);
};
^super.new.init();
}
init {
}
save {
Dialog.savePanel({|path|
this.writeArchive(path);
});
}
}
// Factorial function
f = { |x| if(x == 0) { 1 } { f.(x-1) * x } };
Feature | Supported | Example | Token |
---|---|---|---|
Integers | ✓ | // [0-9]+ | |
Floats | ✓ | // [0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]? | |
Hexadecimals | ✓ | // 0x[0-9a-fA-F]+ | |
Strings | ✓ | "Hello world" | " |
Print() Debugging | ✓ | postln | |
Comments | ✓ | // A comment | |
Line Comments | ✓ | // A comment | // |
Semantic Indentation | X |