The expression is evaluated, and the formals are bound to
the return values in the same way that the formals in a lambda
expression are matched to the arguments in a procedure call.
(define-values (q r) (floor/ 10 3)) (list q r) ⇒ (3 1) (define-values (x . y) (values 1 2 3)) x ⇒ 1 y ⇒ (2 3) (define-values x (values 1 2 3)) x ⇒ (1 2 3)