This is a non-interpolating version of Nick Collins's Gendy1 UGen. My idea was to use it as a kind of sample and hold jitter UGen. It works quite well in that context, and is not a bad sound generator in its own right.
WARNING: if you have lots of CPs and you have fast frequencies, the CPU cost goes up a lot because a new CP move happens every sample!
Gendy5.ar(ampdist: 1, durdist: 1, adparam: 1.0, ddparam: 1.0, minfreq: 440, maxfreq: 660, ampscale: 0.5, durscale: 0.5, initCPs: 12, knum, mul: 1.0, add: 0.0)
Gendy5.kr(ampdist: 1, durdist: 1, adparam: 1.0, ddparam: 1.0, minfreq: 20, maxfreq: 1000, ampscale: 0.5, durscale: 0.5, initCPs: 12, knum, mul: 1.0, add: 0.0)