You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 10, 2019. It is now read-only.
This is a rough list of all of the various functions found in the TidalCycles source in the 0.9 branch. More changes were added after this list was generated.
This includes some notes about functions if I could figure out what they did.
It's a combination of functions that are part of the everyday DSL and also internal functions that wouldn't normally be used. We need to decide what should be documented on the website and what does not need to be documented on the website.
add in somewhere that ‘.’ is now an alias for ‘[]’ for grouping
show -> displays text representing event values in first cycle of pattern
showTime -> converts a ratio into a readable string
showArc -> converts a time arc into a readable string
showEvent -> converts an event into readable string
pure -> pure a -> returns a pattern with one event of value “a” with a duration of one cycle and repeats each cycle
mempty -> synonym for silence
mappend -> synonym for overlay
return -> synonym for pure
unwrap -> (need a definition)
atom -> synonym for pure
silence -> returns an empty pattern
withQueryArc -> applies a function to the arc values passed to the original pattern
withQueryTime -> applies a function to the start and end time of the arc passed to the original pattern
withResultArc -> applies a function to the arc values in the events returned from the original pattern
withResultTime -> applies a function to the start and end times of the arc values in the events from the original pattern
overlay -> combines two patterns, events are combined over time, same as operator ‘<>’
splitAtSam -> ?
listToPat -> turns a list of values into a Pattern
maybeListToPat -> same as listToPat, but allows optional values so that Nothing results in gaps in the pattern
scan -> creates a pattern with successive runs
densityGap -> similar to density, but maintains cyclic alignment so that the events are squashed into the beginning of the cycle
whenT -> ?
playWhen -> ?
playFor -> ?
sig -> ?
sinewave/sine -> pattern of continuous Double values from -1 to 1
sinerat/ratsine -> same as sine wave, but returns Rational values
sinewave1/sine1 -> same as sinewave but returns values from 0 to 1
sinerat1 -> save as sinewave1 but with Rational values
sineAmp1 -> returns values from sinewave1 but with an added offset
sawwave/saw -> same as sinewave, but a saw pattern
sawrat -> same as sawwave, but returns Rational values
sawwave1/saw1 -> same as sawwave but values from 0 to 1
sawrat1 -> same as sawwave1 but Rational values
triwave/tri -> same as sine wave, but a triangular wave pattern
trirat -> same as triwave but Rational values
triwave1/tri1 -> same as triwave but values from 0 to 1
trirat1 -> same as triwave1 but Rational values
squarewave/square -> same as sine wave but with a square wave pattern
squarewave1/square1 -> same as square wave but values from 0 to 1
envL -> returns a pattern that is a linear interpolation between 0 and 1 for one cycle, then stays at 1
envLR -> reverse of envL
envEq -> “equal power” pattern
envEqR -> envEq in reverse
transition? fadeOut -> fades out a pattern
transition? fadeOut’ -> fades out a pattern providing a time from which the fade starts
transition? fadeIn -> opposite of fadeOut
transition? fadeIn’ -> fades in over a period of cycles
filterValues -> ?
filterOnsets -> filters out events that have had their onsets cut off ??
filterStartInRange -> filters out events that have onsets within a given range ??
filterOnsetsInRange -> combination of filterOnsets and filterStartInRange ???
seqToRelOnsetDeltas -> samples some events from a pattern returning a list of onsets relative to the given arc, durations, and values ???
segment -> ?
segment’ -> ?
split -> ?
points -> ?
groupByTime -> ?
timeToRand -> ?
unDegradeBy -> opposite of degradeBy?
somecyclesBy -> cycle by cycle version of sometimesBy
somecycles -> synonym for: somecyclesBy 0.5
splitQueries -> ensures that queries don’t span arcs
compress -> ??
sliceArc -> ??
revArc -> ??
e -> bjorklund patterns
e’ -> ??
index -> ??
prrw -> ??
prr -> ??
preplace/prep -> need a good definition
preplace1 -> ??
preplaceWith/prw -> ??
preplaceWith1/prw1 -> ??
<~> -> operator ??
protate/prot -> rotates a pattern N beats to the left over M cycles
prot1 -> protate 1
<<~ -> operator rotates a pattern to the left by one retaining timing, so rests are retained
~>> -> operator rotates to the right
discretize -> samples a pattern at the rate of N events per cycle.. turn a continuous pattern into a discrete pattern
permstep -> ??
struct -> ??
substruct -> ??
parseLMRule -> ??
parseLMRule’ -> ??
lindenmayer -> ??
unwrap’ -> ??
enclosingArc -> ??
stretch -> ??
runWith -> ??
runWith’ -> ??
inside -> ??
outside -> ??
loopFirst -> ??
timeLoop -> ??
seqPLoop -> ??
toScale’ -> takes a list of notes within a scale and turns them into note numbers
toScale -> scale of 12 notes per octave
swingBy -> divides a cycle into N slices and delays the notes in the second half of the slice by M fraction of a slice
swing -> swingBy (1%3)
stutter -> stutters a pattern
echo -> stutter 2
triple -> stutter 3
quad -> stutter 4
double -> echo
juxcut -> ??
samples -> ?? but is this really in use anymore?
samples’ -> ??
spread -> ??
sawwave4 -> multiplies sawwave1 by 4
sinewave4 -> multiples sinewave1 by 4
rand4 -> multiplies rand by 4
stackwith -> ?
chopArc -> ?
en -> ?
step -> ? (step sequencing??)
steps -> ??
step’ -> ??
off -> superimposes a time offset
offadd -> superimposes a time offset and adds to the pattern
ghost’ -> general ghost/echo sounding thing
ghost -> defaults an eighth second ghosting
ghost’’ -> extra ghosting
slice -> ??
randslice -> ??
loopAt -> makes a sample fit a given number of cycles
operators -> pending PR from bgold for an operator page
time functions
sam
nextSam
cyclePos
isIn
arcCycles
arcCycles’
subArc
mapArc
mapCycle
mirrorArc
eventStart
eventOnset
eventOffset
eventArc
midPoint
hasOnset
hasOffset
onsetIn
offsetIn
new ->
shuffle
scramble
cycleChoose
pick
metronome
compositions
append (and append’)
cat -> equivalent of append but with list of patterns
grp yes,
although this is one of the only functions usin raw params not synth function cutoff_p not cutoff
make' no
actually, since this is the general version of pF, pI and pS for producing params/synths. I'd document only the latter three, since currently we only have Float/Int/String as Value types (and make' would force us to explain what Value is, which would be something that should not directly be explain for using tidal as a DSL)
In the past I've usually ignored functions that don't return Patterns/ParamPatterns - these are almost always "internal" things like arcCycles that I can't imagine ever using live (though maybe I just don't have enough imagination).
There are boatloads of params related to MIDI stuff, but some of them also apply to SuperDirt and I've haphazardly repurposed a few more for particular synths. There's some docs of this within the SuperDirt source itself but it'd be good to make a web page summary.
As I look through I'm actually surprised to note that I think most of the stuff is documented somewhere on the website, but I could be misremembering things...
@lennart: Yes, let's check the functions that we need documentation for, then after we go through this list, we can close this issue and add the function names to @bgold-cosmos's existing issue for new documentation for 0.9. We just need some way to make it clear what functions should have documentation on the website vs just in code, and then a way to keep track of whether or not that documentation has actually been written.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
This is a rough list of all of the various functions found in the TidalCycles source in the 0.9 branch. More changes were added after this list was generated.
This includes some notes about functions if I could figure out what they did.
It's a combination of functions that are part of the everyday DSL and also internal functions that wouldn't normally be used. We need to decide what should be documented on the website and what does not need to be documented on the website.
add in somewhere that ‘.’ is now an alias for ‘[]’ for grouping
show -> displays text representing event values in first cycle of pattern
showTime -> converts a ratio into a readable string
showArc -> converts a time arc into a readable string
showEvent -> converts an event into readable string
pure -> pure a -> returns a pattern with one event of value “a” with a duration of one cycle and repeats each cycle
mempty -> synonym for silence
mappend -> synonym for overlay
return -> synonym for pure
unwrap -> (need a definition)
atom -> synonym for pure
silence -> returns an empty pattern
withQueryArc -> applies a function to the arc values passed to the original pattern
withQueryTime -> applies a function to the start and end time of the arc passed to the original pattern
withResultArc -> applies a function to the arc values in the events returned from the original pattern
withResultTime -> applies a function to the start and end times of the arc values in the events from the original pattern
overlay -> combines two patterns, events are combined over time, same as operator ‘<>’
splitAtSam -> ?
listToPat -> turns a list of values into a Pattern
maybeListToPat -> same as listToPat, but allows optional values so that Nothing results in gaps in the pattern
scan -> creates a pattern with successive runs
densityGap -> similar to density, but maintains cyclic alignment so that the events are squashed into the beginning of the cycle
whenT -> ?
playWhen -> ?
playFor -> ?
sig -> ?
sinewave/sine -> pattern of continuous Double values from -1 to 1
sinerat/ratsine -> same as sine wave, but returns Rational values
sinewave1/sine1 -> same as sinewave but returns values from 0 to 1
sinerat1 -> save as sinewave1 but with Rational values
sineAmp1 -> returns values from sinewave1 but with an added offset
sawwave/saw -> same as sinewave, but a saw pattern
sawrat -> same as sawwave, but returns Rational values
sawwave1/saw1 -> same as sawwave but values from 0 to 1
sawrat1 -> same as sawwave1 but Rational values
triwave/tri -> same as sine wave, but a triangular wave pattern
trirat -> same as triwave but Rational values
triwave1/tri1 -> same as triwave but values from 0 to 1
trirat1 -> same as triwave1 but Rational values
squarewave/square -> same as sine wave but with a square wave pattern
squarewave1/square1 -> same as square wave but values from 0 to 1
envL -> returns a pattern that is a linear interpolation between 0 and 1 for one cycle, then stays at 1
envLR -> reverse of envL
envEq -> “equal power” pattern
envEqR -> envEq in reverse
transition? fadeOut -> fades out a pattern
transition? fadeOut’ -> fades out a pattern providing a time from which the fade starts
transition? fadeIn -> opposite of fadeOut
transition? fadeIn’ -> fades in over a period of cycles
filterValues -> ?
filterOnsets -> filters out events that have had their onsets cut off ??
filterStartInRange -> filters out events that have onsets within a given range ??
filterOnsetsInRange -> combination of filterOnsets and filterStartInRange ???
seqToRelOnsetDeltas -> samples some events from a pattern returning a list of onsets relative to the given arc, durations, and values ???
segment -> ?
segment’ -> ?
split -> ?
points -> ?
groupByTime -> ?
timeToRand -> ?
unDegradeBy -> opposite of degradeBy?
somecyclesBy -> cycle by cycle version of sometimesBy
somecycles -> synonym for: somecyclesBy 0.5
splitQueries -> ensures that queries don’t span arcs
compress -> ??
sliceArc -> ??
revArc -> ??
e -> bjorklund patterns
e’ -> ??
index -> ??
prrw -> ??
prr -> ??
preplace/prep -> need a good definition
preplace1 -> ??
preplaceWith/prw -> ??
preplaceWith1/prw1 -> ??
<~> -> operator ??
protate/prot -> rotates a pattern N beats to the left over M cycles
prot1 -> protate 1
<<~ -> operator rotates a pattern to the left by one retaining timing, so rests are retained
~>> -> operator rotates to the right
discretize -> samples a pattern at the rate of N events per cycle.. turn a continuous pattern into a discrete pattern
permstep -> ??
struct -> ??
substruct -> ??
parseLMRule -> ??
parseLMRule’ -> ??
lindenmayer -> ??
unwrap’ -> ??
enclosingArc -> ??
stretch -> ??
runWith -> ??
runWith’ -> ??
inside -> ??
outside -> ??
loopFirst -> ??
timeLoop -> ??
seqPLoop -> ??
toScale’ -> takes a list of notes within a scale and turns them into note numbers
toScale -> scale of 12 notes per octave
swingBy -> divides a cycle into N slices and delays the notes in the second half of the slice by M fraction of a slice
swing -> swingBy (1%3)
stutter -> stutters a pattern
echo -> stutter 2
triple -> stutter 3
quad -> stutter 4
double -> echo
juxcut -> ??
samples -> ?? but is this really in use anymore?
samples’ -> ??
spread -> ??
sawwave4 -> multiplies sawwave1 by 4
sinewave4 -> multiples sinewave1 by 4
rand4 -> multiplies rand by 4
stackwith -> ?
chopArc -> ?
en -> ?
step -> ? (step sequencing??)
steps -> ??
step’ -> ??
off -> superimposes a time offset
offadd -> superimposes a time offset and adds to the pattern
ghost’ -> general ghost/echo sounding thing
ghost -> defaults an eighth second ghosting
ghost’’ -> extra ghosting
slice -> ??
randslice -> ??
loopAt -> makes a sample fit a given number of cycles
operators -> pending PR from bgold for an operator page
time functions
sam
nextSam
cyclePos
isIn
arcCycles
arcCycles’
subArc
mapArc
mapCycle
mirrorArc
eventStart
eventOnset
eventOffset
eventArc
midPoint
hasOnset
hasOffset
onsetIn
offsetIn
new ->
shuffle
scramble
cycleChoose
pick
metronome
compositions
conditional transformers
pattern transformers
sample transformers
synth params
should we add:
tremolorate and tremolodepth
transitions
utility
do we want to add:
The text was updated successfully, but these errors were encountered: