Scala語言減少了中間層代碼

文章推薦指數: 80 %
投票人數:10人

Scala是一種多功能的程式語言,結合了面向對象和函數式編程的特點。

現在,它的部署有了另一個選擇——不必再依靠中間層的虛擬機。

Scala已經實現了在Java虛擬機上運行,和通過Scala.js支持的JavaScript應用。

Scala現在有一個Scala Native項目,使Scala可以通過LLLVM編譯器支持編譯成機器碼。

它的Github頁面說,這個項目的目的是,減少Scala代碼運行的中間件。

École Polytechnique Fédérale的開發者Denys Shabalin說,通過使用AOT(ahead of time)編譯器,這個項目可以提高Scala在移動,遊戲和命令行應用方面的性能。

LLVM是給C和C++的組合式編譯器,也可以給Scala編譯成可以直接執行的應用。

在Github文檔的描述中說,「Scala Native通過LLVM進行AOT編譯。

沒有JIT那種緩慢的詞法分析。

你的代碼編譯之後就可以直接迅速執行。

Shabalin不滿於對JVM啟動速度的緩慢使他開始Scala Native這項工作。

「在AOT中,你是在啟動app之前編譯,所以速度上要快很多。

」他說道。

Scala有專門針對Intel和ARM處理器的輕量管理框架,所以也可以用於安卓和IOS應用中。

Scala Native還有一個保持底層原始的特性,用以確保應用通過開發者想要的方式工作,可以調用外部對象,運行原生代碼不受環境影響等。

Scala Native現在已經開發一年多了,現在是一個pre-release的狀態。

Shabalin稱會儘早發布第一個官方正式版本。

原文地址:Scala language moves 『closer to bare metal』

翻譯:賴信濤

責編:孫思


請為這篇文章評分?


相關文章 

WebAssembly,Web的新時代

在瀏覽器之爭中,Chrome憑藉JavaScript的卓越性能取得了市場主導地位,然而由於JavaScript的無類型特性,導致其運行時消耗大量的性能做為代價,這也是JavaScript的瓶頸之...