Quick suggestion. Could a function called varnames() be added that is like varname() except it returns an array with the names of variables in a list. For example:
function strings varnames(list in)
#Returns an array of strings containing the names of each variable in a list
catch strings ret = strsplit(strsub(varname(in),","," "))
if $error != 0
string errormesage = errmsg($error)
Just a thought.