2011-02-08 138 views
4

我在爲我的應用程序搜索嵌入式語言。申請書寫在純粹的斯卡拉。我想在運行時添加一些功能。我有問題,scala嵌入比groovy嵌入更快嗎?嵌入式Scala和嵌入式Groovy

回答

1

據我所知,有一些努力來實現使用語言「作爲腳本語言」所必需的Java API(腳本語言支持,JSR 223),但是我不確定這樣做的效果如何。

Scala整體上比Groovy更快,因爲它更接近JVM可以快速執行的成語。

但是Groovy確實是用於JVM的腳本語言之一。還應該支持一起構建Java/Scala/Groovy文件,以免造成問題。

4

我不會添加另一種語言,scala非常適合編寫腳本。我認爲scala通常比groovy更快(在shootout.alioth.debian.org有舊的基準,但不知何故groovy似乎已經從當前的基準中退出?)。然而,響應性並不理想,也就是說,正如您所知,運行用於scala REPL的「解釋器」是一種即時編譯的編譯器。這帶有一些實際編譯的延遲,但執行速度與正常編譯的scala一樣。在當代電腦上,你不會再注意到這種延遲。

在scala REPL之上建立了幾個小工具。使用一種語言的另一個好處可能是它可能更容易將符號綁定到解釋器,因爲所有scala特定的東西(例如合成方法,伴隨對象等)都是透明可見的。

編輯:雖然原帖是從2009年,也有從最近的斯卡拉2.8和Groovy 1.7分佈在評論基準,顯示了在差的幅度:http://stronglytypedblog.blogspot.com/2009/07/java-vs-scala-vs-groovy-performance.html