• JackbyDev
    link
    English
    1324 days ago

    Didn’t Rust itself used to have a compiler written in a different language? I mean, obviously it would’ve had to at some point but I think I remember reading about them abandoning it once they didn’t need it. Why not use that?

    • @[email protected]
      link
      fedilink
      11
      edit-2
      23 days ago

      You can technically do it, but it’s a convoluted path. The article talks about it. Basically to bootstrap that way you need to go through a lot of versions of rust, compile rust 0.7 in ocaml, compile ocaml in scheme, and compile scheme in C using gcc. For gcc you need to compile a chain of versions back to when it was written in C instead of C++, plus the whole TinyCC bootstrapping path.

      edit: had listed scala instead of ocaml

      • @[email protected]
        link
        fedilink
        English
        723 days ago

        compile rust 0.7 in scala

        Not sure if there was another rewrite, but AFAIK (and the article agrees with me) rustc was originally written in Ocaml

        • @[email protected]
          link
          fedilink
          1
          edit-2
          23 days ago

          Yeah, I wrote the wrong language. I tend to lump those together in my head as ‘big multi-paradigm languages I haven’t bothered to learn yet.’

      • JackbyDev
        link
        English
        524 days ago

        Ah okay. The article was a little over my head so I mostly skimmed it. This makes sense what you’re saying though. It’s easy to forget the level of bootstrapping they’re trying to do is all the way to assembly.

        It’s the sort of thing if you think about too long you’ll get paranoid and start using Gentoo exclusively lol.