Or Supercollider! Which you can interact with with my "vivid" libarary or the "hsc3" library (both on hackage).

In vivid 0.1 (0.2 is coming soon but not out yet), you'd do something like 

playTune :: Tune -> IO ()
playTune (Tune ts) = mapM_ playTone ts

playTone :: Tone -> IO ()
playTone (Tone note dur) = do
   s <- play $ do
      s0 <- sinOsc (Freq $ midiCPS note)
      out 0 [s0, s0]
   sleep dur
   free s

(There may be a typo here; writing it on my phone)

I'm happy to answer any questions, too.

tom



El Sep 15, 2015, a las 14:36, Brandon Allbery <allbery.b@gmail.com> escribió:

On Tue, Sep 15, 2015 at 2:23 PM, Mike Meyer <mwm@mired.org> wrote:
I'm looking for advice on generating sounds from a desktop app. I'm perfectly happy if it doesn't have a GUI, but runs from the command line.

http://hackage.haskell.org/package/csound-expression was recently updated (and announced in here).

--
brandon s allbery kf8nh                               sine nomine associates
allbery.b@gmail.com                                  ballbery@sinenomine.net
unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe