musicality.compositions.2021-01-03-14
E
(E k n)
Evenly distribute K beats among N subdivisions
map-pc-sets-over-ints
(map-pc-sets-over-ints carrier prog)
generates a chord progression based on a carrier scale
of ints and seq of tuples of [1-based-root pc-set]
pc-set->ints
(pc-set->ints pc-set-id rot n0)(pc-set->ints pc-set-id n0)
given either the index of a pc-set or a keyword of a common pc-set such as :maj, rotate the pc-set by rot.
if a :common-rotation exists for the pc-set, initially rotate accordingly then apply rot
play-random-chord
(play-random-chord pc-count n0)
play-random-scale
(play-random-scale pc-count n0)
rand-pc-set
(rand-pc-set pc-count n0)
returns a map containing 
:pc-set - record from pc-sets
:ints - result of applying pc-set to n0
recombine
(recombine a b)(recombine a b c)(recombine a b c & more)
Distribute tail: [[1] [1] [1] [0] [0]] -> [[1 0] [1 0] [1]]
send-chord
(send-chord coll beat sub-beat)(send-chord coll beat)(send-chord coll)
send-scale
(send-scale coll)
split-seq
(split-seq s)
Extract a tail of all same elements: [1 1 0 0 0] -> [[1 1] [0 0 0]]