It's actually a difference between Ruby 1.8 and 1.9, see the same code with 1.9.3:
$ irb 1.9.3p125 :001 > eval "f=12" => 12 1.9.3p125 :002 > f NameError: undefined local variable or method `f' for main:Object from (irb):2 from /Users/mattetti/.rvm/rubies/ruby-1.9.3-p125/bin/irb:16:in `<main>' - Matt On Thu, Mar 8, 2012 at 7:14 PM, Braxton Sherouse < shero...@email.virginia.edu> wrote: > Hello, all. I'm new to the list (and to MacRuby!), so I give my > apologies in advance for any newbie indiscretions. > > I was working today with MacRuby as a scripting language within a > Cocoa app, and found a difference between how Ruby and MacRuby's eval > functions relate to their calling context. > > Here's a reduction: > > % irb --version > irb 0.9.5(05/04/13) > > % irb > >> eval("f = 12") > => 12 > >> f > => 12 > > % macirb --version > DietRB (0.6.1) > > % macirb > irb(main):001:0> eval("f = 12") > => 12 > irb(main):002:0> f > NameError: undefined local variable or method `f' for main:TopLevel > > > I'm sure I'm missing something super basic. I followed a number of > false leads in trying to figure this out before emailing the list, > including checking out the $SAFE global (0 in both cases), and > constructing Bindings to the calling context (same result). > > Thanks in advance for your patience and your help! > > Best, > Braxton Sherouse > _______________________________________________ > MacRuby-devel mailing list > MacRuby-devel@lists.macosforge.org > http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel >
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel