My apologies!
After reading the docs again that's the expected functionality.
"the rest parameter, if any, takes up an argument slot just like any other
argument"

But still, I think it'd be a neat future to behave like I had assumed.

On Fri, 30 Jul 2021 at 16:55, Christos Vagias <[email protected]>
wrote:

> Hi Bil,
>
> I think I've stumbled upon a bug in define*
>
> (define* (foo a b :rest rest (c #f) (d #f))
>   (format #f "a=~A b=~A c=~A d=~A rest=~A"
>  a b c d rest))
>
> (foo 1 2 3 4)
> returns "a=1 b=2 c=4 d=#f rest=(3 4)"
>
> but, in the returned string, c should be #f
>
_______________________________________________
Cmdist mailing list
[email protected]
https://cm-mail.stanford.edu/mailman/listinfo/cmdist

Reply via email to