日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

新ANTLR 4.6的重要更改

發(fā)布時(shí)間:2023/12/3 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 新ANTLR 4.6的重要更改 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

自從上一個(gè)主要版本發(fā)布以來,已經(jīng)過去了將近一年的時(shí)間,推出了新的ANTLR版本: 4.6 。 有很多新聞:新的目標(biāo),更好的性能,更好的錯(cuò)誤處理以及ANTLR本身開發(fā)中的一些改進(jìn)。

新目標(biāo)

影響最大的新聞可能是新目標(biāo):C ++,Go和Swift。 當(dāng)然,獲得C ++支持非常重要。 討厭它還是喜歡它,它仍然是那里的主要語言之一。 由于對并發(fā)的大力支持,Go在網(wǎng)絡(luò)應(yīng)用程序(例如Web服務(wù)器和API)中獲得了關(guān)注。 這幾乎使可用目標(biāo)加倍,并加入了已經(jīng)包含的Java,C#,Python和Javascript。

ANTLR 4中最大的新增功能之一是對左遞歸表達(dá)式的支持,也就是說,該表達(dá)式具有一個(gè)或多個(gè)引用自己的替代方法。 支持表達(dá)式所需的語法規(guī)則大大簡化,但是對于非常大的表達(dá)式,存在不終止解析的情況。 這是由于兩個(gè)選擇之間的歧義導(dǎo)致解析引擎出現(xiàn)問題。 兩者都導(dǎo)致有效的解析,但是一個(gè)比另一個(gè)慢得多。 該問題是由 ANTLR的主要貢獻(xiàn)者之一Sam Harwell發(fā)現(xiàn)的 。

錯(cuò)誤處理和消息

在某些情況下的錯(cuò)誤處理方面已得到改進(jìn):與LL(1)決策有關(guān),匹配的令牌集被錯(cuò)誤地視為重新同步令牌以及偶爾不包含單個(gè)令牌的錯(cuò)誤節(jié)點(diǎn)。 此外,還有更好的錯(cuò)誤消息,例如在規(guī)則與指定目標(biāo)語言的生成代碼中的符號沖突的情況下。

改進(jìn)ANTLR的發(fā)展

其他重要新聞是與ANTLR本身的開發(fā)有關(guān)的一些改進(jìn)。 盡管這并不直接影響您,但作為用戶,它們可能使您更容易為項(xiàng)目做出貢獻(xiàn),研究大型Java項(xiàng)目的工作方式,甚至激發(fā)您改進(jìn)自己的開源項(xiàng)目。 這些范圍包括從改進(jìn)到構(gòu)建系統(tǒng),從Maven插件到完全重寫的單元測試機(jī)制。 同樣有用的是要知道,現(xiàn)在的構(gòu)建環(huán)境需要ANTLR Java 7 / JDK 1.7,這是Swift目標(biāo)的推動 。

結(jié)論

ANTLR是許多對語言感興趣的人的寶貴工具。 此版本再次證明了ANTLR將繼續(xù)存在并在不斷發(fā)展。 由于大量有意義的更改,所以此發(fā)行版有點(diǎn)特殊。 我可以在ANTLR社區(qū)中看到這種更多的熱情,并且我期待看到在這一領(lǐng)域中發(fā)生的更多偉大事情。

翻譯自: https://www.javacodegeeks.com/2017/01/important-changes-new-antlr-4-6.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的新ANTLR 4.6的重要更改的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。