This is why we need more reasonable bootstrap sets. We need simple compilers that can be written in assembly, that can bootstrap bigger compilers. Languages should be written in a subset of themselves, a subset that’s easier to translate to C. Then you ship that C version or at least a translator to C, and let people compile all the way up.
If smalltalk could be translated to C to bootstrap Squeak, so can your other favorite languages. And it’s crazy that we seem to need gcc/clang to do anything, and can’t bootstrap from assembly, ever.
This is why we need more reasonable bootstrap sets. We need simple compilers that can be written in assembly, that can bootstrap bigger compilers. Languages should be written in a subset of themselves, a subset that’s easier to translate to C. Then you ship that C version or at least a translator to C, and let people compile all the way up.
If smalltalk could be translated to C to bootstrap Squeak, so can your other favorite languages. And it’s crazy that we seem to need gcc/clang to do anything, and can’t bootstrap from assembly, ever.