1. 5

  2. 1

    I love FFI. When interfacing to sqlite in jruby, ffi’s performance absolutely destroyed the alternative (which in my case was dbi –> jdbc –> cross-compiled (not to mention stale version) sqlite.so running in an emulated MIPS machine!). It’s easy to work with, too, and extending it to support that one function the original binding author omitted is a breeze. Too often I found traditional C bindings suffered from “premature rubification” which made extending them difficult, not to mention rendering all the existing library documentation obsolete.