From the Listener: ? gen-chord3, chord-intervals: ((3 3 3 3) (3 5 7 9) (2 5 7 11)) cycle: nil relative: nil ambitus: piano seed: 254965   Since the function have a seed you should get different chords unless you set the seed value.   (gen-chord3 '(c4 eb4 g4) '((3 3 3 3) (3 5 7 9) (2 5 7 11)) :seed 42) Gives you the same chords all the time.