923のスクリプトは、私のやりたいことの意図を正確にあらわして
いませんでした、すまそ。以下のスクリプトみたいな方法で、とり
あえず問題は解決できそうです。

class Data
attr_accessor :aa
end

def hoge(bb, expr, bind)
data = eval("self", bind)
cc = 111
data.instance_eval(expr)
end

d = Data.new
d.aa = 222
bind = d.instance_eval { binding }

hoge(333, "p aa, bb, cc", bind)