ScalaCollider is a SuperCollider client for the Scala language. It is ©opyright 2008-2010 by Hanns Holger Rutz. All rights reserved. ScalaCollider is released under the GNU General Public License and comes with absolutely no warranties. To contact the author, send an email to contact at sciss.de
ScalaCollider currently compiles against Scala 2.8.0. It requires Java 1.6 and SuperCollider 3.3.1+. It depends on ScalaOSC ( github.com/Sciss/ScalaOSC ) and ScalaAudioFile ( github.com/Sciss/ScalaAudioFile )
The repository contains a project file for Intellij IDEA 9 CE, and project files for sbt. Targets for sbt:
clean
compile
doc
package
demo
The easiest way to install ScalaOSC and ScalaAudioFile is to go into their respective git repository clones, and then for each execute
$ sbt publish-local
Afterwards, go back into the clone of the ScalaCollider git repository, and simply run
$ sbt update
which should find ScalaOSC and ScalaAudioFile in your local Ivy repository.
The demo target starts a REPL and executes the file console-startup.txt
which by default imports the necessary packages, creates a server-options builder bound to so
and defines a boot
method. make sure that so.programPath
is set correctly:
scala> so.programPath = "/to/my/scsynth"
You might omit this, as ScalaCollider will by default read the environment variable SC_HOME
. Environment variables are stored depending on your operating system. On OS X, if you use the app-bundle of ScalaCollider-Swing, you can access them from the terminal:
$ touch ~/.MacOSX/environment.plist $ open ~/.MacOSX/environment.plist
On the other hand, if you run ScalaCollider from a Bash terminal, you instead edit ~/.bash_profile
. The entry is something like export SC_HOME=/path/to/folder-of-scsynth
. On linux, the environment variables probably go in ~/.profile
.
Finally, to boot the server:
scala> boot
Please refer to ExampleCmd.txt
for some example code. There is also an introductory video for the Swing frontend at www.screencast.com/t/YjUwNDZjMT
The current version can be downloaded from github.com/Sciss/ScalaCollider