The standard set! form assigns a value to a
single global or local variable. Multiple variables can be assigned at
once using set!-values:
(set!-values (variable ) expr)
The number of values returned by expr must match the number of
variables provided.
The variables can be any mixture of global and local variables. Assignments are performed sequentially from the first variable to the last. If an error occurs in one of the assignments (perhaps because a global variable is a constant or is not yet bound), then the assignments for the preceding variables will have already completed, but assignments for the remaining variables will never complete.