> I see.  Thanks.
> 
> Is there anyway other way to create locals without explicitly 
> setting them?

val = nil
eval "val = 10"
puts val # -> 10

So val is created in a scope local to the eval invocation, unless it already exists in the nesting scope. I think :-)

Thomas