3 ms·
Yes, that is what I was referring to. Calling sin() is not enough. It's messy but C programs need more than that. And I was also referring to the similar iss
by chubot 9y ago
Yes, that is what I was referring to. Calling sin() is not enough. It's messy but C programs need more than that.
And I was also referring to the similar issue in Go where calling C -> Go and Go -> C isn't symmetrical. Not sure if that's true for Rust or not.
- pcwalton 9y ago> It's messy but C programs need more than that. Of course they do. That's why Rust has a sophisticated tool, bindgen, which is used in production right now in Nightly Firefox (among other places) to export complex C++ interfaces in both directions across the language boundary. > And I was also referring to the similar issue in Go where calling C -> Go and Go -> C isn't symmetrical. Not sure if that's true for Rust or not. It's not. You just write "#[no_mangle] extern" on your function Rust and C can easily call it, with a stable ABI. In order to meaningfully criticize Rust's FFI, you need to be aware of how it works.