This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home. For a version of this page that may be more recent, see MultipleValuesCowan in WG2's repo for R7RS-large.

Multiple­Values­Cowan

cowan
2011-08-10 11:32:22
7history
source

Multiple values procedure

(call-with-all-values producer ... consumer)

Invoke the producers and pass all values returned by them in order to consumer. This extends call-with-values by allowing more than one producer. Equivalent to Common Lisp's multiple-value-call.

Multiple values syntax

(set!-values (lambda-list) expression)

Assigns the values returned by expression to the variables in lambda-list. Returns undefined values. Equivalent to Common Lisp's multiple-variable-setq.

(define-values (var ...) expr)

Defines the vars and binds them to the values of expr. May be moved to WG1 language.