How Tidal Cycles Relates to Strudel and Other Uzulangs

Tidal Cycles is the original live coding environment for algorithmic patterns, written in Haskell and using SuperCollider for synthesis and MIDI. It inspired an open-source family of similar environments that adopt its model of patterns of time, collectively known as Uzulangs. Strudel is the web-based member of that family. So the relationship is one of lineage: Tidal defines the pattern model, and the Uzulangs — Strudel included — carry that model into other languages and platforms.

What Tidal Cycles itself is

Tidal Cycles (or "Tidal" for short) is a free/open-source live coding environment for algorithmic patterns. Two implementation facts matter for understanding the family:

  • It is written in Haskell.
  • It uses SuperCollider, another open-source tool, for synthesis and MIDI.

Tidal lets you make patterns with code. It includes a language for describing flexible sequences — polyphonic, polyrhythmic, and generative — of sounds, notes, parameters, and other kinds of information. The site's framing is "pattern everything": the pattern language is not limited to musical notes.

What a Uzulang is

Uzulangs are an open-source family of environments that adopt Tidal's model of patterns of time. The key word is model: what carries over between Tidal and its relatives is the underlying way of representing patterns in time, not necessarily the host language or the runtime.

That distinction explains why the family can span very different platforms while still feeling related to anyone who knows Tidal.

Where Strudel fits

Strudel is the web-based environment in the Uzulang family. If you want the Tidal pattern model without a local Haskell-plus-SuperCollider setup, Strudel is the member of the family built for the browser.

Comparing the members

Tidal Cycles Strudel Other Uzulangs
Role Original environment Web-based member of the family Family members adopting Tidal's pattern model
Language Haskell (web environment) Varies
Synthesis/MIDI SuperCollider (web environment) Varies
Pattern model Defines it Adopts it Adopt it
Licensing Free/open source Open source (family) Open source (family)

The table's point is the axis of variation: the pattern model is shared, while language, platform, and audio backend differ.

Who this matters for

  • If you already use Tidal and want to work in a browser, Strudel is the family member to look at.
  • If you are choosing where to start, the decision is mostly about environment: Tidal means a local Haskell/SuperCollider stack; Strudel means the web.
  • If you are building your own tool, the Uzulang family is the reference for adopting Tidal's model of patterns of time rather than inventing a new one.

Tidal is used by a diverse community of musicians for composition, improvisation, and exploration of algorithmic music, and the site points to the Tidal Blog and community pages for following that work.

tidalcycles.org
Live coding environment for making algorithmic patterns