Hacker News new | ask | show | jobs
by pfeyz 5180 days ago
I feel like it's worth pointing out the distinction between SuperCollider the programming language and SuperCollider the audio synthesis server. The audio server is stand-alone and can be controlled via Open Sound Control. The language is a music DSL that abstracts over the OSC messages and acts as a client to the synth server. Overtone is another client to the synth server, but I'm not sure how much it's following the SuperCollider language. Also, there's an scruby project https://github.com/maca/scruby .
1 comments

You're right, and in Overtone we haven't really tried to mirror SCLang at all. The DSP core of scsynth is a great piece of software with many years of testing, debugging, and extension, so it's wonderful that we can leverage this externally by just sending OSC. Of course we want to pull in any good ideas we find from the sc class library or any other music system, but generally we have been working on creating an expressive synthesis language that clearly communicates what is being produced. In SCLang there are many syntactic tricks and shortcuts which allow you to create very terse definitions, but they are often to the detriment of readability. With Clojure's lazy sequences we can easily model many interesting types of generative musical structures, and with easy access to the JVM ecosystem of libraries we can now control our musical processes with external tools or devices, visualize them with nice graphics, auralize external phenomena (e.g. people have hooked into automated build/test systems), etc., far easier than in SClang.
Is it possible to use overtone to send midi to an external hardware device?
Absolutely. We have a built in midi library for communicating with hardware midi devices.