I will say that C is a perfect low level language for bootstrapping more complex systems and languages. If I were building a bootstrap compiler I would write it in C and have it emit C. Specifically C89/99 ONLY with no POSIX/GNU deps. that will guarantee a large swath of compiler and system support out of the box.
"Part 64: Self-compilation on an 8-bit CPU"
Unlike how a bunch of projects end right as they start to get good, this has a great ending. Thank you
(2020)
Previously:
12 comments; 156 points. 2022 November 29. <https://news.ycombinator.com/item?id=33788013>
67 comments; 484 points. 2020 January 8. <https://news.ycombinator.com/item?id=21968420>
Very cool! I can’t imagine writing everything in C, I’m currently learning this in OCaml which seems nicer for a project like this.
> I can’t imagine writing everything in C
I will say that C is a perfect low level language for bootstrapping more complex systems and languages. If I were building a bootstrap compiler I would write it in C and have it emit C. Specifically C89/99 ONLY with no POSIX/GNU deps. that will guarantee a large swath of compiler and system support out of the box.
Perhaps using this: https://github.com/nlsandler/nqcc2
?
Wow that's super nostalgic. You're on a great path! After doing something similar, I switched to Haskell. Give it a go if you have the time.
Having it all in C brings back memories from "Compiler Design in C" a famous book for its time, printed in 1990.
https://holub.com/compiler/
I wrote a book in its spirit in 2012 with a second edition in 2022: http://t3x.org/reload/
It is called Practical Compiler Construction. The Compiler Writing Journey is based on it.
Thanks for your amazing work!
This hopefully can be useful as well https://space4links.com/r/writing-a-compiler
I feel like interpreters and compilers were trendy in 2015/2016, bu i'm too young to know. Am i right?
[dead]
[flagged]
<https://news.ycombinator.com/item?id=47340079>
How much of Claude was used?
Why must there always be a random guy on HN randomly mentioning Claude?
It was started 7 years ago.