1. 66

  2. 9

    I’m excited to see Rust growing up :) Great work @skade, and thanks for the educational resources that Ferrous Systems provides (such as Elements of Rust).

    1. 4

      I have to say though that most credits in this space go to James Munns (@bitshiftmask) :).

    2. 3

      I myself would appreciate a Rust compiler going into GCC. It’d make cross-platform (particularly for things LLVM, let alone rustc, doesn’t support) much better, and if said compiler was written in C, resolve bootstrapping problems with rustc.

      1. 2

        LLVM is currently making great strides towards more embedded targets and also has some advantages ins this space.

        That being said, a Rust frontend for GCC would be a cool thing. That isn’t in scope for this, though.

      2. 0

        I think it’s a great effort, but I really dislike the impact sealed would have on the standard library, considering that the deprecation policy for stable things is already “never”, regardless of how broken things are (see env::home_dir).

        1. 4

          Considering the space we’re aiming at, libcore is more of our initial concern. Whether to ever even support libstd is a good question. Rust is fully capable of just using a different libstd replacement, which in such areas is highly likely. Public crate support is also rather unlikely.

          I’m not sure what you are getting at with the deprecation policy, the usage of this function can be effectively avoided by setting the deprecation lint higher.

          1. 1

            I could make https://lib.rs show only “sealed-compatible” crates to users, and maybe even expose that as a cargo-compatible registry. Rust ecosystem already has stable vs nightly, std vs no_std subsets.

            1. 2

              Yep, all those things are options. Rust has always been about being the base for multiple ecosystems, so I see no conflict there.

              (Is lib.rs currently okay? It seems to redirect to crates.io)

              1. 1

                (Is lib.rs currently okay? It seems to redirect to crates.io)

                I was witnessing problems like these but it seemed to get better just now.

        2. -6

          Rust has no specification, which means that there is nothing to distinguish between unintended implemented behaviour, and intended implemented behaviour, for anyone who wishes to create a new rust compiler, or port it to another platform. It also means that the behaviour of arbitrary elements can be ‘fixed’, and potentially the meaning of currently working programs to be changed in a negative way. Thus rust shall, while it has no specification, remain less adequate than Ada for use in the “Safety Critical” domain. If you want Rust to operate in that domain, you need a spec.

          1. 40

            Please read the article. It goes at great length to sketch out a long term plan to arrive at this spec, to then get Rust certified. The planned ToC also contains a whole document with a complete plan for the specification.

            There’s ample previous work done for Rust already, Ownership and Borrowing is formally proven and a memory model is far in the works, together with a checking interpreter (miri). Type resolution is being rewritten and a huge part of that is moving to an exact specification of how it actually works.

            The plan is also informed by speaking to multiple companies that got LLVM-based compilers through certification, so it’s not like we’re just writing down wishes.

            1. 1

              Please read the article.

              The parent post appeared to be talking about /now/, and your article was clearly talking about /the future/ – in your post you even go so far as to call the plan a “moonshot”, and “likely many full time developer-years of effort”. Even seems like a soft call for funding in there.

              So I don’t see how your “please read the article” comment is fair?

              Note: I /do/ think the goal is laudable, and exciting.

              1. 17

                The parent post appeared to be talking about /now/,

                Talking about /now/ independent of the article isn’t really pertinent to a discussion on the article, is it? Especially since the article addresses the content of the comment in question. I’d say @skade’s request to read the article was reasonable.

                1. 10

                  I mean, it’s abundantly clear from the article that Rust doesn’t have a specification yet, nobody is contesting that. “Rust has no specification” is quite nonsensical as a comment on a post talking about plans to specify Rust.