Email list hosting service & mailing list manager

case mappings Alex Shinn (13 Jul 2005 03:57 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 05:49 UTC)
Re: case mappings Michael Sperber (13 Jul 2005 06:41 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 06:47 UTC)
Re: case mappings Michael Sperber (13 Jul 2005 07:12 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 07:21 UTC)
Re: case mappings bear (13 Jul 2005 17:24 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 19:35 UTC)
Re: case mappings Alex Shinn (13 Jul 2005 07:55 UTC)
Re: case mappings Alex Shinn (13 Jul 2005 07:40 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 19:36 UTC)
Re: case mappings Alex Shinn (14 Jul 2005 02:39 UTC)
Re: case mappings Thomas Bushnell BSG (14 Jul 2005 07:15 UTC)
Re: case mappings Alex Shinn (14 Jul 2005 07:42 UTC)
Re: case mappings Thomas Bushnell BSG (14 Jul 2005 08:07 UTC)
Re: case mappings Alex Shinn (14 Jul 2005 08:24 UTC)
Re: case mappings bear (14 Jul 2005 16:47 UTC)
Re: case mappings Thomas Bushnell BSG (14 Jul 2005 20:29 UTC)
Re: case mappings bear (15 Jul 2005 18:23 UTC)
Re: case mappings Thomas Bushnell BSG (15 Jul 2005 19:52 UTC)
Re: case mappings Matthew Flatt (13 Jul 2005 13:05 UTC)
Re: case mappings Thomas Bushnell BSG (13 Jul 2005 19:39 UTC)
Re: case mappings Alex Shinn (14 Jul 2005 02:31 UTC)

Re: case mappings bear 13 Jul 2005 17:24 UTC


On Wed, 13 Jul 2005, Thomas Bushnell BSG wrote:

>My concern is that the *interfaces* not
>
>1) Prevent real conformance to Unicode.
>2) Encourage Scheme programmers to do things which can't conform to
>   Unicode even on a Scheme systems that want to conform.
>
>The current Scheme spec violates (1).

This is why I think "glyph=character" is more or less required
for a language that wants to have "single character" arguments to
and returns from case mapping functions.  You cannot do it in a
fashion compliant to the Unicode standard if you use
"codepoint=character" instead.

If you want real unicode compliance, you have basically two
options as far as I can see; the first is to make characters
grapheme clusters instead of single codepoints, (making use of
U+034F GRAPHEME JOINER to create altercase ligatures on demand
for ligatures whose altercase isn't provided in Unicode) and the
second is to abandon the idea of single character case changing
functions entirely.

>The current SRFI here violates (2).

Regarding that I'm less concerned.  As a wise man said,

"There never has been, nor will there ever be, any programming
language in which it is the least bit difficult to write bad code."
		     --Lawrence Flon

The best we can hope for, and the point of language design, is to make
it easy to do the right thing; there is no way we can prevent
programmers from doing the wrong thing if they're so inclined, nor
even make it the slightest bit difficult.  Our duty is to make sure
the right thing is no harder to do than the wrong thing.

				Bear