Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Sascha Ziemann (07 May 2014 08:16 UTC)
Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Bear (07 May 2014 20:30 UTC)
Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Per Bothner (08 May 2014 01:35 UTC)
Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Alaric Snell-Pym (08 May 2014 12:22 UTC)
Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Jussi Piitulainen (08 May 2014 05:36 UTC)
Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Shiro Kawai (06 May 2014 21:04 UTC)

Re: [Scheme-reports] DISCUSSION/VOTE: The character tower Bear 07 May 2014 20:26 UTC

On Wed, 2014-05-07 at 10:08 +0200, Sascha Ziemann wrote:
> 2014-05-07 0:31 GMT+02:00 Bear <bear@sonic.net>:
> >
> > I would be rather upset if
> >
> > (string=? (string #\A #\x301) (string #\xc1)) ==> #f
>
> But there is a difference.
> #\A #\x301 is an Unicode expression and #\xc1 is a Unicode literal.
> You have to evaluate the first to get the second.

Well, no.

(string #\A #\x301) and (string #\xc1) are both expressions returning
a string.  Unicode canonical equivalence says they should return the
same string.  Apparently our standards committee believes that they
should return different strings, but I do not understand why.

> And if you cryptographically sign the first it would differ from the
> signature of the second.

That is a false distinction, and will lead to much wailing and
gnashing of teeth when, eg, signatures don't match documents,
authentication codes fail, etc ad nauseam, and it all falls on
application programmers and happens over and over, because the
scheme implementers are not allowed to fix it once and for all.

Bear

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