My notion of "anonymous record", and the need of this kind of "higher-order type", are discussed in the links below,
"Functions can not to return individual items of a record"
"PostgreSQL v9.X have real 'array of record' ?
The first question is about performance: "returns table" have the same performance than "returns record"??
If "yes", the record datatype is somewhat outdated?
The second question/discussion shows a more deeper problem, where perhaps the use of string index in array syntax (something like x['a']) would be a good syntax solution.
Craig Ringer shows another suggestion in the (second) link.
I am new here, I do not know how, but I'm available to help... Can a future version of PostgreSQL implement some solution?
Peter