[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Comments on draft 6



Coming from a Chez Scheme background, I am not sure what to make of this. 
Chez Scheme does implicitly bind all identifiers at the REPL, but it is an
error to SET! an undefined variable.  This leads to some interesting
behavior in REPLs, since all variables have implicit bindings there, but in
R6RS Libraries or in scripts, the top-levels start off explicitly empty. 
This means that if you enter a REPL, you can evaluate (SET! X 5) and not get
a problem, but if you were to try to do that inside of a library like 
(LIBRARY (MY-X) (EXPORT X) (IMPORT (CHEZSCHEME)) (SET! X 5)), you would find
an error when you try to load that library.

This means that Chez Scheme seems like it might be one of those in which it
allows SET! on undefined variables, but in reality, it doesn't actually do
that.

I'm not sure how the wording ought to be made here.

-- 
Aaron W. Hsu | arcfide@x | http://www.sacrideo.us
Programming is just another word for the lost art of thinking.


_______________________________________________
Scheme-reports mailing list
Scheme-reports@x
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports