TidalCycles

From Wikipedia, the free encyclopedia

Template:Short description

Page Module:Infobox/styles.css has no content.

TidalCycles
[[Programmer|DeveloperTemplate:Pluralize from text]]Alex McLean, others
Initial release2009; 17 years ago (2009)
Template:Infobox software/simple
Written inHaskell
Operating systemLinux, macOS, Windows
TypeLive coding environment, algorave
LicenseGPLv3
Websitetidalcycles.org
Repositoryhttps://codeberg.org/uzu/tidal/

Script error: No such module "Check for conflicting parameters".

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 generating and manipulating audiovisual patterns.[1][2][3] 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.[4] 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.[5]

Background

TidalCycles was created by Alex McLean who also coined the term algorave,[6] and is a domain-specific language embedded in Haskell, which focuses on generating and manipulating audiovisual patterns.[2] Tidal's representation of rhythm is based on metrical cycles,[7] which is inspired by Indian classical music,[8] supporting polyrhythmic and polymetric structures using a flexible, functional reactive representation for patterns, and rational time. This programme doesn't produce sound itself, but via the SuperCollider sound environment through the SuperDirt framework, via MIDI, or Open Sound Control.

Tidal is also used widely in academic research, including representation in music AI,[9][10] as a language in network music,[11] and in electronic literature.[12]

Tidal is widely used at algorave algorithmic dance music events,[13][14] and on high profile music releases.[15][16][17] It has been featured on BBC Radio 3's New Music Show.[18]

Since January 2022, an official port of Tidal's pattern engine has developed into the web-based live coding environment Strudel,[19] created by Felix Roos and Alex McLean.[20]

There are now several other livecoding languages derived from TidalCycles. Those are commonly referred to as uzu languages or uzulangs[21][22]:

  • Weft
  • Strudel
  • Tranquility
  • Kidal
  • Estuary
  • Vortex
  • Piratidal
  • Jaffle
  • Marea.sc
  • Zwirn
  • Modal
  • Godwit

Artists using it

References

