TidalCycles 0.9.8 newly out! It replaces 0.9.7 which didn’t work well with many haskell versions. Here’s a quick run through the changes since 0.9.6. Any problems or questions, join us on the #tidal channel on talk.lurk.org, or the tidal list on we.lurk.org.
How to update
If you use cabal (rather than stack) to install, it’s just a matter of running
cabal update then
cabal install tidal from the commandline. I’m not clear on the best way to update using stack (as tidal hasn’t yet updated on stackage LTS), if you know please leave a comment!
New Bjorklund (aka Euclidean) functions
einv, which fills the “blanks” left by
e. For example,
e 3 8 "x" gives
"x ~ ~ x ~ ~ x ~", whereas
einv 3 8 "x" gives
"~ x x ~ x x ~ x".
Another new function
efull which takes two patterns rather than one, combining
e n k on the first with
einv n k on the second. For example,
efull 3 8 "2" "1" gives
"2 1 1 2 1 1 2 1"
Yet another function
distrib, which is similar to
e, but takes a list of numbers.
distrib [5,8] "x" is the same as
e 5 8 "x", but
distrib [2,5,8] will do something rather freaky.. It will take the
(5,8) pattern as a starting point (which is
"x ~ x x ~ x x ~") and then attempt to distribute two events evenly over those five xs as though they were contiguous, creating
"x ~ ~ x ~ ~ ~ ~"). Basically, give it a list of numbers which increase in value and you’ll find some interesting off-kilter rhythms.
d1 $ distrib [5,7,16] $ sound "bd:7"
Now you can give
/ subpatterns in the parser. For example
"[a b]*[2 3]" would be the same as
"[a b] [b a b]" (i.e. the first half of
"a b a b", which is the pattern at twice the speed, and the second half of
"a b a b b a b", which is the pattern at three times the speed).
Floating point notes
Now notes are floating point. This means that you can do things like
d1 $ s "drum*8" # n (sine * 8). It also means that for some synthesised sounds you can play between the notes (microtones?), e.g.
d1 $ sound "supermandolin*8" # n sine. There have been other adjustments in this area, so previously where you had to do fiddly conversions between integers and floats, you no longer have to.
Tidal now supports the latest version of ghc (8.4.1). You should probably be running at least 7.10.3 by now but older versions may still work.
Exciting SuperDirt update to follow soonish, including new MIDI support.