Pattern language for improvised music
|Version on this page:||0.9.9|
|LTS Haskell 20.23:||1.9.2|
|Stackage Nightly 2023-05-31:||1.9.4|
|Latest on Hackage:||1.9.4|
Maintained by Alex McLean, Mike Hodnick
This version can be pinned in stack with:
Module documentation for 0.9.9
Depends on 13 packages(full list with versions):
base, colour, containers, hashable, hosc, mersenne-random-pure64, mtl, parsec, safe, semigroups, text, time, websockets
Language for live coding of pattern
For documentation, mailing list and more info see here: http://tidal.lurk.org/
(c) Alex McLean and contributors, 2016
Distributed under the terms of the GNU Public license version 3 (or later).
TidalCycles log of changes
notepattern parameter is no longer an alias for
midinote, but an independent parameter for supercollider to handle (in a manner similar to
chordfor chord patterns and
scalePfor scale patterns
npattern parameter is now floating point
hurrywhich both speeds up the sound and the pattern by the given amount.
stripewhich repeats a pattern a given number of times per cycle, with random but contiguous durations.
- Added continuous function
- Turned more pattern transformation parameters into patterns - spread’, striateX, every’, inside, outside, swing
- Added experimental datatype for Xenakis sieves
- Correctly parse negative rationals
breakUpthat finds events that share the same timespan, and spreads them out during that timespan, so for example (breakUp “[bd,sn]”) gets turned into the “bd sn”
fillwhich ‘fills in’ gaps in one pattern with events from another.
..in ranges as quick fix for issue with parsing negative numbers
- Removed overloaded list thingie for now, unsure whether it’s worth the dependency
- The sequence parser can now expand ranges, e.g.
"0-3 4-2"is equivalent to
"[0 1 2 3] [4 3 2]"
- Sequences can now be described using list syntax, for example
sound ["bd", "sn"]is equivalent to
sound "bd sn". They aren’t lists though, so you can’t for example do
sound (["bd", "sn"] ++ ["arpy", "cp"])– but can do
sound (append ["bd", "sn"] ["arpy", "cp"])
- New function
linger (1/4)will only play the first quarter of the given pattern, four times to fill the cycle.
discretisenow takes time value as its first parameter, not a pattern of time, which was causing problems and needs some careful thought.
relalias for the
releaseparameter, to match the
- The start of automatic testing for a holy bug-free future
- Fixed bug that was causing events to double up or get lost,
revwas combined with certain other functions.