「快速交付」交易的終結:為何 AI 正將語言選擇轉向系統語言

過去十年,軟體工程領域的主流觀念是「快速交付勝過快速執行」。開發者預設使用 Python 或 TypeScript,因為其生態系統龐大、人才庫深厚,且從構思到可運行 Demo 之間的摩擦力極小。像 Rust、Go 或 C++ 這樣的系統語言提供了高出好幾個數量級的效能,但代價很高:陡峭的學習曲線、較慢的開發週期,以及往往讓人感到像是對手的建置系統。

這種交易已經結束了。高能力 AI agent 的出現從根本上改變了語言選擇的權衡計算。當編碼的「困難部分」——管理記憶體安全、並行處理和嚴格的型別系統——由 agent 處理時,系統語言的執行時優勢開始超過腳本語言的人機工程學優勢。

回饋迴圈:為何 AI 更偏好「困難」語言

與直覺相反,對人類來說最難掌握的語言,正成為 AI agent 最容易鎖定的目標。這在很大程度上歸功於強型別系統和嚴謹編譯器所提供的緊密回饋迴圈。

正如業界觀察家所指出的,Rust 特別適合 AI 輔助開發。因為 Rust 編譯器非常明確,且錯誤訊息非常精確,它提供了持續的高品質訓練訊號。當 agent 生成的程式碼編譯失敗時,編譯器的回饋讓模型能夠即時自我修正。在這種環境下,編譯器充當了確保正確性的護欄,其方式是 Python 的動態特性所無法做到的。

轉變的證據:從論文到生產環境

在 AI 編排的驅動下,我們看到高複雜度專案在極短的時間內完成,僅需以往所需時間的一小部分:

  • TypeScript 編譯器: Microsoft 最近將 TypeScript 編譯器移植到 Go,實現了 10 倍的效能提升。這項決策是由於 Go 在僅需傳統工程成本一小部分的投入下,提供了必要的效能增益。
  • C 編譯器在 Rust 中實現: 研究人員使用並行的 Claude agent 寫出了一個生產等級的 C 編譯器,使用 Rust 語言——這項任務以往是研究生論文的課題——在短短幾週內以相對較低的 API 成本完成。
  • 引擎移植: Ladybird 瀏覽器的 JavaScript 引擎在 AI 的指導下,於兩週內從 C++ 移植到 Rust,實現了與原版位元對位的等效性,且在數萬次測試中零回歸。

「生態系統」論點的侵蝕

歷史上,Python 最強大的論點是其生態系統(FastAPI、PyTorch、pandas)。然而,隨著 Python 生態系統底層的「管路」正被用 Rust 重寫,這項優勢正在侵蝕。

像 Polars、Pydantic 和 Hugging Face tokenizers 這樣的函式庫正日益以 Rust 為基礎。Python 生態系統正變成一個「戴著 Python 帽子帽的 Rust 生態系統」。當核心邏輯已經是用系統語言寫成的,Python wrapper 就開始顯得像是多餘的開銷。這種趨勢透過 OpenAI 收購基礎設施工具如 Astral(uvruff 的開發者)以及 Anthropic 收購 Bun 的舉動進一步證實,這顯示 AI 實驗室將高效能工具鏈視為 AI 領先工程的必要基礎設施。

從修補到移植的轉變

AI agent 正改變開源軟體的貢獻單位。在傳統模式下,開發者在依賴項中發現 bug,然後提交一個 patch。現在,將整個函式庫移植到不同語言的成本正在驟降。

「對我來說,價值正在從程式碼轉移到測試和文件。一個好的測試套件可能實際上比程式碼本身更有價值。」

如果將函式庫跨語言移植變成一項僅需人類監督幾分鐘、而非數月人工勞動的任務,那麼維護舊有依賴項的動機就會減弱。 「fork and port」的能力取代了「patch and upstream」的需求。

反對意見與限制因素

儘管有此轉變,這種轉型並非絕對。仍有幾個關鍵限制因素:

1. 人類參與(Human-in-the-Loop)

批評者認為,在團隊不熟悉的語言中使用「vibe-coding」是災難的配方。雖然 AI 可以生成高效能的 Rust app,但人類仍必須擔任正確性的判斷者。如果生產環境中出現了關鍵 bug——例如一個僅在重載下才出現的 $O(N^2)$ 複雜度問題——一個無法閱讀該語言的團隊將無力快速修復它。

2. 訓練數據偏誤

AI 的熟練度是訓練數據的反映。Rust 和 Go 語言在 GitHub 上的人氣使其受益,但小眾或高度專業化的語言(如 Zig、Haskell 或 Gleam)仍缺乏足夠的數據量,使 agent 效能不如預期,無論該語言本身的邏輯如何。

3. 領域主導地位

在深度學習研究領域,PyTorch 的主導地位不太可能動搖。模型權重與包裝語言無關,研究社群的研究優先順序是迭代速度而非執行時效能。

結論:新政權

過去二十年語言選擇的趨勢,是由於人類在低階語言上的開發速度緩慢而形成的限制。該限制正在消失。人類的角色正從「編寫程式碼」轉向「架構系統並審查核對輸出」。

在這個新政權下,Python 的人機工程學優勢變得不再重要,而系統語言的執行時效能會產生複利效應。我們正在進入一個時代,其中最成功的語言將不再是那些對人類最容易寫的語言,,而是那些對 agent 最容易鎖定與驗證的語言。

Sources