Re: [Scheme-reports] fresh empty strings Ray Dillinger (24 Jan 2012 16:53 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (24 Jan 2012 19:05 UTC)
Re: [Scheme-reports] fresh empty strings Per Bothner (24 Jan 2012 19:25 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (24 Jan 2012 20:26 UTC)
Re: [Scheme-reports] fresh empty strings Per Bothner (24 Jan 2012 20:46 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (24 Jan 2012 21:20 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 00:26 UTC)
Re: [Scheme-reports] fresh empty strings Per Bothner (25 Jan 2012 01:09 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 02:08 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (25 Jan 2012 02:31 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 02:35 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (25 Jan 2012 02:44 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 03:26 UTC)
Re: [Scheme-reports] fresh empty strings Per Bothner (25 Jan 2012 03:43 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 12:58 UTC)
Re: [Scheme-reports] fresh empty strings Per Bothner (25 Jan 2012 19:59 UTC)
Re: [Scheme-reports] fresh empty strings Alex Shinn (25 Jan 2012 23:49 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (25 Jan 2012 21:00 UTC)
Re: [Scheme-reports] fresh empty strings Ray Dillinger (25 Jan 2012 18:57 UTC)
Re: [Scheme-reports] fresh empty strings John Cowan (25 Jan 2012 01:38 UTC)

Re: [Scheme-reports] fresh empty strings Per Bothner 24 Jan 2012 19:23 UTC

On 01/24/2012 11:04 AM, John Cowan wrote:
> Ray Dillinger scripsit:
>
>> It's not clear to me that, in a unicode universe, there's a useful
>> distinction between characters and strings of length 1.  At the very
>> least, character operations such as case and other such mappings
>> are not closed on the set of single codepoints, which makes
>> treating "character" separately from "string" semantically
>> dubious.
>
> I agree wholeheartedly.  Unfortunately, characters and mutable strings are
> IEEE Scheme features, so the bar for removing them is very high.  Both
> R6RS and R7RS make character and string casing operations inconsistent:
> \#ß upcases to itself, whereas "ß" upcases to "SS".  (There is a capital
> sharp S in Unicode, but it is normally used only in display text such
> as headlines; it downcases to the ordinary sharp S but not vice versa,
> so in this respect Unicode is intentionally self-inconsistent.)

In other words: mutable fixed-length strings are effectively useless,
but we have to have mutable strings.  Solution: make them variable-length.
That just requires adding a few functions like string-replace-substring
to make mutable strings into something actually usable.  The normal
implementation could be a simple buffer-gap.

Is there an prior art for doing anything like that?  I'm inclined to
do this for Kawa, whatever R7RS does.
--
	--Per Bothner
per@bothner.com   http://per.bothner.com/

_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports