奇思妙想 / 编程语言 / 编译 / 解释 · 2023年 10月 9日 0

编译器/解释器用什么语言编写?

284 次浏览

谈到编程语言本身,我们不由会想到它们的编译器或者解释器是用什么语言编写呢?一般而言,语言A诞生之初,一定是已存在的另外一种语言写它的编译器,等编译器完成后,就可以用语言A本身写它的编译器。

  • GCC
    • 早期用C语言,最新用C++.
  • MSVC
    • C/C++.
  • Clang
    • C++.
  • Java编译器
    • 最早是C语言编写,最新主要用Java编写。
  • Java HotSpot
    • C++
  • C#编译器
  • Perl解释器
    • C
  • PHP解释器
    • C
  • Python解释器
    • 官方采用C语言,即CPython,还有Jython(Java)/IronPython(C#)/PyPy(Python子集)等实现。
  • JS解释器
    • V8: C++, Node.js构建在V8之上,一样是C++.
  • Go编译器
    • 最早是C语言,后面用Go语言重写。
  • Rust编译器
    • 最初是Ocaml语言编写,2011年用Rust语言自举。

软件都用哪些编程语言写的?