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
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
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..
See it in action