Bootstrapping eines Compilers: Warum?

ich versteheWie Eine Sprache kann sich selbst booten, aber ich konnte nicht viel Referenz findenWarum Sie sollten Bootstrapping in Betracht ziehen.

Die intuitive Antwort lautet, dass die von Ihnen geschriebene Sprache Dienstprogramme bietet, die nicht in der "Basissprache" des Compilers enthalten sind.und Die Funktionen der Sprache sind für einen Compiler relativ gut geeignet.

Zum Beispiel wäre es sinnvoll, einen C ++ - Compiler zu booten - es könnte möglicherweise viel einfacher sein, den Compiler zu warten, wenn OOP ordnungsgemäß verwendet wird, als wenn einfaches C verwendet wird.

Auf der anderen Seite macht MATLAB Matrixmathematik sicherlich viel einfacher als einfaches C, aber ich sehe keine offensichtlichen Vorteile, wenn ich einen MATLAB-Compiler / -Interpreter in MATLAB schreibe - es scheint so, als würde es werdenWeniger wartbar. Eine ähnliche Sichtweise könnte auf die Programmiersprache R angewendet werden. Oder ein ziemlich extremes Beispiel wäre BootstrappingLeerzeichen, der in Haskell geschrieben ist - auf jeden Fall eine massiveSuperSatz von Whitespace.

Ist der einzige Grund für das Bootstrapping, die Funktionen der neuen Sprache zu nutzen? Ich weiß, dass es auch die Begründung "weil wir können" gibt, aber das ist nicht das, wonach ich suche :)

Antworten auf die Frage(11)

Ihre Antwort auf die Frage