Skip to content
Tomato-rubato is an easy to use library for live audio programming in Haskell.
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

What is tomato-rubato?

Tomato-rubato is an easy to use library for live audio programming in Haskell. Instant gratification from your speakers by typing into GHCi!

WARNING: This project is still in pre-alpha stage. For adventurers only.

See the project homepage for documentation, examples and so on.

Compilation and Installation



  • The OpenAL bindings for Haskell are used to output sound.

  • To install the tomato-rubato-openal libary, simply type

    cd tomato-rubato-openal && cabal install



  • SuperCollider 3 serves as backend to generate the actual audio. Simply install one of the prepackaged version on your computer and start the server before using tomato-rubato. (Let me know if you have any problems with this step.) The corresponding Haskell bindings are installed by simply typing

    cabal install hsc3-0.9
  • PortMidi is used to read from external MIDI devices. You have to install the C library on your system and then install the corresponding Haskell bindings by typing

    cabal install PortMidi
  • To build the tomato-rubato library, simply type

    cd tomato-rubato && cabal configure && cabal build


Send me your examples, bindings, problems, suggestions, etc!

Something went wrong with that request. Please try again.