[Ruby2c] Announcing ruby2c 1.0.0 beta 1

Ryan Davis ryand-ruby at zenspider.com
Tue Feb 1 20:47:27 PST 2005


After far too long, I finally have the dubious honor of releasing 
ruby2c 1.0.0 beta 1 today. I'm itching to do it, we really need to get 
it out there so people can get their eyes on it and give us feedback. 
I'm also nervous as hell... the thing is a mess!

Understand what we mean by beta. It means we need eyes on it, it means 
it was ready enough to put out in the wild, but it also means that it 
isn't ready for any real use.

  What can it do?

Well, currently it can pass all of its unit tests (325 tests with 512 
assertions) and it can translate nice simple static algorithmic code 
into C without much problem. For example:
& cat x.rb
class Something
   def blah; return 2+2; end
   def main; return blah; end
end
& ./translate.rb x.rb > x.c
& gcc -I /usr/local/lib/ruby/1.8/powerpc-darwin x.c
x.c: In function `main':
x.c:17: warning: return type of `main' is not `int'
& ./a.out
& echo $?
4

  What can it not do?

More than it can.

It can't (and won't) translate dynamic code. Period. That is simply not 
the intent.

It probably can't translate a lot of static code that we simply haven't 
come across or anticipated yet. Our tests cover a fair amount, our 
validation runs cover a lot more than that, but it is still fairly 
idiomatic ruby and that puts us at being better at certain styles of 
coding and much worse at others.

It is also simply rough around the edges. We've rounded out the rdoc 
but haven't done a thing for general documentation yet. These are on 
our list, and rather high on our priority list, but we just haven't had 
the time yet. For now, check out the rdoc and the PDF presentation that 
we've had up for a while.

PLEASE: file bugs! We need feedback and we'd like to be able to track 
it. The ruby2c project is on rubyforge and I'm getting the trackers set 
up today as well.



More information about the ruby2c mailing list