or and values

"Fabrizio Morbini" <[email protected]> Tue, 17 Oct 2006 11:32:35 -0400
Newsgroups gmane.lisp.allegro
Message-ID <[email protected]>
Hi, i found rather unintuitive the behaviour of OR with values. Why is
it the case that only if the values form is the last then all the
values are returned?

For example, given the code:
(or (values 2 3) nil) i would like to see as returned values 2 and 3,
but i get only 2 as specified in the HyperSpecs.

Is there a way to get all the values of the first form returning a non
nil primary value? (without using conditionals and local variables)

Thanks, Fabrizio.