[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:790

From: 雪見酒 <yukimi_sake mbi.nifty.com>
Date: Wed, 01 Feb 2006 00:14:36 +0900
Subject: [yarv-dev:790] Re: open> different scope of eval

雪見酒です。

SASADA Koichi wrote:
>
>  これって,evalだと定数がメソッドスコープの中で使えるって事だと思うんで
> すが,そもそもこれはまずいような気がするんですがどうでしょうか.
> 

そうですねぇ、Rubyの場合、定数の定義は「モジュール/クラスのトップレベル
で一度だけオブジェクトを代入できる変数」ということで、結構あいまいです
し、この「トップレベル」が足かせになっていてevalを使ってメソッドスコープ
で定数を定義する場面は結構多いと思います。でも私に言わせると、

Hoge = []
Hoge << 10

なんてのができる方が「定数」という意味では、よほどいやらしいと思いますけ
ど、クラスやモジュールを定数としているRubyの仕様では止むを得ないようにも
思います。いっそのこと「定数」という表現をやめてしまえばすっきりするかな?

#「じゃ、Rubyのこれって何なの?」といわれると適切な名前が浮かばないけど

ま、要するに私はRubyとの互換性を問題にしているのであって、Rubyそのものの
仕様について問題を投げかけているわけではないです。

ではでは。


-- 
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]

       786 2006-01-29 17:31 [yukimi_sake mbi.nift] open> different scope of eval           
       789 2006-01-31 02:47 ┣[ko1 atdot.net       ]                                       
->     790 2006-02-01 00:14 ┃┗[yukimi_sake mbi.nift]                                     
       791 2006-02-01 01:20 ┃ ┗[ko1 atdot.net       ]                                   
       854 2006-02-13 20:44 ┗[ko1 atdot.net       ] fixed> Re: open> different scope of eval