Representation of Collection, or collection of representations?
It keeps bugging me.
So basically, as long as the language does not have any types:
r (a -> b)
It is a first order language.
A type (r a) -> (r b) is a meta-language function.
So "vfold" is really "for".