[Seaside-dev] Re: Seaside2.8a1-mu.540

Philippe Marschall philippe.marschall at gmail.com
Sat Feb 2 15:26:47 UTC 2008


2008/2/2, Masashi UMEZAWA <masashi.umezawa at gmail.com>:
> Hi Philippe,
>
> 2008/2/2, Philippe Marschall <philippe.marschall at gmail.com>:
> > WAKomEncoded39 >> #utf8ToSqueak:
> > - This is the exact uft-8 fast path from Andreas. No, it should not
> > use Unicode value: because unicode has no language information
> > associated with a character. Assuming the user has the same language
> > as you is almost always wrong. This only breaks stuff like #= a bit
> > more.
>
> uft-8?? ;)
>
> In WAKomEncoded39 >> #utf8ToSqueak::, the variable 'unicode' has a
> unicode value. If such value is passed to 'Character value: ', wrong
> character will be created. (because Character value: expects Squeak
> specific character value).
>
> At least you should set some leadingChar.

But there is no way of knowing which. The language setting of the
image has nothing to do with the language of the input. Which really
shows the problem of the whole WideString mess in Squeak. If might
work in a closed world where there is only "the image" but fails
miserably if you have the interact with someone else.

> > WAUrl >> #addToPath:
> > - anything beyond ASCII in the URL is not supported by Seaside because
> > we don't have the necessary information (are we an encoded server
> > adapter, what encoding do we use) to do it right
> > - #isWideString is highly Squeak specific
> > - #encodeForHTTP is really measurably a bottleneck. Most of the
> > speedup of Seaside 2.8 comes from reimplementing #encodeForHTTP is a
> > more efficient way.
>
> - Usually UTF-8 is used: http://www.w3.org/International/O-URL-code.html

Usually, unless you run latin-1, unless you run WAKom, ....

> - #isWideString is Squeak specific, but can be very easily wrapped by
> adapter class

No. We want to make Seaside more portable, we want to reduce the pain
for the porters and the hacks they have to make. Not the opposite.

> - #encodeForHTTP is only called if the URL is wide string. It is very
> rare (especially in western countries), so bottleneck is ignorable.

Even then it would still be implemented in the wrong place.

Cheers
Philippe


More information about the seaside-dev mailing list