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

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