[#37679] [FEATURE:trunk] EncDet again — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

23 messages 2009/01/03

[#37748] $LOAD_PATHとバージョンの運用の関係 — akira yamada / やまだあきら <akira@...>

1.9系でのバージョンの運用と$LOAD_PATHの値について質問です。

12 messages 2009/01/09
[#37758] Re: $LOAD_PATHとバージョンの運用の関係 — "NARUSE, Yui" <naruse@...> 2009/01/11

成瀬です。

[ruby-dev:37853] Re: 1.9.1-rc2のNEWSの内容

From: okkez <okkez000@...>
Date: 2009-01-29 07:52:30 UTC
List: ruby-dev #37853
okkez です。

自分も調べている最中です。
わかる部分だけコメントします。
# ほとんどわからない。。。

2009/01/29 16:36 akira yamada / やまだあきら <akira@arika.org>:
> 1.9.1-rc2のNEWSの内容についてのコメントと少し質問です。
>
(snip)
>
> to_splatメソッドはなさそうです(r14063で削除?)
>
>>           o New semantics for constant definition in instance_eval
>>             or in module_eval.
>
> (よくわかりませんでした。これについて何か情報はありませんでしょうか。)

以下のように、以前とは違って定数を定義するスコープが変わったようです。

class A
end

a = A.new
a.instance_eval{ B = 'constant B' }
A.module_eval{ C = 'constant C' }

B # => "constant B"                          # 1.8.7
  # => uninitialized constant B (NameError)  # 1.9.1
C # => "constant C"                          # 1.8.7
  # => uninitialized constant C (NameError)  # 1.9.1

(class << a ; self end)::B # => "constant B" # 1.9.1
A::C                       # => "constant C" # 1.9.1

a.instance_eval{ ::D = 'constant D' }
A.module_eval{ ::E = 'constant E' }

D # => "constant D" # 共通
E # => "constant E" # 共通

>
> 全体的に見て、メソッド名だけ書かれているのは
> 追加されたか変更(非互換ではなく機能追加?)があったか
> のどちらかのようでした。
> 可能ならそのどちらかだけでもわかるようになっていると
> よいなと思いました。

同意します。


-- 
okkez
okkez000@gmail.com

In This Thread