This topic has missing or partial documentation. Please help us improve it.
Байткод-компилятор Rubinius превращает исходный код на Ruby в байткод, исполняемый в виртуальной машине. В процессе трансформации входного языка в код, понятный виртуальной машине, байткод-компилятор выполняет серию последовательных операций.
Каждая из этих операций-стадий выполняется независимо от всего остального процесса, ожидая определенного материала на входе и передавая свой вывод следующей стадии. В результате этого весь процесс компиляции получается довольно конфигурабельным, а каждую отдельную стадию можно достаточно просто перенастроить.
Итак, каждая стадия получает ввод, выполняется и передает вывод следующей стадии. Ниже проиллюстрированы стандартные стадии вместе со своими исходными и выведенными данными.