我想为我自己的编程语言制作一个编译器。流行的后端选择似乎是 C、Java、LLVM、JVM 字节码、.Net 字节码、gcc、程序集......在这里,我正在考虑将 Go 作为后端的可能性。
Go显然是一种快速的语言,具有垃圾收集和快速编译时间。它也是可移植的和免费的(BSD 风格的许可证)。我认为,所有这些都将使 Go 作为代码生成目标成为一个不错的选择,甚至可能比其他选项更好......所以我很惊讶我找不到任何人已经这样做了。
Go 会是代码生成的好选择吗?你能指出现有的项目这样做吗,或者解释为什么没有?或者更好的是,你有使用 Go 语言作为后端的经验吗?有什么我不知道的缺点吗?