用Java写Java编译器?编译自举及其原理( 二 )

4、当你觉得有信心了,用A.exe把B编译一遍,就得到了B.exe。然后A的代码和A.exe都在也不需要存在了,删掉他们。以后你就不断的用B.exe来编译下一个版本的B就好了。就自举了。

所以为什么要用自举?自举能带来什么好处?

自举其实是为了证明语言的表达能力,同时语言的设计者也可以通过这样一个实际的复杂的项目来验证语言的设计。

同时自举也能方便后续开发人员对语言增加新特性且不用依赖其他语言,实现自我迭代和进化。

推荐阅读