go是用什么语言实现的?

taatcc · 2019-07-29 12:04:55 · 1912 次点击

我知道的不会太准确。粗略的说,编译器最底层的部分(bootstrapping)是汇编和c作为基本go语言支持,然后在此基础之上用以前版本的go来写剩下的go编译器,这个编译器生成后能够完全处理当前版本的go语言。

#1
更多评论
polaris
社区,需要你我一同完善!

部分汇编肯定是存在的,任何语言都会存在,但不能因此说是汇编实现的。

#2

go之前是纯C写的,所以它只依赖libc库。 后来是完全能自举了,所谓的自己就是自己实现自己。 至于有没有汇编,没翻过源代码所以不好确定, 对于能跨硬件平台编译的高级语言来说,使用汇编来优化和提高性能的场合不多的。

#3