I would argue the requirement is that each compiler is a stable project. But one language can have multiple compilers that aren't 100% compatible and implement slightly different subsets of the language (as long as there's a common subset libraries can choose to stick to)
Hopefully not for long:
https://github.com/ferrocene/specification
https://ferrous-systems.com/blog/the-ferrocene-language-spec...
Hopefully Ferrocene can lead to Rust itself being standardized.
To me, it seems inevitable that there will be multiple implementations of Rust, especially if Rust continues to be more widely adopted and used in new domains.
I would also not be surprised if Rust were to adopt optional language extensions for specialized use cases, similar to Ada's language annexes:
http://www.ada-auth.org/standards/22rm/html/RM-1-1-2.html
Why? Because the Rust implementation you use for video game programming does not need all of the same features as the Rust implementation that you use for safety-critical embedded systems (for example: railroad control software).
It is not a specification that standardizes rust or prescribes any behavior to the compiler. It's a specification that describes certain aspects of the behavior of the existing rust compiler. It's neither comprehensive nor is intended to be. It follows the changes in the compiler. If there's a mismatch between compiler behavior or the spec, the spec is considered faulty. It is also not sufficient to write a new compiler based on the spec.
As such, Ferrocene is not an effort to standardize rust. We consider the Ferrocene project a certified downstream of the rust project. Any push to standardize rust would need to come from the rust project itself. We have not intention to create any such standard.
That said, there is some interest in building a specification for the rust language in the project itself - here's the relevant RFC https://github.com/rust-lang/rfcs/pull/3355
(1) I am one of the managing directors of Ferrous
That is, the latter needs to balance the needs of a much, much wider array of customers (all rust compiler users) versus the former with a more specific target user base.
This introduces different requirements. Changes are far, far more likely to be permanent for example. Which means that the discussion around decisions needs to be different.
A thing does not need to be enterprise level to be useful or even very useful.
Heard it all a thousand times already.