Follow

It's kind of fun thinking of "bootstrapping" a trusted compiler from some old sources. Like some sort of master handing down their tools to the apprentice.

"Now, I bestow upon you my most trusted C compiler...artisanally compiled from ancient scrolls using only an 8088 chip"

The oldest thing I have is also the first C compiler I ever used, the ECO-C88 on 5.25" floppy.

p.s. Also I just looked up that Ken Thompson paper, and it credits "[4] Unknown Air Force Document" for the idea (!!)

· · Web · 3 · 1 · 2

"Fun" in the sense that I'd probably rather try to build a really old GCC than determine why "some unit test" is overwriting a global in 's tempdir so that it's unicode not "str" and then everything is sad. Because there's still Python2 code.

@vu3rdd Hmm, I think maybe I have (or something like it). Great stuff! I didn't know Guix was using it, cool.

@meejah I'm pretty sure YACC is an assembly-only compiler that's very easy to manually audit and is used to build a copy of GCC that's then used to build a GCC-built GCC, eliminating the Thompson issue.

@vu3rdd Oooo, dang, bootstrap a Haskell compiler. That's the bonus question after the "C compiler" part, right? ;)

@meejah :-) GHC is written in GHC itself. Early GHC was written in LazyML, I think. Some sources of LazyML are available, but I don't know if a version of GHC that can compile with LazyML is available. I haven't been able to dig out very old versions of GHC. Most of the ftp sites are dead. Internet Archive does not have anything from them.. so it is a dead end there.

Sign in to participate in the conversation
Mastodon

Server run by the main developers of the project 🐘 It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!