On Mon, Aug 24, 2009 at 10:57:44AM -0500, Brian Mastenbrook wrote: > `syntax-rules' is much easier to implement than the standard low-level > macro system from R6RS, as the underling implementation methodology is > left up to the choice of the implementor.
Syntax-case is considered to be a high-level macro system. As far as I know, R6RS *has* no low-level macro system. > If you're thinking of > unhygienic macros, I think this would be a horrible idea; lexical > scoping of *all* identifiers, including those in syntax definitions, > is central to the Scheme idea. Not necessarily. I think all low-level systems allow for breaking of hygiene, but that's not the reason to prefer a low-level system. A low-level system is useful because it allows one to explain macros in terms of familiar Scheme primitives as cons, car and cdr. This simplicity fits well with Scheme, and I think it would also serve well in an educational setting - having to explain that high-level macro systems are their own language separate from Scheme is yet another layer of complexity. Cheers, Peter -- http://sjamaan.ath.cx -- "The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it can be an aesthetic experience much like composing poetry or music." -- Donald Knuth
pgpCPAz7JV902.pgp
Description: PGP signature
_______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
