Euclidian

Functions that apply a boolean mask on a pattern. This mask will either leave the pattern as is or replace some values by silences. The euclidian rhythm generator lives in this category. I know that you were looking for it :)

Function name  Arguments Description Return type
euclid [pattern], pulses, steps, rotation Euclidian rhythm [pattern]
eu // // //
neuclid // Inverse euclidian rhythm //
neu // // //
mask [pattern], [mask] Boolean mask applied on a list [pattern]
vanish percentage, [pattern] Remove x% of elements from pattern [pattern]

Example of application:

@swim
def demo(p=1/8, i=0):
    D('(eu drum 5 8)', i=i)
    D('(eu [cp linnhats] 3 8)', i=i)
    D('(neu voodoo:rand*5  5 16)', i=i, r=0.5)
    again(demo, p=1/4, i=i+1)

You will notice that you can now generate some interesting rhythm by combining the euclidian rhythms with rate and div. The quirks of the Sardine pattern system will also generate very surprising rhythms, especially when playing with lists of audio samples.