Tomato-rubato is an easy to use library for live audio programming in Haskell.
Haskell

README.md

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

tomato-rubato-openal.cabal

Prerequisites:

  • 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
    

tomato-rubato.cabal

Prerequisites:

  • 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
    

Contribute

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