question about goals for ruby module compatibility with macruby
Hi Laurent and macruby-ists,I am thinking about taking on a rather ambitious project with macruby in the next year or so which would benefit from having access to existing ruby gems (like the bioruby gem and rails). Can anyone predict how general the ruby gem compatibility will be as macruby matures? I promise I won't hold anyone responsible for their speculation. Tim
Hi Tim, I was about to reply to your colleague, Mr Otero, so let me try to clarify a few things that might help others. The goal for MacRuby 0.5 is to be able to run any rubygems that are not C extensions. ( see Macruby 0.5 roadmap: http://lists.macosforge.org/pipermail/macruby-devel/2009-July/002091.html ) The good news is that the BioRuby gem is pure Ruby, the bad news is that it's not fully compatible with Ruby 1.9 yet. (MacRuby is aiming for Ruby 1.9 compatibility) However, that shouldn't be hard to fix. Regarding Rails, that's a different story, as you probably know, Rails 3 is going to be released towards the end of the year. Rails is a big project and quite a challenging one to have running on top of any Ruby implementation. The primarily goal of MacRuby is to let people write Cocoa apps in Ruby, so Rails is not at the top of the todo list. However, this is something we would really like to be able to do ASAP. (being part of the Rails team, I would love to see that happen). Rails also uses some C based extensions like its DB drivers and we would need to find workarounds. I hope it helps, - Matt On Thu, Jul 30, 2009 at 9:36 AM, Tim Rand <timrandg@gmail.com> wrote:
Hi Laurent and macruby-ists,I am thinking about taking on a rather ambitious project with macruby in the next year or so which would benefit from having access to existing ruby gems (like the bioruby gem and rails). Can anyone predict how general the ruby gem compatibility will be as macruby matures? I promise I won't hold anyone responsible for their speculation. Tim
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
If MacRuby is aiming for full FFI support, a la JRuby, then creating interpreter-independent versions of C extensions need not be difficult. I've begun porting some of my own Ruby bindings from DL and C and have found that as long as you handle your C types correctly, everything tends to Just Work on MRI versions 1.8.6, 1.9.1, and recent versions of JRuby. To my knowledge, the macruby-experimental branch only supports attaching C functions (e.g. no structs, callbacks), but that is likely to improve. The FFI documentation is also a little thin, but it's easy to pick up once you've seen some examples. Here's a CoreMIDI driver I've ported to FFI: http://github.com/jvoorhis/midiator/blob/4e6024b8e68503868272770d8c8ecabe024... Best, Jeremy On Thu, Jul 30, 2009 at 10:09 AM, Matt Aimonetti <mattaimonetti@gmail.com>wrote:
Hi Tim,
I was about to reply to your colleague, Mr Otero, so let me try to clarify a few things that might help others. The goal for MacRuby 0.5 is to be able to run any rubygems that are not C extensions. ( see Macruby 0.5 roadmap: http://lists.macosforge.org/pipermail/macruby-devel/2009-July/002091.html)
The good news is that the BioRuby gem is pure Ruby, the bad news is that it's not fully compatible with Ruby 1.9 yet. (MacRuby is aiming for Ruby 1.9 compatibility) However, that shouldn't be hard to fix.
Regarding Rails, that's a different story, as you probably know, Rails 3 is going to be released towards the end of the year. Rails is a big project and quite a challenging one to have running on top of any Ruby implementation. The primarily goal of MacRuby is to let people write Cocoa apps in Ruby, so Rails is not at the top of the todo list. However, this is something we would really like to be able to do ASAP. (being part of the Rails team, I would love to see that happen).
Rails also uses some C based extensions like its DB drivers and we would need to find workarounds.
I hope it helps,
- Matt
On Thu, Jul 30, 2009 at 9:36 AM, Tim Rand <timrandg@gmail.com> wrote:
Hi Laurent and macruby-ists,I am thinking about taking on a rather ambitious project with macruby in the next year or so which would benefit from having access to existing ruby gems (like the bioruby gem and rails). Can anyone predict how general the ruby gem compatibility will be as macruby matures? I promise I won't hold anyone responsible for their speculation. Tim
_______________________________________________ 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
Hi Tim, As Matt mentioned on a separate mail, rubygems should be fully supported (modulo C extensions) in the upcoming release, which should be out before the end of the year if everything goes well. I can't pronounce for Rails at this point, but we are approaching it bit by bit, and we might look at it sooner than planned, since our major objective (Cocoa support) is mostly complete. Surely MacRuby will be in a better shape next year :-) Laurent On Jul 30, 2009, at 9:36 AM, Tim Rand wrote:
Hi Laurent and macruby-ists, I am thinking about taking on a rather ambitious project with macruby in the next year or so which would benefit from having access to existing ruby gems (like the bioruby gem and rails). Can anyone predict how general the ruby gem compatibility will be as macruby matures? I promise I won't hold anyone responsible for their speculation. Tim
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
participants (4)
-
Jeremy Voorhis
-
Laurent Sansonetti
-
Matt Aimonetti
-
Tim Rand