I had an idea for an explicit syntax for this, that overloads the ... operator:
local tbl = {SixValues()..., 7, 8, 9}
- so that, if the "..." keyword immediately follows an expression that
could resolve to multiple values within a comma separated list, they
are expanded. I can't see any way that this could be ambiguous, but I
haven't thought about it all that much, so maybe I am wrong. It also
kind of makes sense as "..." already means "accomodate a variable
number of values", but in this case it would mean a variable number of
*return* values rather than arguments.
-Duncan