能不能做个这样的编译器,编程语言的语法是Java的语法,编译器会自动把它翻译成C语言的语法再进行编译?

有一个这样的语言,语法是类似 ActionScript3,叫 HAXE Haxe - The Cross-platform Toolkit,可以编译成 AS3、C++、Java、JS 等。一直没多少人用。
■网友
就是用Java的简单语法写出和C语言同等效率的程序。这是幻想
■网友
以前有人做过类似的东西,但是没有流行起来,因为这违背了JVM涉及的初衷。因为Java应用的场景多半是服务器端,实时性要求不会很严苛,这个时候要求Java bytecode有C/C++的运行效率是没有太大意义的
■网友
你是说编译成本机代码的话,完全可能,android runtime不就是么。不过pc上暂时没有,你可以去看看c# native。
■网友
这当然是可能的,因为所有语言最终都是以机器码的形式执行的。唯一的问题是,Java的GC(垃圾回收)机制怎么办?就像Android的ART,虽然有native的成分了,但仍然免不了需要Garbage Collector的支持,而很多时候Java的效率就会受这玩意儿影响。


    推荐阅读