一個(gè)通用虛擬機(jī),可以支持多種語言,同時(shí)提供一致的性能,工具和配置。Oracle宣布推出GraalVM 1.0,這是一款虛擬機(jī),旨在實(shí)現(xiàn)高性能和互操作性的任務(wù),在構(gòu)建多語種應(yīng)用時(shí)無需額外的費(fèi)用。
Oracle要?jiǎng)?chuàng)建一個(gè)通用虛擬機(jī),可以支持多種語言,同時(shí)提供一致的性能,工具和配置。Oracle宣布推出GraalVM 1.0,這是一款虛擬機(jī),旨在實(shí)現(xiàn)高性能和互操作性的任務(wù),在構(gòu)建多語種應(yīng)用時(shí)無需額外的費(fèi)用。
Oracle稱,目前大多數(shù)虛擬機(jī)僅支持特定語言或一小部分語言。 “編譯,內(nèi)存管理和工具分別針對(duì)不同的語言進(jìn)行維護(hù),違反了DRY原則(不要重復(fù)自己)。這不僅會(huì)給虛擬機(jī)運(yùn)營帶來更大的負(fù)擔(dān)。”
Oracle強(qiáng)調(diào),GraalVM允許外部語言使用對(duì)象和數(shù)組,而無需首先將它們轉(zhuǎn)換為不同的語言。例如,該工具將允許Node.js代碼訪問Java庫的功能,或者從Java內(nèi)部調(diào)用Python例程。借助這種靈活性,程序員將能夠使用他們認(rèn)為最適合他們嘗試完成的任務(wù)的任何語言。
首個(gè)版本將允許開發(fā)人員運(yùn)行基于JVM的語言,如Java,Scala,Groovy或Kotlin;JavaScript;LLVM bitcode;以及Ruby,R和Python的實(shí)驗(yàn)版本。它可以獨(dú)立運(yùn)行,作為平臺(tái)的一部分嵌入或運(yùn)行在數(shù)據(jù)庫中。
核心安裝為開發(fā)人員提供了與語言無關(guān)的調(diào)試器,分析器和heap viewer。Oracle鼓勵(lì)第三方開發(fā)人員使用Instrumentation API或語言實(shí)現(xiàn)API制作工具,以進(jìn)一步改進(jìn)GraalVM生態(tài)系統(tǒng)。Oracle稱,它將“GraalVM設(shè)想為語言級(jí)別的虛擬化層,允許利用所有語言的工具和嵌入。
Oracle表示,“這只是一個(gè)開始。我們正在努力改進(jìn)GraalVM的各個(gè)方面;特別是對(duì)Python,R和Ruby的支持。GraalVM是一個(gè)開放的生態(tài)系統(tǒng),我們鼓勵(lì)在其上構(gòu)建自己的語言或工具。我們希望讓GraalVM成為一個(gè)能夠?qū)崿F(xiàn)標(biāo)準(zhǔn)化語言執(zhí)行的協(xié)作項(xiàng)目和一套豐富的與語言無關(guān)的工具。”
免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。