TidalCycles
| TidalCycles | |
|---|---|
| Developer(s) | Alex McLean, others | 
| Initial release | 2009 | 
| Stable release | 1.10.0
   / 8 June 2025 | 
| Repository | https://codeberg.org/uzu/tidal/ | 
| Written in | Haskell | 
| Operating system | Linux, macOS, Windows | 
| Type | Live coding environment, algorave | 
| License | GPLv3 | 
| Website | tidalcycles | 
TidalCycles (also known as Tidal) is a live coding environment which is designed for improvising and composing music. Technically, it is a domain-specific language embedded in the functional programming language Haskell, and is focused on the generating and manipulating audiovisual patterns. It was originally designed for heavily percussive and polyrhythmic grid-based music, but it now uses a flexible and functional reactive representation for patterns, by using rational time. Therefore, Tidal may be applied to a wide range of musical styles, although its cyclic approach to time means that it affords use in repetitive styles such as algorave.