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