[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issues with Unicode

This page is part of the web mail archives of SRFI 91 from before July 7th, 2015. The new archives for SRFI 91 contain all messages, not just those from before July 7th, 2015.

bear scripsit:

> Immutable strings - With Unicode and threads, it's the only viable
> implementation strategy.  [...]  Once you've done the legwork for
> immutable strings, providing string-set!  and similar is a very short
> further trip.

Part of the contract for string-set! is that it mutates its
first argument.

> Removing string-set! would be way too much of a flag-day for
> existing scheme code.  

Can't have it both ways.  It will also be a flag day
to replace string-set! with string-update or some similar
functional equivalent.

> It would be far more sensible for a new dialect of lisp to
> just not have string-set! than for scheme to try to get rid
> of it.

So which is it, keep string-set! and change its contract?
What good is that?

> Regarding what ought to be legal as an identifier: I think
> control characters, whitespace (properties Zs, Zl, Zp) and
> delimiters (properties Ps, and Pc) ought not appear in
> identifiers.  I wouldn't be at all upset if a standard also
> forbade combining characters; after all, identifiers and
> symbol names don't need the full functionality of strings.

In tht cs thy cnnt be ntrl-lngg trms in an of the lrg set
of lnggs tht us cmbnng chrctrs fr vwls.

> I wouldn't be at all upset of a standard also forbade all
> characters not yet assigned as of Unicode 4.1.0, with
> the implication that this forbidding would be permanent
> across Scheme report revisions, even though later Unicode
> versions doubtless will come along.

Which amounts to saying that programmers who use some
languages get to use meaningful identifiers and others don't.
That's manifestly unfair.

John Cowan     http://ccil.org/~cowan    cowan@ccil.org
Monday we watch-a Firefly's house, but he no come out.  He wasn't home.
Tuesday we go to the ball game, but he fool us.  He no show up.  Wednesday he
go to the ball game, and we fool him.  We no show up.  Thursday was a
double-header.  Nobody show up.  Friday it rained all day.  There was no ball
game, so we stayed home and we listened to it on-a the radio.  --Chicolini