1. ホーム
  2. c#

[解決済み] C#コンパイラはどの言語で書かれていますか?

2022-04-26 02:30:10

質問

のソースコードを見てみました。 http://referencesource.microsoft.com/ とありますが、すべてのソースコードはC#で書かれているようです。

また、新しいC#コンパイラプラットフォームのソースコードを見てみると( ロスリン ) で、それもC#で書かれています。どうしてそんなことが可能なのでしょうか?C#言語のコンパイラはC#で書かれているのでしょうか?それとも、私は何か明らかなことを見逃しているのでしょうか?もしC#言語のコンパイラがC#で書かれているとしたら、それはどのように動作するのでしょうか?

どのように解決するのですか?

オリジナルのC#コンパイラーはC#で書かれておらず、CとC++で書かれていた。新しいRoslynコンパイラはC#で書かれていますが、最初は古いコンパイラでコンパイルされていました。新しいコンパイラーが出来上がると、自分自身のソースコードをコンパイルできるようになりました:これは、次のように呼ばれます。 ブートストラップ .