
Java
你想使用哪种语言来实现都可以。不过,可别期望你做出来的这个东西能极大地改变自己的命运。当下主流的编译器,特别是后端方面,有两个是比较多人使用的。其一是用
Java编写的JVM,Graal就是
Java编写的后端,像Scala、Kotlin、Groovy、Clojure这些语言,都是使用这个后端的,还有很多脚本,例如Graal.
JS、J
Ruby等也是如此。另一个是LLVM,这是由
苹果大力赞助的,Clang就更能体现这一点了,Clang之所以能够被开发出来,主要就是因为
苹果有需求,所以出钱让当时还在UIUC读博士的拉特纳不断进行研发。目前使用LLVM这个后端的语言,在前端方面有
Swift、Rust、Zig、Mojo等。这两者基本上涵盖了市面上大半的主流语言。还剩下一个比较知名的是
Google旗下的语言,例如Dart、Go等,这些都是
Google开发的。不过,
Google没有打造一个通用的多语言编译器后端,这一点和
Java / Graal以及LLVM不同,
Google是独立发展的,但也取得了不少成果。这三个基本上包含了市面上如今仍在使用且还有一定用户量的大多数语言和工具了。至于用什么来编写,随你喜好就好。现在自己开发一个语言其实并不难,Graal就有页面手把手教你实现一个简单语言。