No time to install and code just now, but I’m very excited of playing with this application in my (salaried) work space
TidalCycles (or Tidal for short) is a language for live coding pattern. It allows you to make musical patterns with text, describing sequences and ways of transforming and combining them, exploring complex interactions between simple parts.
To see and hear Tidal in action, check out some videos of performances and demos.
Tidal allows you to express music with very flexible timing, providing a little language for describing patterns as step sequences (which can be polyphonic and polymetric), some generators of continuous patterns (e.g. sinewaves, sawtooths) and a wide range of pattern transformations. Tidal is highly ‘composable’ in that pattern transformations can be easily combined together, allowing you to quickly create complex patterns from simple ingredients.
Tidal does not make sound itself, but is designed for use with the SuperDirt synth, and can control other synths over Open Sound Control or MIDI.
Tidal is embedded in the Haskell language. You don’t have to learn Haskell to learn Tidal, but as you get deeper, it might help to pick up an introduction. You could try Graham Hutton’s “Programming in Haskell”, Miran Lipova?a’s Learn you a Haskell for Great Good. Or, you could try learning just by playing with Tidal..