From: Russ Cox
-As a special case, if the return parameters of a function or method
+As a special case, if the return values of a function or method
g are equal in number and individually
assignable to the parameters of another function or method
f, then the call f(g(parameters_of_g))
will invoke f after binding the return values of
g to the parameters of f in order. The call
-of f must contain no parameters other than the call of g.
+of f must contain no parameters other than the call of g,
+and g must have at least one return value.
If f has a final ... parameter, it is
assigned the return values of g that remain after
assignment of regular parameters.