Fwd: Re: makealias, exploden, print-invert-case -- case sensitivity problem



--- Raymond Toy <rtoy@earthlink.net> wrote:
> Robert Dodier wrote:
> > Since exploden calls print-invert-case, and makealias calls
> > exploden, what I'm seeing is that (makealias 'FOO),
> > (makealias 'Foo), and (makealias 'foo) all yield '$FOO.
> 
> I think what you are seeing is that Lisp upcases by default so 'FOO, 
> 'Foo, and 'foo are all the same.  If you want them to be different,
> you want to say 'foo, '|Foo|, and '|foo|.

You are right. The problem actually started earlier, 
in Lisp read, which changed every input symbol to uppercase.

I'm in the process of updating the numericalio code
(share/contrib/numericalio/numericalio.lisp). I was able to
get it to read and write symbols in appropriate cases by 
enclosing read in (let ((*readtable-case* local-table))...)
and enclosing format in (let ((*print-case* :downcase))...).

The goal is to get FOO, Bar, and baz in a data file to act
like FOO, Bar, and baz typed on the command line. I'm most
of the way there. At this point baz prints as baz,
but FOO and Bar print as |foo| and |Bar|. This enables them
to be read back in as FOO and Bar, which is good. But I'd
feel better if these could be printed as FOO and Bar
(sans pipe characters). Suggestions, anyone?

Thanks for your help,
Robert Dodier


	
		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - You care about security. So do we. 
http://promotions.yahoo.com/new_mail