五十嵐です。 しばらくネットワークが使えない環境でした。 Tadayoshi Funaba writes: >先ず、現状では Time はタイムゾーンを解釈していません。それができれば、 >Marshal.dump でもタイムゾーンを保存していると思います。UTC と地方時の >違いは、すなわち gmtime(3) と localtime(3) の違いです。それ以上のこと >はしていません。 わかりました。 $X が変更される度に setlocale するというのもアリかと思ったのですが、 一度しか呼んではいけないものらしいですね。 >UTC か、地方時か、だけなら、なんらかの方法で、デフォルトのデフォルトを >設定することはできるかもしれません。まつもとさんにきいてみましょう! グローバルなシステム変数の導入はもう止めたということなので、 駄目なようですね。 >これが少し解りにくかったと思うので、もう少し説明しますと、 Time にとっ >て、我々が普段つかっている時刻表現は便宜的なものだし、その表現に基いて >演算することに特別な配慮はないです。たとえば、Mashal.dump したらもうタ >イムゾーンは関係ないです。 そういうわけで、時刻そのものでなく、 時刻の >表現に関わる演算をする場合は、利用者のほうで、なんらかの配慮が必要な場 >面もあり得る。判定メソッドとは関係なくそういうこともあるね、という話で >すね。 あの、「時刻の表現に関わる演算」というのが良くわかりません。 それまでのタイムゾーンが保存されていることを期待してはいけない、 という意味ですか? 正数同士を演算した結果が、正数であるとは限らないというのと同じく... ちょっと辛いですが。 ところで、clone or dupしたときに、タイムゾーンが保存されていれば... と思ったのですが、Timeはcloneできないようです。 これは、どういう意味があるのでしょうか? -- 五十嵐 晃(ikarashi / itlb.te.noda.sut.ac.jp)