Martin,
What I don't understand is: Why do I have to set the language environment (*) to make it work? It's Unicode, so Squeak shouldn't care what the language is. If it needs to know, it should get the language from the system.
Read the Unicode standard.
I did. What section are you specifically referring to?
For example, take a look at this FAQ entry:
http://www.unicode.org/faq/han_cjk.html#3
(and one before this and after).
Because it is Unicode, a mechanism out of scope of Unicode has to supply language information to do sensible stuff.
What is the sensible stuff it needs to do?
To display strings in an ok way.
http://www.unicode.org/faq/han_cjk.html#2
says that you should select a proper font based on the language you would like to treat the character in.
Although the current Squeak implementation is not there yet, you would like to do different sorting or uppercase/lowercase conversions based on the language (even within Latin-1 regions). A segment of text generally should have more information other than the bare code point of Unicode.
-- Yoshiki
vm-dev@lists.squeakfoundation.org