Scala語言減少了中間層代碼
文章推薦指數: 80 %
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的瓶頸之...
帶你從底層詳細剖析Android性能落後於iOS之語言篇
一直以來Android性能一直落後於iOS,即使在Android系統的手機配置高於蘋果手機許多的情況下仍然處於下風,本文帶你從開發語言角度解釋其中的重要原因,大家都知道Android系統的應用程...