[MacRuby-devel] eval() Behavior Difference Between Ruby and MacRuby

Braxton Sherouse sherouse at email.virginia.edu
Thu Mar 8 12:08:56 PST 2012


Thanks; that's totally it.

That specific spec change is painfully clear in
https://github.com/rubyspec/rubyspec/blob/master/core/kernel/eval_spec.rb
(but, of course, I didn't think to look there!)

Best,
Braxton

On Thu, Mar 8, 2012 at 8:47 PM, Matt Aimonetti <mattaimonetti at gmail.com> wrote:
> 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
> <sherouse at 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 at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>
>
>
> _______________________________________________
> MacRuby-devel mailing list
> MacRuby-devel at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
>


More information about the MacRuby-devel mailing list