Hmmm, I notice the ANS says this about the VALUES type specifier:

  This type specifier can be used only as the value-type in a function type specifier or a the special form

I consider this to be a flaw in the ANS.  The CHECK-TYPE macro takes a _place_ as its first subform, and _place_ is defined in the glossary in terms of _generalized reference_ which in 5.1.1 contains text mentioning values plural in a couple places, e.g.

  the ultimate result of evaluating setf is the value or values being stored.

I think during the proofreading of the many ANS drafts no one except me ever checked this issue for consistency, and I did it 21 years too late.

If god had intended standards to be such precious things, he wouldn't have made so many of them.


On Sun, Sep 22, 2013 at 5:45 PM, Steve Haflich <shaflich@gmail.com> wrote:
On Sun, Sep 22, 2013 at 1:18 PM, Scott McKay <swmckay@gmail.com> wrote:
It's sad that this conses...

A challenge exercise for students: 

If an implementation can stack-cons a &rest list, no heap consing is necessary.

Hint: multiple-value-call