We present work-in-progress on two projects whose combination enables live coding music in Haskell: cnoidal, a library for representing and transforming music, and HyperHaskell, a Haskell interpreter with a worksheet interface and graphical output. The library represents music as a collection of time intervals tagged with values, a data structure known as temporal media. Parametric polymorphism suggests various functor instances, like Applicative Functor, which we find to be highly useful for live coding. However, a lawful Monad instance can only be defined for some variants of the data type.
We stress that these projects are not a specialized music environment, instead we compose a library with a general purpose interpreter.