Because of this, Ruy asks something like "what's the difference between this difference list implementation and just treating it like an ordinary accumulator-passing function with two inputs and one output?"
Frank, with a completely straight face: "Ah, this has a much fancier name."