使用Swift开源,在JVM上运行它需要什么?

时间:2015-06-09 01:39:53

标签: swift jvm llvm

我主要使用Objective-C和Swift进行编程,并且理解Apple在年底之前宣布开源Swift,以此作为后端编程的一部分。引用Craig Federighi(SVP工程)的主题演讲“我们认为Swift是我们将要进行应用程序和系统编程的语言”。系统编程的提及以及Linux的库将会提到使用后端开发语言的路径。

所以我的问题涉及两条可能的路径。一方面,Swift的page说“使用令人难以置信的高性能LLVM编译器,Swift代码被转换为优化的本机代码,可以充分利用现代硬件。”这意味着它必须是为我假设的每个目标硬件编译。这个假设是否正确?

另一方面,如果将Swift编译为JVM,我认为它会使Swift的采用范围更广,更快,因为它可以利用JVM的硬件独立性。

我想我的问题是:这两个假设是否正确?甚至可以将Swift编译到JVM中吗?如果是这样,那么每个目标硬件的本机代码有哪些优点和缺点。

我很想知道如果考虑如何考虑Swift的这种发展,这是否存在。

1 个答案:

答案 0 :(得分:1)

LLVM IR可用作平台无关的二进制分发方法。谷歌正是通过PNaCl做到了这一点。 http://www.chromium.org/nativeclient/pnacl/introduction-to-portable-native-client

我不知道JVM是否比LLVM IR更具优势,但它与锁定一种精确的二进制格式不同。