3 ms·
> Rust is not supported for end-developers. It's unclear where this restriction comes from. Also, it is quite sad to see that they use and allow C for such a n
by xvilka 7y ago
> Rust is not supported for end-developers.
It's unclear where this restriction comes from.
Also, it is quite sad to see that they use and allow C for such a new and innovative project.
- iainmerrick 7y agoI believe it just means they don’t intend to provide a standard toolchain and SDK for Rust. That seems fairly reasonable given that Rust doesn’t have a stable ABI (https://github.com/rust-lang/rfcs/issues/600 https://github.com/rust-lang/rfcs/issues/600). Making sure Rust apps are forward-compatible with new OS releases could be difficult. In comparison, C has the best ABI story and can easily be used to enable other languages at the application level. Apart from that, they seem positive about Rust and they’re willing to use it for internal code. Note that they discourage further use of C for internal code. I was a little surprised not to see slow compilation times listed as a con, but I guess that’s a trade-off they’re explicitly willing to make for a kernel that runs fast.
- steveklabnik 7y agoFuchsia exposes services via FIDL, so the lack of stable ABI isn't as big of a deal.
- kelnos 7y agoNot supported, but I expect that some enterprising individuals, if there's enough interest, will write some rust bindings. They'll support a C ABI for end-developers, and rust's C interop story is just fine. And there's no telling about the future; the Fuchsia team is certainly allowed to change their minds later and add supported SDKs.