On Sep 11, 2009, at 10:31 AM, Arthur A. Gleckler wrote:

> MIT Scheme supports syntax-rules, syntactic closures, and an explicit
> renaming system, all of which are hygienic macro systems.


MIT Scheme's implementation of hygiene is broken:

1 ]=> (define-syntax a
   (syntax-rules ()
     ((_)
      (begin
        (define-syntax b
          (syntax-rules ()
            ((_) 1)))
        (define-syntax c
          (syntax-rules ()
            ((_) 2)))))))

;Value: a

1 ]=> (a)

;Unspecified return value

1 ]=> (b)

;Value: 1

--
Brian Mastenbrook
[email protected]
http://brian.mastenbrook.net/


_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to