[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question with binding
Here's my $0.02, from R(3.5)RS (apologies if it's already been posted by
someone else):
2.1 Identifiers
[.....]
Identifiers have several uses within Scheme programs:
+ Certain identifiers are reserved for use as syntactic keywords
(see below)
====> + Any identifier that is not a syntactic keyword may be used as a
====> variable
[.....]
The following identifiers are syntactic keywords, and should not be
used as variables:
=> do or
and else quasiquote
[.....]
+ is NOT defined as a syntactic keyword, and hence can (IMHO) be bound to
just about anything, even (gasp!) an integer. Whether a particular
implementation chooses to allow such a re-binding, though, is really the
decision of the implementor.
Btw, if any of you think this could cause major headaches, try reading
"Oaklisp: an Object-Oriented Scheme with First Class Types" [Lang &
Pearlmutter, OOPSLA '86 Proceedings]. As the title implies, even data types
can be re-defined!!
----------------------------------------------------------------------------
Adrian Ho a.k.a. The Cybermat Rider University of California, Berkeley
laba-4he@web.berkeley.edu (WEB Evans, Home of The CS Freakies)
Disclaimer: Nobody takes me seriously, so is it really necessary?