[#37050] [Feature #735] Date#inspect — "rubikitch ." <redmine@...>

Feature #735: Date#inspect

14 messages 2008/11/09

[#37075] [Feature #747] /\A/u ignores BOM — Shyouhei Urabe <redmine@...>

Feature #747: /\A/u ignores BOM

14 messages 2008/11/12

[#37161] m17n of irb — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

35 messages 2008/11/24
[#37183] Re: m17n of irb — keiju@... (keiju ISHITSUKA) 2008/11/25

けいじゅ@いしつかです.

[#37203] Re: m17n of irb — "Yugui (Yuki Sonoda)" <yugui@...> 2008/11/26

keiju ISHITSUKA さんは書きました:

[#37292] Re: m17n of irb — Yukihiro Matsumoto <matz@...> 2008/12/06

まつもと ゆきひろです

[#37293] Re: m17n of irb — "Yugui (Yuki Sonoda)" <yugui@...> 2008/12/07

Yuguiです。

[#37298] Re: m17n of irb — Yukihiro Matsumoto <matz@...> 2008/12/07

まつもと ゆきひろです

[#37210] RSS::Maker.create(version) — "Akinori MUSHA" <knu@...>

 RSS::Maker で、 "2.0" 等の文字列でフィードのフォーマットを渡す

15 messages 2008/11/27

[#37213] Re: [ruby-cvs:27586] Ruby:r20368 (trunk): * ext/bigdecimal/bigdecimal.c (BigDecimal_div2): should return — Tadayoshi Funaba <tadf@...>

> * ext/bigdecimal/bigdecimal.c (BigDecimal_div2): should return

8 messages 2008/11/27

[ruby-dev:37057] Re: [Feature #735] Date#inspect

From: Yukihiro Matsumoto <matz@...>
Date: 2008-11-10 15:56:59 UTC
List: ruby-dev #37057
まつもと ゆきひろです

In message "Re: [ruby-dev:37056] Re: [Feature #735] Date#inspect"
    on Mon, 10 Nov 2008 21:33:56 +0900, Tadayoshi Funaba <tadf@dotrb.org> writes:

|> 「inspectは人間に優しい文字列化」という観点から、Date#inspectの出力はふさわしくないと思います。
|> #<Date: 2008-11-10> やら #<DateTime 2008-11-10T05:22:03+09:00> のほうがわかりやすいです。
|
|「inspectは人間に優しい文字列化」というのは初めて聞きました。現状では本
|質部分がすべて見えているので、それなりに気に入っていますが、現状のよう
|な情報が大部分の人間に無用である、ということなら、inspect も to_s と同
|じようにしてもいいかもしれません。
|
|ただ、inspect というのは、smalltalk 由来じゃないかと思うのですが、その
|考えかたからすれば、現状の inspect は外れてはいないように思います。デフォ
|ルトの inspect の振舞いからもそう感じます。to_s と殆ど変らない情報を提
|供することには疑問を感じます。

私はSmalltalkerではないので、いただいて来たのはinspectという
名前だけです。で、inspectの目的は何かと言うと、pが表示に用い
ることから考えても、なんらかの理由でto_sの情報だけからオブジェ
クトの情報を読み取ることが難しい時に、より多くの(人間にとって
読みやすい/わかりやすい)情報をデバッグ向けに提供するというこ
とでしょう。ここにおいては誰もそれほどは相違していないと思い
ます。

|たとえば以下の、a と b は違うのですが、いくらか秒以下の桁を表示すること
|にしてもその違いは判らないかもしれません。
|
| a = DateTime.parse('2008-11-10T01:02:03.123456789')
| b = DateTime.parse('2008-11-10T01:02:03.1234567891')
|
|また、同じ日付のように見えても、グレゴリオ暦とユリウス暦では違うわけで
|すが、そういうことも判りません。現状では、違いははっきりします。
|inspect とはそういうものじゃないかという気がします。to_s したら同じよう
|に見えた日付も違うものだった、という事が判ればデバッグに役立つと思いま
|す。

ここで、ふなばさんのおっしゃることもよくわかるのですが、個人
的にはDate#inspectがto_sに近い書式であったらなあ、と思ったこ
とが一度ならずあります。確かにDate#inspectではすべての情報を
提供しているのですが、それが人間世界(?)でどのような意味を持
つかということが読み取りにくいからです。

私のように単に「ある日」を指すオブジェクトとして使うことの方
が圧倒的に多い人には現在のinspectの情報は「やさしい」とは言え
ませんね。pで出力させても何日なのかわからないからです。結局
to_sで表示し直すことになるという。でも、Dateそのもののデバッ
グには現在の方がうれしいでしょうね。

|ここで「俺の考える inspect」を述べ合ってもしょうがないので、そもそも
|ruby の inspect はどうあるべきだったのか、まつもとさんに訊いてからどう
|したらいいか考えたほうがいいでしょうか。

どこかに妥協点があるとよいのですが。ただ、私はinspectがto_s
と同様の「人間にわかりやすい日付(DateTimeの場合は時間も)」の
表現 も 含むことを期待します。

                                まつもと ゆきひろ /:|)

In This Thread