yarv-dev:668
From: SASADA Koichi <ko1 atdot.net>
Date: Fri, 07 Oct 2005 20:45:27 +0900
Subject: [yarv-dev:668] Re: environment in eval
ささだです。
Proc がつかんでいる(Proc が代替している?)Binding 情報も、同様に
eval の影響を受けますね。
def m
lambda{
p local_variables
}
end
eval('a=1', b=m)
b.call #=> ["a"]
リファレンスでは、
http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Binding
> ローカル変数のテーブルと self、モジュールのネストなどの情報を保持するオブジェクトのクラス。組み込み関数 binding によってのみ生成され、eval の第 2 引数に使用します。
「保持する」とあって、それが拡張されていくイメージがなかったので、私はど
んどん増えていくのが不自然に感じているんではないかと思います。
他の言語で同じような機能がないかなぁと考えてみたのですが、私の少ない言
語の知識では思いつきませんでした。
--
SASADA Koichi at atdot dot net
--
ML: yarv-dev quickml.atdot.net
使い方: http://www.atdot.net/~ko1/quickml
654 2005-10-05 15:42 [ko1 atdot.net ] environment in eval 655 2005-10-05 16:01 ┗[matz ruby-lang.org ] 656 2005-10-05 16:15 ┗[ko1 atdot.net ] 657 2005-10-05 16:36 ┗[matz ruby-lang.org ] 658 2005-10-05 16:48 ┗[ko1 atdot.net ] 660 2005-10-05 17:50 ┗[matz ruby-lang.org ] 661 2005-10-05 18:03 ┗[ko1 atdot.net ] 662 2005-10-05 18:26 ┗[matz ruby-lang.org ] 663 2005-10-06 11:52 ┗[ko1 atdot.net ] 664 2005-10-07 16:45 ┗[matz ruby-lang.org ] 665 2005-10-07 17:03 ┗[ko1 atdot.net ] 666 2005-10-07 17:15 ┗[usa garbagecollect.j] 667 2005-10-07 17:19 ┗[matz ruby-lang.org ] -> 668 2005-10-07 20:45 ┣[ko1 atdot.net ] 669 2005-10-07 21:51 ┃┗[shiro lava.net ] 670 2005-10-07 23:34 ┗[nobu.nokada softhome] 671 2005-10-08 00:40 ┗[matz ruby-lang.org ]