From: Tanaka Akira Date: 2002-10-07T03:12:07+09:00 Subject: [ruby-list:36123] Re: 閉じた binding In article <20021007005806.936F.TKS@dive-in.to>, Takashi Tsugoh writes: > # $B$b$7B>$K$bJ}K!$,$"$j$*;~4V$KM>M5$,$"$l$P!"3'$5$s@'Hs$465 # $BJY6/$5$;$FD:$-$^$9(B(^^;; $B$3!<$f!<$N$G$O$I$&$G$7$g$&!#(B def empty_binding binding end def make_binding(params) keys = params.keys vals = keys.map {|k| params[k]} eval("lambda {|#{params.keys.join(",")}| binding}", empty_binding).call(*vals) end eval("p [local_variables, foo, bar]", make_binding(:foo => "foo", :bar => 100)) -- [$BEDCf(B $BE/(B][$B$?$J$+(B $B$"$-$i(B][Tanaka Akira] $B!V$U$($m(B! $B$o$+$a$A$c$s:n@o$G$9$(C"=$B!W(B(Little Worker, $B7KM7@84](B)