R
Roger Pack
Currently I am thinking that an optimizer that takes
class A
def one_thing
calls_another 3
end
def calls_another a
a.to_s
end
end
and converts it to C, such that one_thing calls another *in c* would be
a good JIT.
ex:
VALUE
one_thing_in_c(VALUE self) {
return calls_another(NUM2FIX(3));
}
VALUE to_s = rb_intern("to_s");
VALUE calls_another(VALUE self, VALUE in) {
return rb_funcall(in, to_s);
}
Any thoughts on this? Ideas? Suggestions?
This seems to be the next step for ruby2cext (which almost does this,
but not quite).
Thanks much.
-=r
class A
def one_thing
calls_another 3
end
def calls_another a
a.to_s
end
end
and converts it to C, such that one_thing calls another *in c* would be
a good JIT.
ex:
VALUE
one_thing_in_c(VALUE self) {
return calls_another(NUM2FIX(3));
}
VALUE to_s = rb_intern("to_s");
VALUE calls_another(VALUE self, VALUE in) {
return rb_funcall(in, to_s);
}
Any thoughts on this? Ideas? Suggestions?
This seems to be the next step for ruby2cext (which almost does this,
but not quite).
Thanks much.
-=r