中科院計算所發布國產編程語言“木蘭”
記者從中國科學院計算技術研究所(以下簡稱中科院計算所)計算機體系結構國家重點實驗室獲悉,由該實驗室編譯組主導研發的國產編程語言“木蘭”正式發布。據中科院計算所副研究員、計算機體系結構國家重點實驗室編譯組負責人劉雷介紹,“木蘭”是一款定位於面向智能物聯應用、採用最新編程語言設計理念和編譯技術的程序設計語言,開發團隊致力於將其打造為“智能物聯時代的C語言”。
工作人員向記者演示基於木蘭編程的“下棋機器人”
說起“木蘭”這個名字,其中還有段小故事。
劉雷告訴《中國科學報》,Mulan原本是Module Unit Language的簡寫,直譯即“模塊單元語言”。“我們最初就是想做一種能像模塊組合一樣方便的、可以隨時擴展語言的編程語言,縮寫詞’MuLan’中的M是希臘第十二個字母(小寫為μ,音’謬’),表示’微小’的意思,表明這是一款簡易的語言。”劉雷說,沒想到,中科院計算所學術委員會主任徐志偉一下就念成了“木蘭”。
“我們都覺得’木蘭’更好,有濃濃的中國文化印記。用’木蘭’命名這樣一款國產編程語言,再合適不過。”劉雷對《中國科學報》說。
隨著人機交互頻次的日益增長,編程正成為這個時代“第三重要的基礎學科”。編程語言也和操作系統一樣,是信息技術領域重要的系統軟件。並且,信息技術行業的生態環境也往往是從編程語言開始建立的。“如穀歌公司在雲計算領域推出的Go語言、蘋果公司自行設計的Swift語言、Oracle控制的Java語言標準等等。”劉雷說,一旦某個編程語言在一個領域建立了自己的生態系統,那麼它的地位幾乎很難撼動。
“’木蘭’是由編譯實驗室完全自主設計、開發和實現的編程語言,與之配套的編譯器與集成開發工具也完全由團隊自主實現,是我們真正掌握核心技術的編程語言。”劉雷告訴《中國科學報》,“木蘭”定位為下一代重要應用——智能物聯的開發語言,它採用創新的彈性actor執行模型(擅長執行並行計算,筆者註),可成倍地提高應用執行效率,在提高服務質量的同時大幅降低平台運營成本。
劉雷解釋說,目前在智能物聯應用領域,尚無一款專用的編程語言,在既有的語言系統中做智能應用開發,需要多個工程師、跨多種語言實現,導致開發效率低下。“木蘭”就致力於打造物聯網智能執行平台,並為編寫的應用程序提供執行環境。
不過,劉雷也表示,編程語言生態的建設需要數年的漫長周期才會逐漸成熟,目前物聯網應用行業生態土壤並不豐沃,因此“木蘭”的產業應用積累還不夠。他希望智能物聯應用領域的開發者多多嘗試使用“支持跨平台、同時能很好地支持龍芯等國產處理器”的“木蘭”搭建開發環境,增強智能產品體系生態的自主可控性。
目前,“木蘭”正從青少年編程教育入手培育生態。劉雷透露,在中科院持續加大對“少年矽谷”公益項目等的支持下,以“木蘭”為基礎延伸的自主研發編程軟件、人工智能教材、教學裝備目前已經投入到中小學、幼兒園使用。截至目前,“木蘭”應用範圍涵蓋了貴州、甘肅、江西、湖南、重慶、青海、山西、陝西和四川等18個省市共700所中小學,計算所下屬企業中科編易科技有限公司自2018年起已累計捐贈價值三千萬元的教學裝備。
截至發稿時,“木蘭”及相關軟件可以免費獲取。