我在寻找像Java一样的其他平台无关的编程语言。
还有其他的平台无关语言吗?
谢谢
我在寻找像Java一样的其他平台无关的编程语言。
还有其他的平台无关语言吗?
谢谢
平台无关不是一个完全明确定义的术语。对于不同的人来说,它可能意味着不同的东西。例如,有些人说C是平台无关的,而其他人则说它不是。有时,人们会费尽心思地让C代码与configure(1)配合使用,以便它可以在许多不同的平台上编译。这是否意味着可以编写平台无关的C代码,但并非所有的C代码都是平台无关的?
也许Java(+其他运行在JVM上的软件)被认为是PI,因为它们定义了一个平台,而不同的机器则实现了该平台。但它们并不总是做得很好--例如,某些JVM(特别是早期的JVM)存在其他平台上没有的错误。当然,您也可以编写链接到本机代码的非纯Java代码 - 它肯定不是平台无关的。
一些答案认为脚本语言是平台无关的。告诉那些想要在IE6、IE7、FF、Chrome、Safari等浏览器上运行javascript的人吧!
因此,你需要更详细地阐述“平台无关”的含义或者问这个问题的原因。
这取决于你对平台无关的理解:
Ruby、Lisp、Scheme、Scala、Clojure、Python、Perl、PHP、C#(通过Mono)...
说实话,这个列表可以不断增加。更容易的方法是缩小您对平台无关性的定义,或者询问哪些语言是平台相关的。
列举平台相关语言可能更容易。
Java是平台无关的,因为它运行在Java虚拟机(jvm)上。还有其他一些语言也运行在jvm上,它们当然也是平台无关的。Scala就是一个例子。
我的建议是Scala。你可以在JVM上使用所有的Java API,并且拥有一种更简洁、更强大和更清晰的语言。