I'm having issues compiling with the syntax-case extension. I have no issues using only define-syntax, but using define-syntax and introducing the -:s switch seems to cause some, but not all, of the macros I have defined using define-macro to be ignored. ... *** WARNING -- "maybe" is not defined, *** referenced in: ("/home/evanhanson/proj/gm/gm.c") *** WARNING -- "when" is not defined, *** referenced in: ("/home/evanhanson/proj/gm/gm.c") ... Is it the case that syntax-case can't be used alongside lisp-style macros? Redefining the problem macros with define-syntax didn't help, though there remained other definitions using define-macro (I didn't try removing them all...).
Thanks,
Evan
Afficher les réponses par date
15 nov 2010 kl. 17.13 skrev Evan Hanson:
Is it the case that syntax-case can't be used alongside lisp-style macros?
The answer to that question is basically yes. Depending on how the implementation works, define-macro can work occasionally, but I'm pretty sure that it's impossible to truly fit non-hygienic CL-style macros together with a hygienic macro system; to make a hygienic macro system, you must somehow pass on hygiene information to the macros, and define-macro macros don't let you do that.
/Per