—
Amen. I think people new to functional programming are thrown by this, and I think some long time adherents of functional programming have adopted these “factors” as part of the definition.
Definitions change, that’s fine, but the confusion of ideas isn’t good.
Anyway, are there functional data structures widely available to c++? I assume there are. Without them, functional programming has a heavy cost.
Clojure, for one, would not be very attractive without having adopted Bagwell’s data structure concepts.