first they had machine code
then they wrote the assembler in machine code
then they rewrote the assembler in assembly
and assembled it with the machine code assembler
then they wrote the C compiler in assembly
and assembled it with the assembly assembler
then they rewrote the C compiler in C
and compiled it with the assembly C compiler
then they had the C compiler
and everything else was written in C

(note: this is a massive oversimplification and ignores much of the history of programming languages, but it at least gets across the idea of how bootstrapping is done)

Malgas
link
fedilink
English
11Y

Also the first version of a new compiler (the one written in another language) is often skeletal, implementing only the features necessary to compile the full version (written in its own language), which is then immediately used to recompile itself.

Indeed. And the machine code is created as part of the physical CPU design.

And then we fucked it all up by writing the JavaScript interpreter.

Blame the Brave CEO

Create a post

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

  • Posts must be relevant to programming, programmers, or computer science.
  • No NSFW content.
  • Jokes must be in good taste. No hate speech, bigotry, etc.
  • 1 user online
  • 120 users / day
  • 257 users / week
  • 744 users / month
  • 3.72K users / 6 months
  • 1 subscriber
  • 1.47K Posts
  • 32.2K Comments
  • Modlog