Page Template:Reflist/styles.css has no content.

  1. ^ Page Module:Citation/CS1/styles.css has no content.McLean, Alex. "Tidal – Pattern Language for Live Coding of Music". Sound and Music Computing. Archived from the original on 2017-10-15. Retrieved 22 May 2015.
  2. ^ a b Page Module:Citation/CS1/styles.css has no content.Bick, Emily (March 2016). "Pattern Recognition". The Wire. No. 385. pp. 16–17.
  3. ^ Page Module:Citation/CS1/styles.css has no content."TidalCycles, free live coding environment for music, turns 1.0". CDM Create Digital Music. 2018-12-18. Retrieved 2018-12-27.
  4. ^ Page Module:Citation/CS1/styles.css has no content.McLean, Alex (2014). "Making programming languages to dance to". Proceedings of the 2nd ACM SIGPLAN international workshop on Functional art, music, modeling & design. FARM '14. New York, New York, USA: ACM. pp. 63–70. doi:10.1145/2633638.2633647. ISBN 978-1-4503-3039-8. S2CID 1190832.
  5. ^ Page Module:Citation/CS1/styles.css has no content.Mollan, Cherylann (2019-02-10). "Grooving to Algo'rhythms'". The Asian Age. Retrieved 2019-03-01.
  6. ^ Page Module:Citation/CS1/styles.css has no content."Opposing forces: Rian Treanor explains how he creates intense yet subtle club music". Mixmag. 2019-03-05. Retrieved 2022-01-20.
  7. ^ Page Module:Citation/CS1/styles.css has no content.Sinow, Catherine (2020-09-26). "Deep Algebra for Deep Beats: The Beautiful Sounds of Musical Programming". Ars Technica. Retrieved 2022-01-19.
  8. ^ Page Module:Citation/CS1/styles.css has no content."Type and jive". The Week. Retrieved 2022-01-19.
  9. ^ Page Module:Citation/CS1/styles.css has no content.Stewart, Jeremy; Lawson, Shawn; Hodnick, Mike; Gold, Ben (2020-02-05). "Cibo v2: Realtime Livecoding A.I. Agent". Proceedings of the 2020 International Conference on Live Coding. Limerick, Ireland. doi:10.5281/zenodo.3939174.
  10. ^ Page Module:Citation/CS1/styles.css has no content.Miranda, Eduardo Reck (2021-07-02). Handbook of Artificial Intelligence for Music: Foundations, Advanced Approaches, and Developments for Creativity. Springer Nature. ISBN 978-3-030-72116-9.
  11. ^ Page Module:Citation/CS1/styles.css has no content.Ogborn, David; Beverley, Jamie; Navarro, Luis del Angel; Tsabary, Eldad; McLean, Alex (2017). Estuary: Browser-based Collaborative Projectional Live Coding of Musical Patterns (PDF). International Conference on Live Coding. S2CID 195836605. Retrieved January 23, 2022.
  12. ^ Page Module:Citation/CS1/styles.css has no content.Rodriguez, Jessica; Franco, Alejandro; MacLean, Alexander; McLean, Alex; Navarro, Luis; Ogborn, David (2020-07-16). "Electronic Literature Live Coding Jam/Workshop". Electronic Literature Organization Conference 2020.
  13. ^ Page Module:Citation/CS1/styles.css has no content.Mollan, Cherylann (2019-02-10). "Grooving to Algo'rhythms'". The Asian Age. Retrieved 2019-03-01.
  14. ^ Page Module:Citation/CS1/styles.css has no content.Calore, Michael. "DJs of the Future Don't Spin Records—They Write Code". Wired. ISSN 1059-1028. Retrieved 2022-01-19.
  15. ^ a b Page Module:Citation/CS1/styles.css has no content.Crilly, Lyle (2020-11-10). "Richard Devine: A Systic Approach to Acid". Roland Articles. Retrieved 2022-01-19.
  16. ^ a b Page Module:Citation/CS1/styles.css has no content.Mullen, Mullen (26 February 2020). "Impossible Forms: Beatrice Dilon". Inverted Audio.
  17. ^ a b Page Module:Citation/CS1/styles.css has no content.Wilson, Scott (2019-02-08). "PC Music's Lil Data to release anthology of live-coded tracks". Fact Magazine. Retrieved 2022-01-19.
  18. ^ Page Module:Citation/CS1/styles.css has no content."New Music Show". BBC Media Centre. 2020-02-02. Retrieved 2022-01-21.
  19. ^ Page Module:Citation/CS1/styles.css has no content.Kirn, Peter (2022-04-12). "Musical, powerful live coding in the browser is here with Strudel - child of Tidal". CDM Create Digital Music. Retrieved 2024-12-19.
  20. ^ Page Module:Citation/CS1/styles.css has no content.Roos, Felix; McLean, Alex (2023-04-18). Strudel: Live Coding Patterns on the Web. International Conference on Live Coding.
  21. ^ Page Module:Citation/CS1/styles.css has no content.Payne, William; Kaney, Matthew. "Demo: Weft: Enabling Tidal on the Web". ACM Digital Library. doi:10.1145/3759162.3759640. Retrieved 2026-03-23.
  22. ^ Page Module:Citation/CS1/styles.css has no content."Uzu language directory". Uzu. 2026-02-27. Retrieved 2026-03-23.
  23. ^ Page Module:Citation/CS1/styles.css has no content.Charli XCX – Vroom Vroom (Lil Data TidalCycles live coding edit), 21 June 2019, retrieved 2022-01-19
  24. ^ Page Module:Citation/CS1/styles.css has no content."Sonic Futures: How Technology is Guiding Electronic Music". FACT Magazine: Transmissions from the underground. 22 October 2019. Retrieved 2022-01-20.
  25. ^ Page Module:Citation/CS1/styles.css has no content.Fact (2020-06-09). "Artist DIY: Digital Selves". Fact Magazine. Retrieved 2022-01-20.
  26. ^ Page Module:Citation/CS1/styles.css has no content."Meet the female coders pushing electronic music into the future". Mixmag. Retrieved 2022-01-20.
  27. ^ Page Module:Citation/CS1/styles.css has no content."Watch the first exclusive live performance of No Man's Sky's soundtrack". PlayStation.Blog. 2017-03-30. Retrieved 2022-01-20.
  28. ^ Page Module:Citation/CS1/styles.css has no content."Deru – Sound and Atmospheres". www.steinberg.net. Retrieved 2022-01-20.
  29. ^ Page Module:Citation/CS1/styles.css has no content."Hsien-Yu Cheng & Tzu-Ni Hung / Abyss Zone". submarine.gallery (in 中文(臺灣)). Retrieved 2023-06-26.

Template:Haskell programming