Folks,

Since I'm still having problems with syntax-case and rest arguments, I
have devised the following example which hopefully makes my problem clear:

(define-syntax test
  (lambda (x)
    (syntax-case x ()
      ((_ (name ...) body ...)
       (syntax
        (define (name ...)
          body ...))))))

(test (test-fn #!rest rest)
      (fmt #t rest nl))

(test-fn)

This fails and will throw a bad argument count exception, because it
interprets #!rest as a variable and not a rest arguments keyword. This is
a very annoying problem. Does anyone know a solution to this? Would it
involve making changes to the syntax-case egg?

Thanks,
Mark




_______________________________________________
Chicken-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to