[[email protected]: Re: [[email protected]: bug in psyntax?]]
Scott Miller <[email protected]>
| Newsgroups | gmane.comp.java.sisc.devel |
|---|---|
| Message-ID | <[email protected]> |
----- Forwarded message from "R. Kent Dybvig" <[email protected]> ----- X-Mail-Format-Warning: Bad RFC2822 header formatting in >From scgmille Fri May 2 14:16:32 2003 Envelope-to: scgmille@localhost Delivery-date: Fri, 02 May 2003 14:16:32 -0500 From: "R. Kent Dybvig" <[email protected]> To: [email protected] Subject: Re: [[email protected]: [SISC-devel] bug in psyntax?] X-Spam-Status: No, hits=-0.1 required=5.0 tests=SPAM_PHRASE_01_02 version=2.41 X-Spam-Level: This is a known "bug" in Chez Scheme and in the portable syntax-case. Actually, it's a known bug in R5RS, which the portable syntax-case doesn't support. With the R5RS version, you can't do this: (define ---) (let-syntax (---) (define ---) (define ---)) (define ---) With the syntax-case version, you can, and if you want a local scope, you can create one like this: (let-syntax ((a ---)) (let () (define ---) (define ---))) I brought this up at the informal implementors workshop several years back (1998), and there was general agreement that R5RS has it wrong. If you want to adhere to the R5RS version, however, it should be sufficient to to remove the local-syntax-case from chi-top, chi-external, and chi-internal, and modify chi-local-syntax to call chi-body. Kent ----- End forwarded message ----- --
signature.asc
(application/pgp-signature, 189 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE+strLr9IW4v3mHtQRAmJ0AJ9NQSASIrHtItEph4r4I/FurjlP+gCfeKcN qz+EfyXtqxZN07oYRsZvbtg= =ZqCP -----END PGP SIGNATURE-----