Rust 程式語言發展史年表
Rust 是 2006 年由 Graydon Hoare 在 Mozilla 以個人側專案開始的語言, 目標是「系統程式設計的速度,加上記憶體安全的保證」。 它融合了 ML/Haskell(型別系統)、C++(零成本抽象)、Cyclone(區域型別)等傳統, 並以「所有權(ownership)與借用檢查器(borrow checker)」在編譯期消滅記憶體錯誤, 成為第一個不用垃圾回收、卻保證記憶體安全的主流語言。
前史:理論根源
| 年份 | 事件 | 意義 |
| 1958 | LISP 問世 | 垃圾回收與高階抽象的先驅(Rust 選擇了反向路線:無 GC) |
| 1972 | C 語言 | 系統程式設計的事實標準,也是記憶體安全問題的根源 |
| 1978 | ML 語言 | Hindley–Milner 型別推論:型別標註可省略,由編譯器推導 |
| 1985 | C++ | RAII(資源取得即初始化):物件解構時釋放資源,Rust drop 的思想源頭 |
| 1988 | Objective Caml 前身 | 模式比對、代數資料類型(enum/struct)、trait 式多型的基礎 |
| 2001 | Cyclone 語言 | C 的安全方言,區域(region)型別檢查記憶體壽命——借用檢查的理論前身 |
| 2003 | Cppcheck/CVE 時代 | 統計顯示 Microsoft/Google 的大型 C/C++ 專案約 70% 嚴重漏洞源於記憶體安全 |
正式年表
工具鏈發展主軸
- 2012 rustpkg → 2014 Cargo —— 套件管理從實驗走向一體化設計:
Cargo.toml、語義化版本、依賴鎖定,成為後世語言工具鏈(如 Swift、Zig)的參考對象。 - 2016 rustup —— 統一管理 stable/beta/nightly 與跨平台目標,消除工具鏈版本地獄。
- 2019 rust-analyzer —— 以「編譯器即函式庫」思路打造 IDE 後端,補齊 rustc 的 IDE 補全缺陷。
- crates.io —— 2014 年上線,2023 年突破十萬套件,安全性靠
cargo audit 與 supply chain 政策持續補強。
發展主軸
- 2006–2010:個人專案與 Mozilla 接手 —— 一場車庫裡的實驗,為了解決「網頁瀏覽器這種 C++ 大型軟體的當機噩夢」。
- 2010–2015:大瘦身與定型 —— 砍掉 GC、刪除過多類型理論特性,在 1.0 前完成「少而精」的語言設計。
- 2015–2018:生態打底 —— Cargo/crates.io、rustup、
? 運算子,讓語言好用。 - 2018–至今:Edition 時代與企業採用 —— 非同步、const 泛型、GAT 逐步補齊表達力;Linux、Windows、Android 核心相繼採用,記憶體安全從理論變成國家級資安政策。