Subject: Case-sensitivity goals, policy and implementation
From: Raymond Toy
Date: Wed, 13 Oct 2004 08:41:27 -0400
>>>>> "James" == James Amundson <amundson@users.sourceforge.net> writes:
James> On Tue, 2004-10-12 at 09:25, Raymond Toy wrote:
>> I think *print-case* should be left as :upcase
>> (the default), but the reader (for maxima code) should have a
>> readtable-case of :invert. Section 22.1.3.3.2.1 of the CLHS has a
>> table showing the effect:
>>
>> READTABLE-CASE *PRINT-CASE* Symbol-name Output
>> --------------------------------------------------
>> :INVERT :UPCASE ZEBRA zebra
>> :INVERT :UPCASE Zebra Zebra
>> :INVERT :UPCASE zebra ZEBRA
>>
>> Is this not what we want? We read "zebra" to become the lisp symbol
>> 'ZEBRA, which, when printed out is "zebra".
>>
>> Wouldn't this make "m" and "M" distinct?
James> Hey! I think you have the right answer. I am glad you are thinking about
James> this more clearly than I was. The point I missed is that we want maxima
I wish I could claim I were a genious, but that would be false. The
nice people on #lisp on irc pointed me to this table. I thought Lisp
could do this, but didn't know how to make it happen.
James> functions to *print* in lowercase, but we really don't care if the
James> corresponding lisp symbol is uppercase.
Actually I do care. Then I don't have to quote stuff in Lisp for the
most common usages. No more |$%o42| to see what the output form
is. Hurray!
Ray