Improve extension API: C++ as better language for extension
Kouhei Sutou • September 18, 2017 • Hiroshima, Japan
RubyKaigi2017
http://rubykaigi.org/2017/presentations/ktou.html
This talk proposes better extension API.
The current extension API is C API. In the past, some languages such as Rust (RubyKaigi 2015), Go (Oedo RubyKaigi 05), rubex (RubyKaigi 2016) were proposed as languages to write extension.
This talks proposes C++ as a better language for writing extension. Reasons:
- C++ API can provide simpler API than C API.
- C++ API doesn't need C bindings because C++ can use C API including macro natively. Other languages such as Rust and Go need C bindings.
- Less API maintenance cost. Other approaches need more works for Ruby evolution such as introduces new syntax and new API.
RubyKaigi 2017