4 ms·
Can you write python modules in rust? I would like to write small parts of my project as separate high performance modules, and I don't want to do it in C, it
by SimionBaws 11y ago
Can you write python modules in rust?
I would like to write small parts of my project as separate high performance modules, and I don't want to do it in C, it makes me sad.
- ynik 11y agoYes, here's a python module written in Rust: https://github.com/dgrunwald/rust-cpython/blob/master/extensions/hello.rs https://github.com/dgrunwald/rust-cpython/blob/master/extens... But anything more complicated than that (defining extension types etc.) isn't yet supported by the high-level bindings, and would need unsafe code using the python C API directly.
- sitkack 11y agoThis looks like it is tied irreparably to the CPython interpreter. One probably doesn't want to do this. Export a clean C compatible API and call via CFFI. This has the being callable from other languages, CPython and PyPy.
- mixmastamyk 11y ago^advantage of
- gthank 11y agoTL;DR Write it in Rust, export via FFI, bind from Python via cffi. The long version is: go watch this video from PyCon that will answer this question and probably others https://www.youtube.com/watch?v=3CwJ0MH-4MA https://www.youtube.com/watch?v=3CwJ0MH-4MA
- steveklabnik 11y agoThat video and a similar talk I've given at Ruby conferences inspired me to make a chapter for the book: http://doc.rust-lang.org/stable/book/rust-inside-other-languages.html http://doc.rust-lang.org/stable/book/rust-inside-other-langu...