Well if you offer guidance and the target for 0.5 really is just "this
year" then I might be able to give it a shot and help out.
Of course that also depends on whether I get a job immediately after
graduation in August and how busy that keeps me.
On Mar 28, 2009, at 14:56, Laurent Sansonetti <lsansone...@apple.com>
wrote:
Most likely 0.6, unless someone volunteers to do it now :-)
Laurent
On Mar 28, 2009, at 12:48 PM, Jordan Breeding wrote:
Will OSA support be a 0.5 or a 0.6 task?
On Mar 28, 2009, at 14:37, Laurent Sansonetti
<lsansone...@apple.com> wrote:
Hi guys,
As some of you already noticed we have been working on a branch
for a few weeks and I thought it's now time to describe what has
been done and were we are going exactly.
I wrote a blog entry here:
http://www.macruby.org/blog/2009/03/28/experimental-branch.html
2 big features in this branch: a LLVM-based JIT compiler and a new
IO subsystem. Obviously performance-related, we really need to be
faster.
Current status of the branch:
- The compiler is now able to pass most of the Ruby AST. It
compiles nodes directly from the parser in a lazy fashion.
- Only JIT compilation for the moment (AOT is planned for later).
- The VM is still under development, it's not as complete as the
compiler yet.
- Early performance benchmarks are very promising.
- By the time of this writing, we pass the vast majority of the
language RubySpecs (a week ago we weren't even able to even
bootstrap mspec!), about 1190 expectations. Work is very active in
this area, we are also making sure the specs do run with the
original Ruby 1.9 and writing missing specs.
- The new IO subsystem is mostly functional, but there are still
many methods that are not implemented yet and we are working on
this. Once it will be complete we will integrate a default runloop
in the VM and expose asynchronous IOs.
For the near future, the goals are:
- Improving the compiler. Currently compile time has not really
been optimized yet.
- Be able to run IRB. We are almost there.
- Remove the libffi code used to call C/ObjC implementations and
instead JIT compile stubs and insert them in the dispatcher cache.
We should be way closer to ObjC then (and maybe faster once we
enable secondary compilations of hotspots and inline the stubs).
- Rewrite the BridgeSupport side using LLVM types.
- Implement full concurrent threading! (this is a big one :-)).
- And many more (check the TODO file for more info).
Once we arrive at a point when the branch is as functional as
trunk, it will be merged in trunk and we will then work on
stabilizing it, to later on release it as 0.5. The schedule for
this release is unknown, it will be released when it will be ready
(preferably this year though).
If you want to help let me know!
Laurent
_______________________________________________
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