eval ってクロージャなのか

これを見て、なんとなくそうかなと思って試してみた。

y = 1
f = eval "x = y\nlambda{x += 1}"
f.call      # => 2
f.call      # => 3
y           # => 1
x           # => 
# ~> -:6:in `<top (required)>': undefined local variable or method `x' for main:Object (NameError)

ふーん。