RubyMotion has been released, and I am wondering, if a similar solution is available, or coming for Python?
-
4[Kivy](http://kivy.org/#home) claims to support iOS - no idea how good it is. – Thomas K May 04 '12 at 22:01
-
Just checked out Kivy and it looks pretty good. iOS is still under development, but it looks like it mostly works. – mmopy May 08 '12 at 20:43
-
Also: http://itunes.apple.com/us/app/python-for-ios/id485729872?mt=8 – chown May 11 '12 at 01:54
-
Re: Python for iOS (previous link), as far as I can see it can't call back to Objective C/Cocoa components? – Jacob Oscarson Jun 28 '12 at 09:51
2 Answers
RubyMotion isn't a new cross-platform framework (like Kivy, Papaya, Rhodes, etc.) but rather an implementation of the Ruby programming language ON TOP OF the native iOS language Objective-C. Because of this, a RubyMotion object IS an Obj-C Object, but you get to use the dynamic Ruby syntax and idioms to deal with it, instead of the static-oriented Objective-C approaches.
You must still learn the Apple SDK, you just talk to it with "toll-free" Ruby code. With Titatnium, for example, you learn that platform's APIs which work on multiple OSes, albeit at a cost of UI mismatches and performance penalties.
MacRuby is the desktop progenitor of RubyMotion, and the Python analogue to it would be PyObjC. The Sourceforge site for PyObjC looks dormant to me (last updated in late 2009) so someone would have to first revive it, and then make similar modifications (replacing garbage-collection style memory management with some form of automatic reference counting and binary compilation) in order to build a similar Python solution for iOS.
I wouldn't expect it to drop out of the sky anytime soon, but surprises are always welcome.

- 2,585
- 1
- 18
- 19
-
4you can't really compare PyObjC and Macruby, PyObjC is a bridge like [RubyCocoa](http://sourceforge.net/projects/rubycocoa/) as you already said MacRuby is Ruby on Top of ObjC runtime. By replacing the Garbage collector from PyObjC will not work since it's a Bridge. – Sean Mateus May 14 '12 at 13:32
-
1>>ON TOP OF the native iOS language Objective-C. Close, but not quite. It's an implementation of the Ruby Language on top of the Objective-C Runtime binary. Objective-C is an implementation of the Objective-C Language on top of the Objective-C runtime. – johnrubythecat May 30 '12 at 03:16
Depends what you are after and what for. Papaya do what they call a social engine (for games really). But you can write with Python for that. http://papayamobile.com/

- 695
- 7
- 15