【发布时间】:2010-09-30 03:12:38
【问题描述】:
有没有办法在 JVM 上运行纯 c 代码?
不通过 JNI 连接,运行,就像你可以通过 JRuby 运行 ruby 代码,或者通过 Rhino 运行 javascript。
如果目前没有解决方案,您建议我应该怎么做?
显然,我想使用尽可能多的部分解决方案来实现它。
ANTLR 似乎是一个不错的起点,拥有完整的“ANSI C”语法实现...
我应该使用 ANTLR 生成的代码在 JVM 上构建一个“玩具”虚拟机吗?
【问题讨论】:
-
这很有趣.. 尝试制作一些 portable c 代码?
-
尝试在一个共同点(JVM)上交互不同的代码(来自不同的语言)
-
自从我查看 JVM 规范以来已经有很长时间了,但是 IIRC 试图防止数据类型转换过于快速和松散。如果情况仍然如此,那么您将无法在 JVM 上运行 C 程序。
-
并非如此。编译器可以为您插入不可见的数据转换。
标签: java c jvm antlr interpreter