没有语言运行时的基于JVM的语言

时间:2010-09-08 11:39:49

标签: android jvm runtime mirah

有没有人知道一些替代的JVM语言,不管它多么模糊,可以编译成普通的旧java字节码,而不需要语言运行时。

我需要这个,以便尝试开发没有启动或大小惩罚的Android应用程序。 Scala,Clojure和Groovy都需要与应用程序一起分发自己的运行时库,因此它们超出了这个问题的范围。

唯一一种声称能够满足这一目标的语言是Charles Nutter的Mirah,但我无法在Windows上工作。

编辑:为了澄清一点,我知道任何语言都必须有运行时库。显然,我正在寻找的是一种除了JRE之外不需要额外运行时的语言,或者至少非常有限的语言。

2 个答案:

答案 0 :(得分:6)

没有我能想到的(也许是Mirah,这是实验性的,至少需要一些其他类我猜)。每种语言都需要运行时来完成您想要完成的任务。

唯一的区别是您的设备上已有多少可用的类。 如果您开发Java并且只使用设备上已有的库,那么您的应用程序将非常小。

虽然它可能不是解决您问题的最佳方法,但您是否考虑过使用ProGuard? ProGuard可以删除特定程序中未使用的部分运行时。

如果速度和时间真的关键,那么另一种方法就是使用NDK(C / C ++)。

答案 1 :(得分:1)

Xtend有一个超级库(100kb),它直接委托给JDK和Guava。