5 ms·
> How about get an actual published language standard? I’m curious, did you Google before writing this comment? I did just now and the first result I found is
by testdelacc1 1y ago
> How about get an actual published language standard?
I’m curious, did you Google before writing this comment? I did just now and the first result I found is https://github.com/rust-lang/reference https://github.com/rust-lang/reference.
This is something the Rust project is taking very seriously. You can read up on their approach in this detailed blog post from November 2023 - Our Vision for the Rust Specification (https://blog.rust-lang.org/inside-rust/2023/11/15/spec-vision/ https://blog.rust-lang.org/inside-rust/2023/11/15/spec-visio...).
This is an ambitious and difficult project that is a work in progress. They’re continuing to work hard at it. There were 2 PRs merged to master less than 2 hours ago when I wrote this comment. On a Saturday, that’s commitment right there.
> How about get more implementations of it?
Here’s what another quick google search yielded. From the official Rust blog, published November 2024: gccrs: An alternative compiler for Rust (https://blog.rust-lang.org/2024/11/07/gccrs-an-alternative-compiler-for-rust/ https://blog.rust-lang.org/2024/11/07/gccrs-an-alternative-c...)
Hope that helps dispel the confusion around the lack of spec or alternate implementation.
- jmull 1y agoI hope this is clear: the published language standard the previous poster was asking about does not currently exist. You linked to efforts to create a specification, but they aren't done or close to done. It's also not clear the goal is to create a standard. E.g., according to the spec-vision document, the spec isn't planned to be authoritative (the implementation is). If that doesn't change the spec can't really function as a standard. (A standard would allow independent implementations and independent validation of an implementation. A non-authoritative spec doesn't.)
- testdelacc1 1y agoIf it is impossible to create an alternate implementation without a spec, is that contradicted by the existence of Gccrs?
- jmull 1y agoGccrs an effort to create an alternate compatible implementation. It hasn't yet created a generally usable compiler. I'm sure they would be among the most interested in a spec. They are currently forced to use the implementation (continuously evolving) as the spec. That makes their job considerably more difficult.
- mjw1007 1y agoThe plan described in "Our Vision for the Rust Specification", and the linked RFC3355, were abandoned early in 2024. The team that was formed to carry out RFC3355 still exists, though it's had an almost complete turnover of membership. They're currently engaged in repeating the process of deciding what they think a spec ought to be like, and how it might be written, from scratch, as if the discussion and decisions from 2023 had never happened. The tracking issue for the RFC was https://github.com/rust-lang/rust/issues/113527 https://github.com/rust-lang/rust/issues/113527 . You can see the last update was in 2023, at the point where it was time to start the actual "write the spec" part. That's when it all fell apart, because most of the people involved were, and are, much more interested in having their say on the subject of what the spec should and shouldn't be like than they are in doing the work to write it.
- testdelacc1 1y agoYour comment suggests there is no progress being made on the spec. The activity on this repo suggests the opposite - https://github.com/rust-lang/reference https://github.com/rust-lang/reference
- mjw1007 1y agoThere's still work being done on the Reference, which is being maintained in the same way as it has been since the Rust documentation team was disbanded in 2020. But it's a very long way from being either complete or correct enough to reliably answer questions about Rust-the-language. After the "write a new spec" plan was abandoned in 2024 the next stated plan was to turn the Reference into the spec, though they never got as far as deciding how that was going to work. That plan lasted six months before they changed direction again. The only practical effect was to add the paragraph identifiers like [destructors.scope.nesting.function-body]. They're currently arguing about whether to write something from scratch or somehow convert the FLS[1] into a spec. [1]: https://github.com/rust-lang/fls https://github.com/rust-lang/fls