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.

Source for wiki RedefiningKeywords version 1

author

cowan

comment


    

ipnr

127.11.51.1

name

RedefiningKeywords

readonly

0

text

What happens when a syntax keyword is redefined as a variable, with `(define (cond) 32) (cond)`?

Returns 32:  Racket, Gauche, MIT, Guile, Kawa, SISC, SCM (with warning), Chez, Vicare, Larceny (with warning), Mosh, !IronScheme, NexJ, JScheme, !SigScheme, RScheme (with warning), BDC, Schemik, UMB, Elk, Llava, Sizzle, !FemtoLisp, Dfsch, Inlab, Foment, Owl Lisp, Chibi

"Attempt to redefine macro" error at define time:  Gambit, SXM

"Attempt to redefine immutable identifier" error at define time: Scheme48/scsh, Ypsilon, KSi

Macro continues to shadow procedure:  Chicken, Bigloo, STklos, Shoe, !TinyScheme, Scheme 9, S7, XLisp, Rep, Picrin

time

2014-10-18 07:53:34

version

1