How does one smooth value changes in a list, say a list of (X,Y) positions?

I recall writing a Javascript patch to do this in QC using math for the standard QC Interpolation curves.

Is it possible to do this with a Process List node and have the node run through all the values, all the smooth nodes are stateful, so I’m thinking I need to do it with an unstateful node like Curve which can perform the calculation each frame on successive point data for start position, end position, time, transition duration… does this sound right? Or can it be done with one of the Smooth patches or Crossfade inside a loop?