[ruby-list:46513] Re: obj.? メソッド

From: 小西 弘将 <konishi@...>
Date: 2009-11-04 08:23:57 UTC
List: ruby-list #46513
小西弘将です。

反対です。
そもそも、関数に名前をつけないこと自体、プログラマとしてやるべきことでは
ないと考えます。

?
とだけ書かれて、解るのは自分だけです。いずれ自分も解らなくなります。

> きしもとです
> 
> [ruby-list:46422] から始まるスレッドで一旦却下された話で、
> "?" というメソッドは、レシーバを省略した呼び出しで、リテラルや三項演算子と
> ぶつかるのでダメ、という話になったわけですが、
> 
> レシーバを省略しない呼び出しであれば、現在、obj.def とか obj.end とか obj.and
> とか、演算子やそのほかの構文と被ってる名前でも使えるわけですよね?
> そういうわけで、obj.? もあっていいんではないか、と改めて提案します。
> 
> 誰がうれしいか、ということについてですが、パーサコンビネータで、
> a a? b という構文規則をたとえば a >> a.opt >> b としていたものを、
> a >> a.? >> b と、簡潔かつ直感的にわかりやすく書けるようになります。
> 
> リテラルや三項演算子は、def のあとや obj. のあとの文脈で、
> def や end や and に比べて、特別でしょうか?
> 
> 



In This Thread