Rust is very cool. It is a language I have been waiting for since 1999
But it is not ready for critical infrastructure for two reasons:
1) It is not defined. the definition of rust is "the compiler accepts it"
2) There is one implementation
I use rust for a lot of things, things that I really want to be solid and reliable.
But I would not want to use it for systems where lives were at risk.
That is not a domain I work in, so I am hazy on what is available but I know the avionics people have systems and processes. Have they adopted Rust yet?
Rust will be excellent in this space. But it needs definition and alternative implementations first. Probably will not be long.
While I’m not sure about avionics, there’s some aerospace and automotive uses in non-critical places. A version of the rust compiler is undergoing certification so that it can be, but that work is not yet complete.
Also, there are multiple implementations, though they are in various stages of completion.
I work in a safety critical critical software and we're starting to use Rust. Most other things at work are C or Ada, with a sprinkling of C++. Having a formal spec is nice I guess? But 90% of our chips are obscure special purpose CPUs anyway, so we're always trusting the vendors closed source version of gcc, and we find plenty of bugs. One of the upsides (from my perspective) of rust is that obscure platforms are less well supported, so we'll likely end up with an ARM core. This limits chip choices, but it means we end up using the same backend that apple does for their watch/phone/etc, which gives us a lot of confidence.
Sorry for the daft question. Just to clarify, do you mean that the vendor modifies gcc and doesn’t release the source, or that the vendor has its home-grown C compiler that is functionally equivalent to gcc?
But it is not ready for critical infrastructure for two reasons:
1) It is not defined. the definition of rust is "the compiler accepts it"
2) There is one implementation
I use rust for a lot of things, things that I really want to be solid and reliable.
But I would not want to use it for systems where lives were at risk.
That is not a domain I work in, so I am hazy on what is available but I know the avionics people have systems and processes. Have they adopted Rust yet?
Rust will be excellent in this space. But it needs definition and alternative implementations first. Probably will not be long.