我們擅長商業(yè)策略與用戶體驗的完美結(jié)合。
歡迎瀏覽我們的案例。
近日,F(xiàn)acebook 開源了全新語言 Skip,這是 Facebook 內(nèi)部開發(fā)的一個實驗性質(zhì)編程語言,F(xiàn)acebook 表示,Skip 項目于 2018 年完成,今后將不再積極開發(fā)。
Skip 的官方一句話介紹是“跳過那些你已經(jīng)做過計算的”(skip the things you have already computed),這也就是它作為一個研究項目的主要目標(biāo),它要探索編程語言和運行時可以怎樣去支持準(zhǔn)確、高效的基于記憶的緩存和緩存失效。而通過靜態(tài)類型系統(tǒng)追蹤可變性,Skip 完成了這個目標(biāo),同時它也支持現(xiàn)代編程語言特征,例如 trait、泛型與子類型。
Skip 是一種通用編程語言,它跟蹤副作用,提供反應(yīng)失效的緩存、ergonomics 和安全的并行化以及高效的 GC。Skip 是靜態(tài)類型的,它使用 LLVM 提前編譯,生成高度優(yōu)化的可執(zhí)行文件。具體特點如下:
反應(yīng)失效的緩存
Skip 主要的新特性是精準(zhǔn)跟蹤副作用,包括值的可變性和非確定性數(shù)據(jù)源與能夠提供反應(yīng)失效的數(shù)據(jù)源之間的區(qū)別。Skip 的類型系統(tǒng)能夠證明給定函數(shù)邊界沒有副作用,這樣開發(fā)人員可以選擇安全地記憶該計算,并在運行時確保底層數(shù)據(jù)發(fā)生變化時,之前緩存的值是無效的。
Skip 支持兩種互補的并發(fā)編程,由于它跟蹤副作用,這兩種編程都避免了常見的線程安全問題。首先,Skip 支持使用 async/await 語法進(jìn)行 ergonomic 異步計算。由于 Skip 跟蹤副作用,異步計算不能引用可變狀態(tài),因此可以安全地并行執(zhí)行。其次,Skip 有可用于直接并行計算的 API,同樣利用其追蹤副作用的特型來避免線程安全問題,如共享對可變狀態(tài)的訪問。
高效和可預(yù)測的 GC
Skip 使用一種新方法進(jìn)行內(nèi)存管理,結(jié)合了典型的垃圾回收特性和更直接的線性分配模式。由于 Skip 追蹤副作用,垃圾回收器僅需要掃描從底層計算處可訪問的內(nèi)存,在實踐中這意味著開發(fā)者能夠使用可預(yù)測 GC 寫代碼。
混合函數(shù)式與面向?qū)ο笳Z言的特點
Skip 的一大特點是混合了函數(shù)式與面向?qū)ο缶幊陶Z言的特點,將兩者有機整合成了一種緊密結(jié)合的語言。與函數(shù)式語言類似,Skip 表達(dá)能力強,支持抽象的數(shù)據(jù)類型、模式匹配、簡單的 lambda 和高階函數(shù)等;另一方面,與命令式面向?qū)ο蟮恼Z言相似,Skip 支持可繼承的類、可變對象、循環(huán)和提前返回。Skip 還結(jié)合了“系統(tǒng)”語言的思想,以支持低開銷抽象、通過值類的緊湊內(nèi)存布局,以及確保利用靜態(tài)方法分派實現(xiàn)代碼特例化的模式。
Skip 由經(jīng)驗豐富的團隊設(shè)計,包括 ActionScript、C#、Flow、Hack、HHVM、Prettier、React Native 和 Relay 的高級貢獻(xiàn)者,從 2015 年到 2018 年,F(xiàn)acebook 花了 3 年在這個項目上,該語言的主要設(shè)計者是 Facebook 語言團隊負(fù)責(zé)人 Julien Verlaguet,他維護了該語言、編譯器與庫。如今 Facebook 宣布不再積極開發(fā),但是通過開源的方式,希望讓 Skip 繼續(xù)保持活力,讓編程語言研究社區(qū)在語言設(shè)計與實現(xiàn)、編譯器和庫的基礎(chǔ)上進(jìn)行研究和構(gòu)建。
?。?a href="http://m.jinteng090.cn">邯鄲h5網(wǎng)站建設(shè))
小米應(yīng)用商店發(fā)布消息稱 持續(xù)開展“APP 侵害用戶權(quán)益治理”系列行動 11:37:04
騰訊云與CSIG成立政企業(yè)務(wù)線 加速數(shù)字技術(shù)在實體經(jīng)濟中的落地和應(yīng)用 11:34:49
樂視回應(yīng)還有400多人 期待新的朋友加入 11:29:25
亞馬遜表示 公司正在將其智能購物車擴展到馬薩諸塞州的一家全食店 10:18:04
三星在元宇宙平臺推出游戲 玩家可收集原材料制作三星產(chǎn)品 09:57:29
特斯拉加州San Mateo裁減229名員工 永久關(guān)閉該地區(qū)分公司 09:53:13