Rust 規(guī)范團(tuán)隊(duì)終于成立,但不會(huì)干預(yù)語言發(fā)展
發(fā)布時(shí)間:2023-12-20 15:07:44
Rust 領(lǐng)導(dǎo)層成立了一個(gè)規(guī)范團(tuán)隊(duì),迄今為止在沒有規(guī)范的情況下蓬勃發(fā)展的編程語言 Rust 終于有了規(guī)范的關(guān)鍵一步。
這是對(duì)去年 6 月 RFC(征求意見)的落實(shí),該 RFC 提出了 rust 是否想要一個(gè)規(guī)范的討論。
新團(tuán)隊(duì)有四名成員,Joel Marcey 是編輯,F(xiàn)elix Klock 和 Maras Bos 是團(tuán)隊(duì)負(fù)責(zé)人,Eric Huss 是團(tuán)隊(duì)成員。Bos 是最初 RFC 的作者。
根據(jù)該團(tuán)隊(duì)的最初公告,他們將由利益相關(guān)者指導(dǎo),包括 Rust 語言團(tuán)隊(duì)的所有成員,以及其他人,包括操作系統(tǒng)的一名或多名代表,特別是 Linux 和 Windows。
今年 9 月,微軟在 Rust 上發(fā)布了 Windows 驅(qū)動(dòng)程序開發(fā)的早期代碼。
規(guī)范團(tuán)隊(duì)和語言團(tuán)隊(duì)之間的關(guān)系并不是照搬其它語言的組織架構(gòu)。
例如,在 C 和 C++ 中,標(biāo)準(zhǔn)委員會(huì)定義語言,而實(shí)現(xiàn)者構(gòu)建編譯器可能只是規(guī)范的部分實(shí)現(xiàn),也可能擴(kuò)展它。Java 有一個(gè)社區(qū)進(jìn)程,它提供了一個(gè)官方規(guī)范。
不過,Rust 規(guī)范團(tuán)隊(duì)表示,“Rust 語言定義的權(quán)力仍然掌握在相關(guān)團(tuán)隊(duì)手中,例如語言團(tuán)隊(duì)和庫 API 團(tuán)隊(duì)。這與規(guī)范團(tuán)隊(duì)的最初目標(biāo)不謀而合,該團(tuán)隊(duì)指出:“我們預(yù)計(jì)規(guī)范的早期版本將主要專注于提供當(dāng)前 Rust 版本的詳細(xì)描述。
可以說,如果規(guī)范團(tuán)隊(duì)不負(fù)責(zé)“Rust 語言的定義”,那么它就不完全是一個(gè)通常理解的規(guī)范團(tuán)隊(duì),盡管它提供的內(nèi)容讀起來更像是規(guī)范而不是文檔。
這個(gè)問題一直爭(zhēng)論不休,一位社區(qū)成員問道:“如果最終的真相仍然是'無論 rustc 做什么',那么首先制定規(guī)范的意義何在?另一位團(tuán)隊(duì)成員的回答是“如果 rustc 與規(guī)范不同,那就是其中任何一個(gè)的錯(cuò)誤,需要根據(jù)具體情況確定是哪一個(gè)。
盡管如此,該團(tuán)隊(duì)仍將努力使任何尋找語言問題答案的 Rust 程序員都可以訪問該規(guī)范。該團(tuán)隊(duì)還承認(rèn),其最初的工作可能存在差距,但預(yù)計(jì)這些差距會(huì)隨著規(guī)范的發(fā)展而減少。
那么,規(guī)范將如何與語言保持同步?
Rust 目前的發(fā)布周期為 6 周,這個(gè)快速的周期可能會(huì)將規(guī)范拋在后面?!癛ust 版本將獨(dú)立于規(guī)范批準(zhǔn)過程進(jìn)行” 新團(tuán)隊(duì)表示,即使這意味著“該版本將在沒有相關(guān)規(guī)范的情況下發(fā)布”。不過,當(dāng)涉及到大到足以稱為“語言功能”的變化時(shí),有人試圖劃清界限。希望最終更新的規(guī)范將與發(fā)布節(jié)奏同步交付。
規(guī)范團(tuán)隊(duì)的成立是第一步,而 Rust 的完整規(guī)范的概念還有一段距離。如果它來了,那仍將是有價(jià)值的。有評(píng)論說:“我相信我的雇主......目前被 C 語言困住了,因?yàn)闆]有我們可以在 Isabelle 中忠實(shí)地表示的官方形式規(guī)范,擁有一個(gè)精確的數(shù)學(xué)定義將有助于我為我們小組采用 Rust 進(jìn)行驗(yàn)證工作提供論據(jù)。Isabelle 是證明數(shù)學(xué)公式的工具。
精確性很重要,雖然規(guī)范問題不會(huì)困擾大多數(shù)開發(fā)人員,但擁有一個(gè)規(guī)范文本,將有可能提高語言的價(jià)值。
以上為本次所有分享內(nèi)容