suggestion: a shorter convenience form
Per Bothner 22 Jun 2006 19:41 UTC
A problem with define-syntax+syntax-case is that you
get very verbose syntax definitions, with lots of
standard boiler-plate. This makes syntax definitions
needlessly hard to read and (less important) more tedious to
write. This has tempted some of my Kawa users to use the "legacy"
non-hygienic define-macro form, even though I discourage it.
Even plain R5RS define-syntax+syntax-rules is
ridiculously verbose.
One idea I had has this little conveniece macro:
(define-syntax define-syntax-case
(syntax-rules ()
((define-syntax-case name literals . parts)
(define-syntax name
(lambda form
(syntax-case form literals . parts))))))
Typical use - especially nice if #` is availiable:
(define-syntax-case NAME ()
((_ PVAR ...)
#`(... PVAR ...))
Of course people can define this themselves, but
it is nicer if it is standard, because then people
get used to reading it.
--
--Per Bothner
xxxxxx@bothner.com http://per.bothner.com/