>From what I understand,
the only thing missing in Rubymotion is eval()
There's an article by Clay Allsop about meta-programming in Rubymotion
at
http://clayallsopp.com/posts/rubymotion-metaprogramming/
I tested to see if eval() works in desktop Rubymotion apps (I read
somewhere that the reason it's not included is due to Apple restrictions
on run-time code evaluation in iOS, rather than a limit of Rubymotion),
but it doesn't.
fb
Is RubyMotion a full
Ruby. Does it support reflection and metaprograming?
Thanks,
David Kramf
While I'm really happy
about OS X support on RubyMotion, it is not a replacement for MacRuby.
IMHO
MacRuby is far superior:
It offer JIT
compiler, you develop orders of magnitude faster as you dont need clean
and rebuild every time.
You have full ruby
compatibility, load standard library as you wish.
It
loads gems and framework dynamically like what you would expected from
regular ruby.
You don't have to write new
gems, or rewrite them. Many gems just work, even native ones could work.
You
can use regular technique for meta programming, and generally you don't
enter a uncanny valley between dynamic language and static build
system.
Some of these limitations are inherited
from RubyMotion due to iOS restriction, I don't see them going away
anytime soon.
That said, RubyMotion team is
the ones who know most of MacRuby, and their direction is not like
MacRuby in past. If you are going to develop Mac app, your best choice
is probably go RubyMotion, or just use Objective-C.