Subject: Re: ACL 6.0 Trial Edition ships with non ANSI reader behavior. From: Erik Naggum <erik@naggum.net> Date: 2000/11/05 Newsgroups: comp.lang.lisp Message-ID: <3182450051259505@naggum.net> * John Foderaro <jkf@unspamx.franz.com> | If you write code that you wish to contribute to others you as the | author have to ensure that it will work on the target platforms on | which you wish it to run. If you want it to run on a pure ANSI lisp | then you must make sure that if you use mixed-case symbols in your | program then there are no symbol name clashes if the code is read by | an ANSI reader. John, you _do_ know better than this, so I wonder why you completely ignore the language as actually defined. The language you keep arguing against is _not_ a full Common Lisp, but rather some stunted version that displays all the flaws you would like people to believe the full language suffers from, but that is simply not the case. I'm positively _flabbergasted_ that you think you can get away with such an obvious hoax in this forum, of all places. I could be mean and say that you pit Modern Lisp against Ancient Lisp, not ANSI Lisp. The "ANSI reader" can be told to preserve case. Except in Allegro CL, where that functionality has been ripped out on purpose in order to make code that wants to use this functionality break. Symbol quoting has _always_ worked. In fact, it's in there because people wanted an escape from the case-insensitivity. You can write |IThinkSmallTalkIsBetterThanCommonLispAnyway| and get _exactly_ what you typed as the symbol name. Oh, I'm sure we'll hear aesthetics arguments, now, but that is irrelevant: If you want it, you got it. Thank you for not breaking this property of ANSI Common Lisp. | While Franz has never delivered a Modern image before the lisp has | always been capable of running in Modern mode. Huh? ACL 5.0 Trial was delivered with :case-sensitive-lower, IIRC. ACL 5.0.1 Trial was delivered with :case-insensitive-upper after much of the same kind of resistance that you are facing now, having learned nothing from last time. That just adds to my being annoyed. | I think that Lisp people prefer to use a hyphen to separate words in | a symbol instead of Capitalization. More than that, people are not using MixedCaseWordsStrungTogether in any environments other than those in which they are taught it is a good thing, despite no shortage of case sensitive systems. Ever see users use filenames like that on Unix? Ever see _Windows_ users flock to the StupidCapsCamp? One would perhaps think that they should because their programmers tend towards such identifiers, but that is not what we find in practice. | Bottom line: Franz is not going to start introducing mixed case APIs | to normal lisp things. You can use mixed case if you want, it's | your choice. However when dealing with mixed case objects | (e.g. Java symbols, XML symbols) we will make use of ACL's mixed | case ability if the result is a cleaner interface. FWIW, I think this is a good argument for case sensitivity. Lisp has always been a language for making communication easy, and the upper-case thing was mostly due to communication with FORTRAN way back when (now known as Fortran :). Lisp as such has no intrinsic need for either case or case sensitivity, which is why it works just as well to write Common Lisp code in case-insensitive-upper as in case-sensitive-lower modes. (Yeah, I know I'm rubbing it in.) #:Erik -- Does anyone remember where I parked Air Force One? -- George W. Bush