Very good question... We currently need to access readline (for IRB),
so porting the readline extension to FFI will be very useful.
Other extensions part of the Ruby distribution that might be
interesting to port: openssl, syslog, zlib.
Other than that, I guess that once we start to be able to run larger
applications/libraries (like Rails for example) we might need to
access more native code, but this is more a future thing. I'm not a
Rails expert but I guess we will need access to sqlite3, mysql, etc.
which are surely wrapped into C extensions for now. Porting these to
FFI might help too.
Maybe I'm missing more extensions too. Don't hesitate to correct me.
Laurent
On May 30, 2009, at 1:54 PM, Martin Hess wrote:
Is there a list of which C extensions need to be moved FFI?
On May 29, 2009, at 3:31 PM, Laurent Sansonetti wrote:
So, to recap, I think the following contributions will be welcome:
- Maintaining the website (blog, content, etc.) and writing
tutorials. There are lots of very interesting blog posts around
that could I think be transformed into a tutorial or into a recipe
(shorter tutorial). I think we need more recipes, for instance how
to embed MacRuby in your app, how to use a specific and complex
Cocoa class (NSOutlineView/NSTableView/etc.) in Ruby, etc.
- Writing / translating sample code for MacRuby. We will bundle it
in the MacRuby distribution. If you wrote anything interesting in
MacRuby that could be used as a sample code, let us now. Creating
new sample code is cool, but porting an existing Objective-C sample
code is good too.
- Specs: working on the 1.8 -> 1.9 rubyspec transition (see Eloy's
message above). Eloy is currently doing all the specs maintenance
as well and I think he will not be against help :) Also, we
recently started writing MacRuby-specific specs, they need to be
extended. Finally, we need to start working on passing the core
specs (we only did language so far).
- Porting C extensions to the Ruby FFI API. We started working on a
compatible Ruby FFI API, we still have a plan to support C
extensions but not in the very near future and the performance will
not be great, FFI will be faster. Also if most of the well-known C
extensions have been ported, we might simply decide to not support
C extensions, which is one less thing to do. Also, working on Ruby
FFI-compatible libraries will make JRuby / Rubinius / etc. users
happy :)
- HotCocoa: I will leave this part to Rich and Matt, but I think
they will be mostly interested in mappings. Try to create a
HotCocoa app, then contribute mappings for things that do not exist
(or improve the existing ones by contributing custom methods, etc.).
- Core: there are lots of things to do, if you feel hacking on the
low-level bits. We maintain a TODO file which contains a few things
that still need to be done. At this point, the JIT compiler is
almost finished (AOT is maybe finished at 10%, though) and the VM
is still under development. A good way to start hacking is to run
the test_vm.rb test suite, pick a failing test and try to fix it.
Contributing new failing tests is also highly welcome, you can
simply use the miniruby executable and try to make it crash (it's
not hard, you will see).
- ... anything more? :)
Laurent
On May 29, 2009, at 6:57 AM, Eloy Duran wrote:
I haven't actively spoken about this with Laurent over the last
week, but afaik not much changed since last time, which means that
the support is not nearly far enough to start using it. We decided
that we want the FFI specs in the repo in order to finish this
work appropriately, which would need work to be converted from
RSpec to MSpec.
Luckily Brian Ford (from the rubyspec project) was already
planning on incorporating them. I haven't had time to check if
they're in yet. So this is another area where people could help
out. By porting the ruby-ffi specs to mspec and integrating them
into the rubyspec.
Cheers,
Eloy
On May 29, 2009, at 1:28 PM, Chuck Remes wrote:
How is progress on support FFI? That seems to be the new ruby-way
for interfacing to native code supported by JRuby, Rubinius and
to some extent the 1.9.x codeline. With FFI built in, as gems are
updated to support the other ruby interpreters and/or compilers
then MacRuby would be supported for "free" through those efforts.
cr
On May 28, 2009, at 11:42 PM, Matt Aimonetti wrote:
The other thing that needs to be done is to port/fix the popular
Ruby gems which don't work on MacRuby yet. Also, writing
wrappers for common obj-c libraries/frameworks would be very
useful.
If you are interested in writing tutorials/articles, feel free
to contact me offline so I can show you how to use our blog
engine tool. (I think Rich is planning on releasing a tutorial
on how to do that, but that might not happen right away)
- Matt
_______________________________________________
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
_______________________________________________
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
_______________________________________________
MacRuby-devel mailing list
MacRuby-devel@lists.macosforge.org
http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel