Subject: Re: Promoting CL Was: What I want from my Common Lisp vendor and the Common Lisp community From: Erik Naggum <erik@naggum.net> Date: Wed, 05 Sep 2001 00:05:23 GMT Newsgroups: comp.lang.lisp Message-ID: <3208637120220622@naggum.net> * Rajappa Iyer <rsi@panix.com> > I didn't get that from the excerpt. All I read in it was that John > thought that this particular feature (case insensitive upper) was a > blotch in the language. I thought we were still talking about if/when/unless, but it also applies to case sensitivity. Teaching people to abhor upper-case and tell them to use lower-case also destroys the common knowledge. Making standard functions return non-standard values is _really_ bogus. If they worry so much about upper-case versus lower-case, there are two easy steps: set *print-case* to :downcase and make the keyword argument :case-insensitive to apropos default to t. They do neither, but seem to want people use their very incompatible version instead. I have been working on a solution that does not destroy conformance at all -- and it turns out to be really easy to support in the framework that Franz Inc. has already built to support their special set-case-mode. This is about the willingness to remain conforming while making serious changes, or lack thereof, to be more precise. But as long as we talk about this issue, it is in fact possible to let (common-lisp:symbol-name 'foo) return "FOO" and have something like a (common-lisp-lower:symbol-name 'foo) return "foo". This is the kind of thing the package system should have been able to deal with, shadowing some of the important functions. The reader needs to be able to deal with a parameterization of which functions to call, however, and the specification for this will have to be extra-standard. This means that it should probably go in the readtable. Since the readtable already supports everything we need for a lower-case Common Lisp to work, all we would really need is the ability to retain the standard functionality in addition to the lower-case versions. This should be doable without having to break anything, if only you are willin to look for it. That would make it possible to intermix standard and lower-case code, too, which is currently impossible with the separated schemes used today. > Intelligent people can disagree with majority opinion and/or hold silly > opinions of their own without being pilloried as the enemy of the state. > If not, it's the state and its defenders that I'd question, not the > individual. Grandiose speech. Competely irrelevant to this case, however. ///