2 ms·
This sounds very good. Rust has inherent "x-th mover" problems in spaces where C or C++ is dominant and hard to replace, like automotive and aerospace. These ar
by constantcrying 3y ago
This sounds very good. Rust has inherent "x-th mover" problems in spaces where C or C++ is dominant and hard to replace, like automotive and aerospace. These are also the spaces where a language with stronger guarantees and which can target embedded real time devices, is more useful than almost everywhere else.
For rust to succeed in those spaces a "community compiler" is just simply not an option. Having a standardized language (which is still not there yet) with a qualified compiler toolchain would be a significant step forward and actually makes it perspectively possible to use rust on projects for commercial aviation.
- adgjlsfhk1 3y agoIMO a standardize language isn't necessary. Pretty much no C compilers actually follow the C standard exactly (including verified ones). Also it's not like the C standard actually prescribes behavior in lots of cases. Tons of C is UB or implementation defined behavior.
- constantcrying 3y agoTo some extent you certainly need a standardized language and I don't think having rustc as the "defacto" standard is in any way acceptable to use it on an airplane. A compiler not complying with the standard is also not that problematic, as long as the deviation is known. UB should be avoided under all circumstances, but it is inherent to any language as spread out as C.
- steveklabnik 3y ago> To some extent you certainly need a standardized language Because we're talking standards, precise wording is important. You do not need a standardized language in order to produce a qualified compiler. > I don't think having rustc as the "defacto" standard is in any way acceptable to use it on an airplane. This is true but not because it's a "defacto standard," it is because rustc does not fulfill the requirements to be qualified. Ferrocene, on the other hand, does. > A compiler not complying with the standard is also not that problematic, as long as the deviation is known. You're correct here, but that's directly in conflict with the "you need a standardized language," which is why I'd disagree with that portion of what you've said here.
- constantcrying 3y agoOn the specific point of standardization. I do not see how you could get a language without a standard into an aircraft. The Ferrocene guy mentioned that they worked on some formalization of rust, probably because tracability without it seems sonewhat impossible and maybe that is already enough for the FAA/EASA.
- steveklabnik 3y agoI wrote a more lengthy comment about that here: https://news.ycombinator.com/item?id=36792336 https://news.ycombinator.com/item?id=36792336 But you said it yourself: deviation from a standard is fine. There is no requirement that there is some sort of upstream standard that must be adhered to.
- constantcrying 3y agoI do not think it is possible to use rust on a commetcial airplane, above DAL E. See the DO-178(B) 11.8 a. "For a programming language, reference the data that unambigously defines the syntax, the control behaviour, the data behaviour and side-effects of the language". If the language has no standard, like rust, you have to essentially create a standard. Afaik rust has no documentation which satisfies those requirements in any way.
- steveklabnik 3y agoI don't think that we're understanding each other, so I'm going to leave it for this post. But this supports what I am saying. This does not say "For a programming language, it must have an ISO standard, and the implementation must be in full compliance with the standard." > Afaik rust has no documentation which satisfies those requirements in any way. That is correct, Rust does not. Ferrocene does. And that's perfectly fine according to the requirements.
- constantcrying 3y ago