This procedure's first argument values are applied as argument list to the second argument.
The call: (call-with-values prod cons)
is equivalent to: (apply-with-values (prod) cons).
(However, the latter isn't expressible in Scheme because you can't
bind multiple values to an argument or variable in Scheme.
The Kawa compiler supports it internally, due to its use by XQuery.)