Subject: Re: First-class symbols (Re: Why is Scheme not a Lisp?) From: Erik Naggum <erik@naggum.net> Date: Sun, 17 Mar 2002 09:52:46 GMT Newsgroups: comp.lang.lisp Message-ID: <3225347578362126@naggum.net> * Thomas Bushnell, BSG | In Scheme, the thing that is missing here is not some kind of | first-classness of the symbol, but rather, the first-classness of the | environment. As seen from Common Lisp, symbols in Scheme are just like identifiers in the Algol family, but you also have a type for an interned string that has nothing to do with the identifiers. These are really two different things. Real Lisps have real symbols. | Common Lisp has various public ways to access one special environment | (the dynamic environment), and thus for special variables, there is a | convenient and accessible mapping from the symbol name to its dynamic | value. I wish you would at least _try_ to understand the Common Lisp way. | It's not that these are impossible problems, but they are some of the | reasons that there is great diversity of opinion about what the Right | Thing is, and Scheme generally only moves when all the players have | agreed on the Right Thing. But looking for The Right Thing is not a Right Thing. Part of the reason that Scheme is such an unattractive language is that it tries to say that "there is such a thing as a universal and globally unique Right Thing", and this is _such_ a ludicrous position in the first place. Sometimes, when I hear Scheme people talk, and you among them, I get the impression that there are 26 people trying to argue which is the Only Right Letter and they are _so_ in the need of someone to say "Hey, dudes! One word: _alphabet_". /// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.