[#21225] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

14 messages 2003/08/22
[#21227] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — nobu.nakada@... 2003/08/22

なかだです。

[#21228] Re: [ruby-cvs] ruby: * enum.c (inject_i): use rb_yield_values. — matz@... (Yukihiro Matsumoto) 2003/08/22

まつもと ゆきひろです

[#21281] 大量メモリ消費攻撃に対する対応 — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

16 messages 2003/08/29
[#21285] Re: 大量メモリ消費攻撃に対する対応 — matz@... (Yukihiro Matsumoto) 2003/08/29

まつもと ゆきひろです

[#21288] Re: 大量メモリ消費攻撃に対する対応 — Hidetoshi NAGAI <nagai@...> 2003/08/29

永井@知能.九工大です.

[#21306] Re: 大量メモリ消費攻撃に対する対応 — matz@... (Yukihiro Matsumoto) 2003/09/03

まつもと ゆきひろです

[ruby-dev:21292] parsedate.rb and time.rb

From: Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
Date: 2003-08-30 09:01:54 UTC
List: ruby-dev #21292
ふなばです。

parsedate に、年/月、という形式を解釈させることは、想定されていません
でした。年月日のうち、日を省略する、ということは考えられていなかったの
です。今現在、一部、受けつけられているように見えるのは、たまたまで、バ
グなのかもしれません。

time.rb を見ると、使用例などに、年/月、という形式が挙げられているので
すが、parsedate では、この形式は受けとらない、ということをより明確にし
ていきたいと思っています。

選択肢としては、

1. やっぱり、parsedate.rb も time.rb も、このままにしておく。
2. parsedate.rb では改めるが、time.rb では独自に保証する。
3. parsedate.rb の改訂に time.rb もつきあう。

といったところでしょうか。どうするか相談しましょう。とくに意見はない、
ということであれば、僕の判断 (3) で直します。


以下、なにが問題か述べます。

ひとまず、曜日、時刻、タイムゾーンなどのことは置いておくとします。

parsedate が解釈する日付は、やはり、年月日が揃っているのが、基本です。

ただし、月が名前になっていて、年と月を並べたもの、"Aug 30" や "30 Aug" 
のようなものは、年を省略できます。また、MM/DD、MMDD もいいです。

スラッシュで区切る形式は、月/日[/年]、のように米国式に解釈されます。こ
の形式は、ちょっと特殊だと思いますが、これは、僕が書き換える以前からの
仕様です (本当はちょっとイヤです。まるごと削りたくなります)。

年月日のうち、省略を許すとすれば、年です。どの形式でも、日付から月の日
を省略することは想定されていません。

"2003/08" のような入力が、一見ちゃんと解釈されているように見えるのは、
まず、年を省略された形式、月/日、として受け入れたあと、ひとつ目の要素
が、あきらかに月ではないと判断できるため、気をきかせて、(月/日/年の場
合と同じように) 年/月/日、として読み換えるからです (バグかもしれない)。
ですから、たとえば、"03/12" などは、03年12月とは、なりません。

今後は、月/日として受けつけたはずのものを年/月と読み換えることは、しな
いつもりです。スラッシュで区切る形式は、parsedate のなかでも、もっとも
解釈の根拠が薄弱でもあり、これ以上の濫用を許すと、本当にわけがわからな
くなりそうです。

parsedate の解釈について、それなりにちゃんと書こうとすると、長くなって、
うんざりされそうなので、今のところ、正規のマニュアルには、あまり詳しく
は書いてませんが、もし、より詳しい説明を読みたければ、別の文書に、それ
なりに詳しい説明があるので、それを読んでください。

http://www.funaba.org/date2/parsedate.html

In This Thread

Prev Next