[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Stray Birds



   Date: Tue, 2 Mar 93 15:49:10 -0800
   From: Morry Katz <katz@quilty.Stanford.EDU>
   Reply-To: katz@cs.stanford.edu

   The above is not the agreement on multiple values as I understood it.
   I distinctly remember us stating that "it is an error" to supply too
   many or too few values.  Since it is not required that an
   implementation "signal an error", the above implementation is correct,
   albeit probably not desirable.

I don't understand.

Are any of the following illegal?

((lambda a-list-of-all-the-arguments ...) 1 2 3 4)

((lambda a-list-of-all-the-arguments ...) 1 2 3 4 6 7 8 9)

No, because the procedure generated by 
(lambda a-list-of-all-the-arguments ...)
takes _any_ number of arguments.

If so, how can you pass it the wrong number?

I don't see why

(call-with-values (lambda () ...)
  (lambda a-list-of-all-the-arguments ...))

should be illegal (unless any of the ... are).