
[source:ruby]sudo gem install RubyInline[/source]
Depois de instalado você pode fazer algo assim:
[source:ruby]
class MyTest
def factorial(n)
f = 1
n.downto(2) { |x| f *= x }
f
end
inline do |builder|
builder.c ”
long factorial_c(int max) {
int i=max, result=1;
while (i >= 2) { result *= i–; }
return result;
}”
end
end
[/source]
De acordo com o autor deste gem (Ryan Davis) o ganho de performance é considerável. Se você precisa desenvolver algo que deve ser executado mais rápido do que Ruby lhe permite, esta é uma alternativa interessante.