This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home. For a version of this page that may be more recent, see DefineSyntaxDefines in WG2's repo for R7RS-large.

Define­Syntax­Defines

cowan
2012-05-17 05:29:40
1history
source

I tried out

(define-syntax foo (syntax-rules () ((foo) (define x 32)))) (foo) => ??? x => ???

to see whether I got 32 as the value of x or blew up on an error such as invalid syntax (in the define-syntax) or undefined variable.

PLT, MIT, Gambit, scsh/Scheme48, Guile, SISC, Chez, Ikarus, Mosh blew up;

Gauche, Chicken, Bigloo, Kawa, SCM, Larceny (in R5RS mode), Scheme 9, STklos, SigScheme, SXM, VSCM, Chibi were fine with it and returned 32.