Hacker News new | ask | show | jobs
by Derbasti 4258 days ago
It's not so much about efficient JITing, and more about the fact that Pypy is written in Python and does not have a C-backend.

That said, I advocate CFFI even in CPython--CFFI is a clean way of calling C libraries without having to

- write interface code in C (CPython extensions) - write something that is not C or Python (Cython) - use a compiler or linker (CPython extensions and Cython)

I have personally written nontrivial CPython extensions, Cython extensions and numerous CFFI bindings, and I vastly prefer CFFI over any of the alternatives. With CFFI, you write your interface code in Python, and dynamically load C libraries at runtime with no compiler/linker required. It's fast and easy.

Plus, it's all pure Python and thus one source file works across Windows/OSX/Linux and CPython/Pypy without modification or compilation. I really can't say enough good things about CFFI!