Chris Marusich <cmmarus...@gmail.com> writes: > I've noticed that when one passes multiple values as a single argument > to a procedure, only the first value gets used. Is this expected?
Yes. > However, I did find the following information in R6RS (Section 5.8: > "Multiple return values"), which seems possibly relevant: > > "Not all continuations accept any number of values. For example, a > continuation that accepts the argument to a procedure call is guaranteed > to accept exactly one value. The effect of passing some other number of > values to such a continuation is unspecified." Guile resolves this unspecification by passing the first value. Here is a proposal that tries normalizing the special case of passing zero values as well: <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=17474> This "use only the first value in non-multiple-value accepting contexts" is similar to what Lua uses in the context of "..." argument lists. -- David Kastrup