Скомпилируйте Ruby с его API C

Если я возьму рубиновый код

puts "Hello World!"

и перепишу его с помощью C API Ruby

#include "ruby.h"

int main() {
  ruby_init();

  rb_funcall(Qnil, rb_intern("puts"), 1, rb_str_new2("Hello World!"));

  ruby_finalize();
  return 0;
}

и скомпилируйте его, это способ компиляции кода Ruby?

Если я создам программу, которая использует Ripper для анализа кода Ruby и переписывает его как C, я могу называть ее «компилятором Ruby» ? Есть какой-то рубиновый код, который нельзя переписать на Ruby таким образом? Неужели кто-то пробовал написать такой "компилятор" раньше?

7
задан Guilherme Bernal 24 May 2011 в 15:55
поделиться