This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Case-sensitivity.


> From: Jim Blandy <jimb@red-bean.com>
> 
> Hmm.  After bothering to find a copy of R4RS on the web, I see that
> even R4RS wants identifiers to be case-insensitive.  Guile is supposed
> to implement R4RS by default... :(

I didn't know that, or I would have reported this bug myself.
(I avoid making a bug report for deliberate mis-features,
and I assumed everybody knew what R4RS says.)

> So maybe that default should change.

> How does the list feel about this?  Would making Guile default to
> case-insensitivity cause people problems that are going to be a pain
> to work around?

I advocate following the standard.  Any reasonable person will almost
always write code that works either way (by using consistent
capitalization and avoiding distinct symbols that differ only in
case).  For the odd case where it does matter, setting a reader flag
does not seem like an onerous burden.

As an old curmudgeon, I might even then be tempted to leave it
case-insensitive and individually escape each identifier that
required strange case, but I am not sure how to do that.  The
(somewhat old) documentation I have does not seem to have a
chapter on reader syntax for symbols.  By reading the code I
find that #{Weird Symbol}# makes a symbol with special characters,
but it still seems to smash the case when case-insensitive is
set.  Is this a bug?  One might expect a syntax that preserves
special characters in symbols to also leave the case unchanged.

-- 
     --Keith

This mail message sent by GNU emacs and Linux.
Food, Shelter, Source code.