• JackbyDev@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months 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?

    • underscores@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      2 months 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

      • Giooschi@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        5 months 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

        • underscores@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          2 months 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.’