Rust 1.0 即將發布:現狀與展望

ec3y 9年前發布 | 5K 次閱讀 Rust

原文  http://www.infoq.com/cn/news/2015/05/rust-beyond-10


隨著Rust官方正式 發布1.0版的日期 臨近,Mozilla研究部門的Niko Matsakis已經開始 初步評估 未來要添加到這門語言中的新特性的優先級,以此來引發一場關于Rust未來發展方向的公開討論。InfoQ就此與Matsakis進行了對話。

Matsakis的評估報告將新特性分為三個優先級,基于它們的時間敏感性(隨著時間推移,加入新特性的難易度)、對Rust開發者社區的影響力、可以解決的問題范圍分為高、中、低三等。

Matsakis列舉了以下幾個最高優先級的特性:

  • 穩定庫API,例如,文件系統API和內存分配API。
  • 更好地支持Windows和ARM,也就是去除Rust對于MinGW的依賴并支持ARM64平臺。
  • 更快的編譯速度。
  • 更好的工具支持。
  • 分配器和跟蹤器提供更多的內存分配控制。
  • 專門化,允許定義一組給定類型的給定trait的多種實現。
  • 虛擬結構體,允許在結構體上實現某種形式的繼承。

Matsakis還介紹了幾個有可能獲得高優先級的特性,例如改進宏和語法擴展。其余特性仍被列為中等優先級或長期計劃。InfoQ借此機會與Niko Matsakis暢談,了解更多有關Rust目前和未來的情況.

現在Rust 1.0幾乎快要發布了,你感覺如何?你是否認為這門語言已經到達比較成熟的境界?

快速發展的社區和生態系統使我對發布Rust 1.0感到非常自信,crates.io倉庫上現已有幾乎2000個crates可以使用,而且許多非常重要的項目使用Rust進行構建(例如,Rust編譯器本身,Servo以及Skylight)。

Rust目前的的設計成果歷經了數次迭代,我認為這些迭代有所收獲。盡管我們為發布1.0版本感到興奮,不過我認為這的確只是一個開端。我們已經有了許多改進計劃,我期待看到他們未來被一一實現。

我非常喜歡這個開源項目,一大群貢獻者幫助我們設計和改進Rust,我認為1.0版本發布后這樣的開發模式會發展得更好。

Rust支持現代編程語言思想,例如可選類型、泛型、類型推斷等,雖然這些編程思想更面向低階編程,但是仍然吸引了許多人的注意力。你是否可以詳細說明一下那些思想對于低階編程的重要性?

對于那些性能非常重要的情況,擁有機器的低階控制權是一個絕對的優勢。但是目前看來,想要獲得低階控制權通常只會使生產力代價高昂。我們總是期盼著Rust可以吸引一些C++程序員,但我們沒有意識到的是對于從高階語言過來的人們來說Rust到底有多誘人。

類型系統非常關鍵:Rust通過類型系統來增強安全模式,例如所有權和借入,既避免了程序無端崩潰,又可讓低階編程更好更快。這進一步表示,如果你想在生產環境部署一個Rust app或者為crates.io寫一個庫,那么你無須儲備專家級系統編程經驗就可以輕松完成。從語言極客的角度來看,我們從現代語言中借鑒了許多優秀的思想并把它們融入系統編程領域,而我們所做的這一切正是為了讓低階編程遠離崩潰,沒有煩惱!

除了功能優先級以外,在您看來,Rust正在朝什么方向發展?在未來的Rust中我們可以期待什么樣的特性呢?

Rust的目標永遠是將低階語言的控制能力和高階語言的表達能力相結合(不向任何一方妥協)。就語言本身而言,我期望我們將繼續同時向這兩個方向發展。

這意味著Rust會加入更多低階特性,例如自定義分配器,但同時擁有更多高階表達能力,例如支持元編程。展望這門語言的未來,我認為Rust將會被廣泛應用于工具和基礎設施領域。

最后,新加入的使用者和社區將會使Rust更穩定,不斷為其設計新特性并持續改進,對此我倍感自信,新鮮血液終將為我們帶來目前無法想象的更偉大的新思想。

查看英文原文: Rust Beyond 1.0: Where It Stands, Where It is Headed

 本文由用戶 ec3y 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!