3 ms·
IMO 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
by adgjlsfhk1 3y ago
IMO 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>Ferrocene does. Is there FAA/EASA certified rust SW on a commercial airplane above DAL E? If not ferrocene potentially does. >For a programming language, it must have an ISO standard Which is also not what I am saying. It is obviously not important that it is an ISO standard (the DO certainly has no such Requirement), but you need some documentation which specifies the language. For C/C++ that is trivial, as it is standardized, for rust it isn't. I fully agree that you can conform to the DO by having a company like Ferrocene which provides that documentation. And that has a compiler toolchain which states how it complies with the specification. And I am glad that they are doing this, as this is a step in the right direction.