在线观看av片_国产hsck在线亚洲_色综合久久久久综合99_精品综合久久_欧美日韩在线视频观看_日本www视频

您好,歡迎進(jìn)入匠人留學(xué)移民官網(wǎng)!

一站式服務(wù)商

提供留學(xué)、移民、海外置業(yè)、在職提升等一條龍服務(wù)

18548177000

熱門關(guān)鍵詞:  美國留學(xué)英國留學(xué)加拿大留學(xué)澳大利亞留學(xué)新西蘭留學(xué)中國香港留學(xué)

某某品牌策劃有限公司
郵箱:123454678@qq.com
手機(jī):13899999999
電話:020-88888888
地址:安徽省合肥市高新區(qū)長江東路

新聞資訊
您的位置: 網(wǎng)站首頁  > 新聞資訊

麻省理工學(xué)院:從編程語言中消除錯(cuò)誤的更簡單方法

發(fā)布時(shí)間:2023-04-08瀏覽次數(shù):7101

D2X 由麻省理工學(xué)院開發(fā),是一種新工具,可以輕松調(diào)試任何特定于領(lǐng)域的編程語言。

在2019年的某個(gè)時(shí)候,麻省理工學(xué)院的博士生Ajay Brahmakshatriya制定了一個(gè)簡單的目標(biāo),但仍然很有挑戰(zhàn)性。他希望那些在特定領(lǐng)域(如氣候建模、生物信息學(xué)或建筑學(xué))擁有專業(yè)知識的人能夠編寫自己的編程語言,即所謂的領(lǐng)域特定語言(DSL),即使他們在創(chuàng)建編程語言方面很少或根本沒有經(jīng)驗(yàn)。作為麻省理工學(xué)院計(jì)算機(jī)科學(xué)和人工智能實(shí)驗(yàn)室(CSAIL)教授Saman Amarasinghe領(lǐng)導(dǎo)的研究小組的成員,Brahmakshatriya希望這些語言具有人們舒適地使用它們所需的所有輔助功能,包括調(diào)試工具。他和Amarasinghe同意,這個(gè)消除軟件錯(cuò)誤的過程是必不可少的,因?yàn)樗麄兎Q缺乏調(diào)試支持是“DSL的致命弱點(diǎn)”。

對他們倆來說,這是富有成效的幾年。2021 年,Brahmakshatriya 和 Amarasinghe 推出了 BuildIt,這是一個(gè)軟件包,極大地簡化了創(chuàng)建 DSL 的任務(wù)。上個(gè)月,在蒙特利爾由計(jì)算機(jī)協(xié)會(huì)共同贊助的一次國際會(huì)議上,兩人介紹了D2X,這是一種可以輕松地向任何DSL添加調(diào)試的工具,并且已被證明與BuildIt配合得特別好。他們關(guān)于這項(xiàng)工作的論文甚至獲得了會(huì)議上頒發(fā)的兩個(gè)杰出論文獎(jiǎng)之一。

Brahmakshatriya解釋說,在專業(yè)領(lǐng)域產(chǎn)生語言的主要原因“是為了促進(jìn)易用性。例如,圖像處理DSL可以具有“模糊整個(gè)圖像”的功能。用通用語言發(fā)出相同的命令需要更多的代碼行,Brahmakshatriya指出。“這是使用DSL的部分原因。另一個(gè)是性能。由于操作特定于該域,因此可以更容易地對其進(jìn)行優(yōu)化 - 以適當(dāng)?shù)捻樞驁?zhí)行,從而更高效,更快速地完成。

Brahmakshatriya 將 BuildIt 描述為“用于創(chuàng)建 DSL 的 DSL”。它有助于采用現(xiàn)有的通用編程語言并將其縮減的多步驟過程,直到它以正確的方式變得專業(yè)化。“假設(shè)你有一個(gè)問題,你想寫一個(gè)程序來解決它,”他說。“你可以寫一個(gè)程序來完整地解決它,或者你可以寫一個(gè)較小的程序來解決你感興趣的問題的子類。你使程序越專業(yè),它的運(yùn)行速度就越快。BuildIt旨在根據(jù)這些指導(dǎo)原則構(gòu)建DSL。

Halide——一種發(fā)明于2012年的圖像處理語言,比BuildIt早幾年——是Amarasinghe團(tuán)隊(duì)中早出現(xiàn)的DSL之一。它的發(fā)展由當(dāng)時(shí)的研究生Jonathan-Ragan Kelley和當(dāng)時(shí)的CSAIL博士后Andrew Adams領(lǐng)導(dǎo)。“Halide現(xiàn)在非常流行,它被用于許多Adobe應(yīng)用程序,包括Photoshop,但它仍然沒有調(diào)試器,”Amarasinghe說。他補(bǔ)充說,原因是“調(diào)試器非常復(fù)雜。編寫它們非常困難,這就是為什么大多數(shù)小型DSL沒有調(diào)試支持的原因。

根據(jù)Brahmakshatriya的說法,這不是一個(gè)理想的狀態(tài),他堅(jiān)持認(rèn)為每個(gè)DSL都應(yīng)該有自己的調(diào)試器。“你不能直接將現(xiàn)有的調(diào)試器用于你的新語言,因?yàn)樗鼈儾焕斫庥颉4送猓f次就寫出一個(gè)完全正確的程序是不可能的。“你總是從有錯(cuò)誤的東西開始,盡管它們通常直到開發(fā)周期的后期才會(huì)出現(xiàn)。如果此時(shí)出現(xiàn)錯(cuò)誤,當(dāng)你有 5,000 行代碼時(shí),可能很難找到它。因此,一旦一個(gè)程序“代碼完成”——被其開發(fā)人員認(rèn)為已經(jīng)準(zhǔn)備好進(jìn)行測試——軟件工程師可能不得不將一半以上的時(shí)間投入到繁重的調(diào)試工作中。

