- +1
機器自動編程系統(tǒng),碼農(nóng)福音
文/陳根
機器時代下計算機編程顯得尤為熱門,但事實上,計算機編程一直都不是件容易的事。最初程序員是在圖紙上手寫程序,然后再把符號轉(zhuǎn)換成計算機能夠處理的一大堆穿孔卡片。只要有一個標(biāo)記放錯了地方,整個程序就得重寫,而bug即便成了程序員的家常便飯,也依舊屢見屢崩潰。
如今,程序員可以使用一系列高效的工具來自動化大部分工作,它們可以在鍵入時查找錯誤,也可以在部署前測試代碼。但還是有許多方面幾乎沒有改變。一個愚蠢的錯誤仍然會整個軟件崩潰,現(xiàn)在的系統(tǒng)越來越復(fù)雜,追蹤這些漏洞也越來越困難。隨著硬件和軟件系統(tǒng)越來越復(fù)雜,再加上開發(fā)硬件和軟件系統(tǒng)所需的程序員的儲備,讓機器編碼的開發(fā)成了多年來的研究熱點。

近日,來自英特爾、麻省理工學(xué)院和喬治亞理工學(xué)院的研究人員宣布了一種新的機器編程系統(tǒng),旨在檢測代碼的相似性。機器推斷代碼相似性(MISIM)系統(tǒng)是一個自動引擎,能夠確定兩段代碼、算法的數(shù)據(jù)結(jié)構(gòu)何時執(zhí)行相同或相似的任務(wù)。
研究人員解釋說,MISIM不同于其他代碼相似性系統(tǒng),因為它使用了上下文感知語義結(jié)構(gòu)(CASS),它提供了更多關(guān)于代碼做什么的洞察,而不僅僅是它是如何做的。其他類似的代碼系統(tǒng)嘗試確定相似的特性或相似的目標(biāo),而MISIM可以確定執(zhí)行類似計算的代碼。而這是邁向機器編程更宏偉愿景的重要一步。
此外,MISIM不需要編譯器將人類可讀的源doe轉(zhuǎn)換為計算機可執(zhí)行的機器代碼。這將給現(xiàn)有的系統(tǒng)帶來很多好處,包括能夠在開發(fā)人員當(dāng)前編寫的不完整代碼片段上執(zhí)行——這對于推薦系統(tǒng)或自動修復(fù)錯誤來說是一個重要的實用特性。
一旦代碼的結(jié)構(gòu)被集成到CASS中,神經(jīng)網(wǎng)絡(luò)系統(tǒng)就會根據(jù)代碼的設(shè)計任務(wù),對代碼進行相似性評分。換句話說,如果兩段代碼在結(jié)構(gòu)上看起來非常不同,但執(zhí)行的功能相同,那么神經(jīng)網(wǎng)絡(luò)會將它們評為基本相似。研究人員還表示,MISIM能夠比先前的系統(tǒng)更準(zhǔn)確地識別出類似的代碼片段。
研究人員表示,接下來計劃擴展解決方案的功能集,開發(fā)代碼推薦引擎,并與其他軟件團隊合作,看看如何將MISIM集成到日常開發(fā)中。而這對于各大程序員或者程序員日漸光潔的額頭來說或許都是一大福音。
本文為澎湃號作者或機構(gòu)在澎湃新聞上傳并發(fā)布,僅代表該作者或機構(gòu)觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發(fā)布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。





- 報料熱線: 021-962866
- 報料郵箱: news@thepaper.cn
互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006
增值電信業(yè)務(wù)經(jīng)營許可證:滬B2-2017116
? 2014-2025 上海東方報業(yè)有限公司




