[gambit-list] syntax-case and keywords
Derrell Piper
ddp at electric-loft.org
Fri Aug 14 14:03:18 EDT 2009
Hi,
I'm porting some Lisp to Scheme and I've run into a problem trying to
use both extended parameter lists (keywords) with syntax-case.
% cat test.scm
(define (s #!key (f "foo") (v #f)) #t)
% gsi test
% gsi -e '(load "~~lib/syntax-case")' test
*** ERROR IN ##call-with-values -- invalid syntax (define (s #!key (f
"foo") (v #f)) #t)
The actual code has both define-syntax and define-macro definitions.
The manual says that define-syntax doesn't support special forms that
are specific to Gambit, so I'm assuming that's the real issue here.
But I'm wondering what the philosophy of Gambit is with respect to
macros, given that define-syntax was specified for both R4RS and
R5RS. Chicken 4 deprecated the use of define-macro and now forces one
to use define-syntax. Which is ironically why I have define-syntax
forms, in that I ported this code to Chicken first. Should I just
rewrite them as define-macro? For all it's faults, CL only has one
macro form. :-)
More information about the Gambit-list
mailing list