From: "NARUSE, Yui" Date: 2008-09-11T01:35:33+09:00 Subject: [ruby-dev:36258] Re: GNU iconv dependency Takahiro Kambe wrote: > In message <48C7EC6B.5060306@airemix.jp> > on Thu, 11 Sep 2008 00:42:42 +0900, > "NARUSE, Yui" wrote: >>> ただ、Iconv.listは、ともかく "//IGNORE" と >>> かは Ruby 側で気を効かせて用意すべきかどうかというのが悩ましいところで >>> す。(何か、秘密のclass変数をtrueにすると有効になるとか、やっぱり隠すか。) >> その手のグローバルな状態は悪ですねぇ。 > 方法は何でも良いので、 > > * デフォルトでは例外 > * 「どうしても」というときは目立たないオマジナイで回避可能 > > といったあたりでどうでしょう。気持ち悪ければ、この回避策自体も提供すべ > きではないと思います デフォルトでは例外ってのは Citrus iconv の場合ですか? glibc や libiconv の場合もですか? 今更後者で例外出すようにすることはあり得ないでしょう。 前に進むための犠牲ならばともかく、わざわざ互換性だけ壊すのはちょっと。 目立たないどうこうでなく、グローバルな変数で挙動が変わると、 スレッドセーフじゃなくなるのであり得ないでしょう。 おまじない路線ならば、オープンクラスなんですから丸ごと書き換えた方が確実ですな。 -- NARUSE, Yui