Re: Prefix, not postfix (poll)
bear 17 Apr 2006 05:03 UTC
On Fri, 14 Apr 2006, Marc Feeley wrote:
> But keywords are not variables. They are constants. Just like 123,
> "hello" and #\space. They are (should be) syntactically
> distinguished from variables.
Ebbeh. What is a constant, other than a variable with a
global, unshadowable, immutable binding?
>Regarding minimality, why didn't Scheme avoid the string type and
>simply use vectors of characters? Actually why not just use lists of
>characters like in other languages? For that matter, ``strings'' and
>``symbols'' could have been the same type .... Of
>course we could just do away with all of these types and encode
>everything with bignums.... Why does Scheme have
>"list" in addition to "cons", "cddr" in addition to "cdr"?
Are you finished setting up a straw man to knock down yet?
I didn't advocate any of these insane things, and ridiculing
them won't address my point at all.
What I said was simply, these things are symbolic constants.
They seem desirable because scheme otherwise doesn't have a
way to create immutable and/or unshadowable bindings. Perhaps
this is a more general extension that should be considered
for our binding discipline. Then keywords would merely be
one application of something that had many other applications.
Bear