On Feb 2, 2005, at 6:25 AM, Glenn Parker wrote:

> Ryan Davis wrote:
>> Releasing ruby2c 1.0.0 beta 1
>
> Care to offer any comparisons with Python Pyrex?
> http://nz.cosc.canterbury.ac.nz/~greg/python/Pyrex/

I've only taken a brief look, but from what I can gather Pyrex is a lot 
more like RubyInline than it is like ruby2c. In RI you can do things 
like this:

require 'inline'
class MyTest
   def factorial(n)
     f = 1
     n.downto(2) { |x| f *= x }
     f
   end

   inline do |builder|
     builder.include "<math.h>"
     builder.c "
     long factorial_c(int max) {
       int i=max, result=1;
       while (i >= 2) { result *= i--; }
       return result;
     }"
   end
end

and call both MyTest.new.factorial(5) and MyTest.new.factorial_c(5). 
Just by loading the "file" above, all of your argument and return type 
conversion is done for you, the code is exported, compiled, linked, and 
loaded back in (And only done when actual changes occur in the code I 
might add). No install.rb or setup.rb. No waiting. No extra phases at 
all.

--
ryand-ruby / zenspider.com - http://blog.zenspider.com/
http://rubyforge.org/projects/ruby2c/
http://rubyforge.org/projects/rubyinline/