[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Unicode, or die
>> From: "T.SHIOZAKI" <AoiMoe@imou.to>
>> それなら、wchar_t は現状のままで放っておいて、これとは独立な Unicode
>> 前提の API セットを作ったほうが、互換性の観点から正しいことは彼らも
>> 分かってるはずなのだけど、何でそうしないのでしょうね。
まったく同感です。
>>>>> On Mon, 15 May 2000 17:36:25 +0900,
Hideki Hiura <hiura@eng.sun.com> said:
>> 互換性を考えたら、なし崩し的に互換性のない wchar_t の使い方をされるよりも、
> もう一つ私の言葉が足りなかったのですが、現実として glibc では、wchar_t
> が既にUCS-4/UTF-32 に固定されてしまっていて、すべての locale が、Tru64
> UNIX で言う、@ucs4 付きの locale と同じ状態にあります。
>> ISO C locale まわりを全部「obsoleted」にして、使わないよう勧告をしてくれた
>> 方がはるかにマシなんですが、時間なくてそこのところを質問しそびれたのが残念。
> この場を借りてお答えしますと、それも一つの選択肢として残っていないわけ
> ではありません。
では、その選択肢を提言していただけないでしょうか?
> wcahr_t が UCS-4/UTF-32固定であることを認めるからと言って、CSI を捨て
> ることになるのか、と言うと、現実的には、そうとも言えないところがあると
> 考えます。CSI compliant な system/appliaction では、wchar_t の
> representation が変わっても困らないはずです。
これは誤りでしょう。
wchar_t == Unicode を仮定したコードを許容すると、従来の
wchar_t != Unicode であるシステム上では、そのようなコードは動作しなく
なります。
確かに
CSI compliant な system/appliaction では、wchar_t の
representation が変わっても困らない
は真ですが
wchar_t の representation として Unicode を仮定した
プログラムが、CSI compliant な system/appliaction で
動くか?
は偽です。
wchar_t が、 UCS-4/UTF-32固定であるシステムが存在しても、まったく
問題ありません。しかし、
wchar_t が UCS-4/UTF-32固定であるという仮定を、
アプリケーションやライブラリに対して許す
ということは、すなわち
CSI を捨てる
ということです。
> ただ、wcahr_t が UCS-4/UTF-32 であることを無条件に保証するかのように
> 聞こえる私の発言は、たしかに舌足らずでした。
「wchar_t がUCS-4/UTF-32 であることは保証されないので、それに依存して
プログラムを作成してはいけない。そういうプログラムやライブラリは
portable ではない」と明言しない限り、Free Standard Group は CSI を
捨てたと見なされるべきでは?
--
soda