但是幫助正在以D2X的形式出現(xiàn)(發(fā)音為“”,因?yàn)樗c消除程序中的毒藥或缺陷的概念有關(guān))。D2X本身不是一個(gè)程序,而是被歸類為一個(gè)庫——一段可以被其他程序重用的計(jì)算機(jī)代碼。它旨在與現(xiàn)有調(diào)試器(如 GDB 或 LLDB)配合使用,充當(dāng)這些工具和給定 DSL 之間的橋梁。調(diào)試器需要有關(guān)要清理的程序或編程語言的信息。“每個(gè)調(diào)試器都需要以自己的特定格式提供信息,可以是400頁的文檔,”Amarasinghe說。“如果你使用D2X,你不必?fù)?dān)心。它為你照顧好了。

Brahmakshatriya 說,以 D2X 為接口,“你的程序可以使用流行的調(diào)試器進(jìn)行調(diào)試,而無需對調(diào)試器本身進(jìn)行任何修改。在他看來,這是將D2X與BuildIt相結(jié)合的主要優(yōu)勢:“如果你使用BuildIt編寫DSL,你不必做任何額外的工作。您可以免費(fèi)獲得調(diào)試器,而無需編寫任何額外的代碼。

“D2X正面解決了高性能軟件的固有矛盾,”康奈爾大學(xué)計(jì)算機(jī)科學(xué)副教授Adrian Sampson評論道。“一方面,特定領(lǐng)域的語言是我們在現(xiàn)代大幅提高計(jì)算效率的希望。然而,從頭開始為新語言制作新的調(diào)試器是很困難的,沒有調(diào)試器是程序員可能拒絕“更好”語言而支持“更差”語言的合理原因。D2X的偉大之處在于,它降低了為DSL構(gòu)建有用的調(diào)試器的障礙。

但就婆羅門沙特利而言,這并不是故事的結(jié)局。除了調(diào)試之外,他想與 BuildIt 合并的另一個(gè)功能是編輯,這使得編寫程序變得更容易。例如,編輯者可以突出顯示文檔中的某些關(guān)鍵字,這可以提高其可讀性。它們可以執(zhí)行其他功能,例如自動(dòng)完成功能,該功能會(huì)在輸入一小部分后自動(dòng)填充文本。

Brahmakshatriya 希望將分析器以及調(diào)試器和編輯器作為 BuildIt 平臺的一部分。“探查器就像調(diào)試器,但它們不是幫助你找到錯(cuò)誤,而是讓你評估程序中的性能問題,”他說。“如果程序的運(yùn)行速度比預(yù)期的慢,您可以使用探查器來了解程序的哪個(gè)部分使事情陷入困境。他說,將來可能會(huì)添加其他有用的功能。

Amarasinghe認(rèn)為,所有這些努力將使創(chuàng)建專業(yè)語言的前景更具吸引力。“在我看來,有大量的人支持傳統(tǒng)語言——成千上萬的程序員為C、C++或Java構(gòu)建工具,”他說。“另一方面,如果我正在構(gòu)建一個(gè)簡單的DSL,我沒有成千上萬的程序員來提供所有這些支持。但是現(xiàn)在,有了BuildIt和D2X,他補(bǔ)充說,“小家伙可以得到其他人得到的所有東西,包括調(diào)試器,終是編輯器和分析器——與傳統(tǒng)語言的好處相同。而且,您無需讓工程師團(tuán)隊(duì)編寫各種復(fù)雜的代碼即可實(shí)現(xiàn)這一點(diǎn)。

這項(xiàng)工作得到了應(yīng)用驅(qū)動(dòng)架構(gòu)研究中心、美國國防計(jì)劃局 (DARPA)、由半導(dǎo)體研究公司和 DARPA 共同贊助的聯(lián)合大學(xué)微電子項(xiàng)目中心的支持;美國科學(xué)基金會(huì);以及英特爾/NSF 獎(jiǎng)。


蒙公網(wǎng)安備 15010302000536號

主站蜘蛛池模板: 午夜免费视频福利 | 免费国产一区二区 | 黄色片视频免费 | 午夜免费视频 | 这里精品 | 中文字幕在线免费 | 爱爱精品| 狠狠撸在线 | 亚洲视频在线看 | 999视频在线免费观看 | 国产精品高潮呻吟久久av黑人 | 欧美一区二区三区 | 精品一区二区av | 亚洲精品一区在线观看 | www.久久久久久久久久久久 | 国产一区二区三区免费观看 | 精品国产乱码久久久久久1区2区 | 天天操天天插 | www.操操操.com | 国产黄色免费小视频 | 成年人在线观看 | 精品欧美激情在线观看 | 久久综合狠狠综合久久 | 黄色大片视频 | 久久2018| 五月婷婷导航 | 欧美三级网 | 日韩成人在线一区 | 中文字幕日韩一区二区 | jizz18国产| 亚洲国产精品久久久久久女王 | 欧美成在线观看 | 日韩一区二区成人 | 韩国精品在线 | 高清国产午夜精品久久久久久 | 日韩av视屏 | 国产999精品久久久久 | 大黑人交xxx极品hd | 99爱在线观看 | 久久国产精品视频观看 | 中文字幕大全 |