Rubinius

Rubinius是一個主要用Ruby語言實現的Ruby虛擬機

Rubinius是一個主要用Ruby語言實現的Ruby虛擬機,它的底層實現包括少量C,不過這部分也會在將來用Ruby來重寫。
·・它是基於位元組碼的,這意味著它能夠很好的解決性能問題。
・它是可插拔的,架構非常的乾淨,這意味著諸如垃圾回收和對象記憶體等問題,能夠轉換使用另一種算法。
・它被設計成執行緒安全的(儘管還沒有達到真正的執行緒安全),並能支持多個虛擬機
・它可以與現有的MRI擴展一起工作。
・大部分的代碼用Ruby編寫。
・它能夠給你直接從Ruby代碼,訪問所有內部結構的能力(比如MethodContexts/BlockContexts等)。
・這個項目使用Valgrind(一套調試、分析Linux程式的工具)來保證編寫的C代碼萬無一失。
Rubinius正在贏得越來越多的支持,許多Ruby VM的開發者都堅信它前途不可限量。
理由之一是它的模組化設計及其展現內部結構的方式。對於新上手的開發人員而言,Rubinius的內省機制(introspection)是一項很體貼的設計。在Ruby中,我們已經可以很方便得通過諸如obj.methods(返回obj的方法列表)的方式觀察Ruby類。而Rubinius則做得更上一層樓,你甚至可以訪問代表代碼數據結構的抽象語法樹(Abstract Syntax Tree,AST)。Rubinius使用ParseTree,通過標記和嵌套列表展現其結構。

相關詞條

熱門詞條

聯絡我們