目录

编程语言自举

什么是自举

Go1.5完成了自举,也就是说Go现在的编译器就是用Go语言本身写的

编译器也是一个二进制程序,作用就是把语言代码的文本翻译为机器平台对应的二进制可执行文件,机器平台二进制可执行文件可以和汇编语言指令一一对应,每个汇编指令都有其对应的二进制格式的机器码

比如我现在要发明一个E语言,我现在用C语言写一个E语言的编译器然后将这个编译器编译为二进制,这样我们就可以用这个C语言写的E语言编译器去翻译E语言代码了

接着我用E语言实现写了和C语言的那个编译器同样功能的编译器,然后用C编译器编译这个E写的编译器,那么就可以用E写的编译器编译E语言了,这就完成了自举