用 RubyInline 讓 Ruby 把工作分給其他語言
inline, java, native, ruby at March 15th, 2008 by 小影
在 C 語言冒起的年代,當人們需要更高的效能時,他們會在 C 中插入組合語言。在 Java 冒起的年代,人們需要更高的效能時,會使用 JNI 呼叫 C 的源碼。同樣,Ruby 也容許程式把工作交給其他語言。 很多重要的 Ruby 庫例如 mongrel、eventmachine、hpricot 也是由 native 和 ruby 合作而成。雖然在 Ruby 裡使用 C 寫 extension 也算很簡單 (比 JNI 好得多吧?!),然而在使用它仍需要不斷的作 context switching。 於是就有人想到 RubyInline 。 它是受到 Perl 的 Inline.PM 啟發而寫成。就如其名,它讓我們可以在 Ruby 中直接 Inline 寫 C 或 C++ 源碼: 安裝 einstein:lib siuying$ sudo gem install RubyInline Successfully ...