こんにちは、なかむら(う)です。
In message "[ruby-dev:35245] Re: [Bug:trunk] Re: [ruby-cvs:24798] Ruby:r17573 (trunk): * parse.y (primary): make functional-style not operator to act"
on Jun.26,2008 16:02:09, <matz / ruby-lang.org> wrote:
> |> っていうか、純粋にliteral trueでいいんじゃないですかね。
> |
> |昔ならそれでもよかったんでしょうけど、今や!は再定義できるので、
> |私のパッチと今のtrunkだと、
> |
> | % ruby-mypatch -e 'def nil.!; false; end; p not()'
> | false
> | % ruby-trunk -e 'def nil.!; false; end; p not()'
> | true
> |
> |という違いが発生します。
>
> それはそうですが、not()がnot(nil)と等しいということは自明では
> ないので、trueならtrueで構わないのではないかと思ってしまいま
> す。
え、自明じゃないんですか?
()はnilになりますから、not()が(not nil)と等しいのは当然な気が
するのですが...
どっちかというと()がnilになるのが私には自明じゃなかったんです
が、0.95からそうだったらしいのでそれはそういうもんかなと思っ
ています。
それでは。
--
U.Nakamura <usa / garbagecollect.jp>