What happens in the following common-lisp Code with number 2 and 3:
"(values (values 1 2 3) 4 5)"
Output is: 1 4 5.
Someone in another forum explain to me, that "the values 2 and 3 are effectively discarded because the outer "(values ...)" call, only cares about first value of the inner "(values 1 2 3)" call.
My question is, why does this happen?