At 00:39 08/09/25, Tanaka Akira wrote:
>In article <6.0.0.20.2.20080924195217.06173a20 / localhost>,
>  Martin Duerst <duerst / it.aoyama.ac.jp> writes:
>
>> http://redmine.ruby-lang.org/wiki/ruby/DevelopersMeeting20080922
>> に追加したら
>>     Encoding::default_internal (Michael Selig, ruby-core:18774)
>> 結果は
>>     -> pending (今週中)
>> となりました。この件を勧めるためにパッチを作りました。
>
>> Encoding.default_internal = 'utf-8'
>>       # tested with 'utf-8', 'shift_jis', and 'euc-jp'
>
>変更可能とすることについては、スレッドセーフでないことに何人
>も懸念を表明していますね。私も危ういと思います。

スレッド毎にするには問題ないと思います。しかし default_external
も現在スレッド毎になってないですよね。実装的には難しいでしょうか。

>また、変換するのにはそれはそれで苦労があるんじゃないでしょう
>か。
>
>たとえば、Python 3000 では、argv に変なバイト列が与えられた
>場合に起動時にエラーになるという話がありました。
>http://mail.python.org/pipermail/python-3000/2007-September/010445.html
>(現在どうなっているかは確認していません。)
>
>変換するということは失敗する可能性が有るわけで、失敗をうまく
>扱えるか考えてみる必要があるのではないでしょうか。

そうですね。argv の変換できないものを ASCII-8BIT にするのは
- そこまで対応する必要がある場合、対応できる
- 対応しないといずれどこかエラーになる
という意味で割りといいたい策だと思います。

宜しくお願いします。    Martin.


#-#-#  Martin J. Du"rst, Assoc. Professor, Aoyama Gakuin University
#-#-#  http://www.sw.it.aoyama.ac.jp       mailto:duerst / it.aoyama.ac.jp