←新聞 9 / 12→

開發工具

使用 LLM 將 TypeScript 編譯器、檢查器與 LSP 移植至 Rust

Port of the TypeScript compiler, checker and lsp to Rust, by LLM

使用 LLM 將 TypeScript 編譯器、檢查器與 LSP 移植至 Rust

github.com · 2026-10-08

摘要

一項引人注目的實驗展示了如何利用大型語言模型(LLM)自動將 TypeScript 編譯器、類型檢查器及語言伺服器協議(LSP)從 JavaScript 移植到 Rust。這項成果不僅證明了 AI 在處理複雜、高耦合度程式碼重構上的強大能力,也為開發者提供了一個極具參考價值的自動化重構範例,顯示 AI 已能勝任傳統上需要深厚領域知識的系統級工程任務。

一項實驗性專案顯示,大型語言模型能處理複雜的程式碼移植。開發者利用 LLM,把 TypeScript 編譯器、類型檢查器和語言伺服器協議(LSP)從 Go 移植到 Rust,並在真實世界專案中達到完全相容。

移植過程與成本

這項工作花了超過 42 萬美元的語言模型 API 費用。開發者一開始用多個 OpenAI 模型嘗試,投入超過 40 萬美元的 API 成本。這些模型產出超過 130 萬行 Rust 程式碼,但相容度最後停在 84% 左右。

後來改用 Opus 5.5,10 小時內就做出第一個可運行的版本。Opus 5.5 從零開始重寫,進度遠超之前的模型。最終 API 成本約 24,047 美元,耗時兩週,用量相當於該帳戶每週 200 美元方案限額的 9 到 10 倍。成本雖高,但考慮到 typescript-go 投入的工作量,並沒有那麼糟。

功能特性與相容性

該專案名為 ts-rust(亦稱 tsc-rs),直接移植自微軟的 TypeScript 編譯器原生版本,保留 Go 版本的演算法與行為,並提供相同的命令列介面(tsc)、語言伺服器和 API。

安裝方式是透過 npm 套件,執行 `npx tsc-rs -p tsconfig.json`。移植版本是針對 TypeScript 7.1.0-dev(2026 年 9 月 29 日)進行,並與該版本做對照比較。在 120 個開源倉庫的測試中,命令列輸出與原版本幾乎完全一致,只在已知問題,以及原版本本身不穩定(輸出每次執行都不同)的情況下有差異。

性能表現

在類型檢查速度上,tsc-rs 在 60 個開源專案上的幾何平均值,約為原版本(Go 編譯器)耗時的一半。在 6 個主要開源專案的詳細測試中:

- VS Code:tsc-rs 耗時 4.20 秒,比 tsc 6 快 13.0 倍 - Sentry 前端:tsc-rs 耗時 4.46 秒,快 13.2 倍 - Playwright:tsc-rs 耗時 0.34 秒,快 13.2 倍 - Excalidraw:tsc-rs 耗時 0.70 秒,快 7.6 倍 - TypeORM:tsc-rs 耗時 0.36 秒,快 10.7 倍

與 tsc 7(Go 編譯器)相比,tsc-rs 平均快 1.61 倍。

已知限制

該移植版本在某些情況下有已知問題:

- 在部分單體倉庫中,如果工作區套件的原始檔同時能透過 node_modules 和直接匯入兩種路徑取得,tsc-rs 可能為更多檔案寫入輸出,並報告 TS6059 錯誤。 - 在 `tsc -b` 模式下,如果一個專案在沒有專案參考的情況下匯入另一個專案的輸出,tsc-rs 可能讀到舊版或遺失的輸出。 - 在編輯器中長時間編輯時,記憶體會緩慢增長,約每 1,000 次編輯增加 20 MiB。

技術細節

該專案採用 MIT 授權,但保留所移植程式碼的原始授權:TypeScript 為 Apache-2.0,部分 Go 標準庫程式碼為 BSD-3-Clause。移植範圍涵蓋編譯器主體和 Effect 語言服務診斷功能,所有 181,711 個移植自 Go 版本的測試都已通過。

目前支援的平台有 Linux x64(靜態編譯,相容任何發行版)和 macOS arm64,Windows 和 Linux arm64 版本尚未提供。

●開發者:可關注 AI 輔助重構工具對現有專案效能與維護成本的影響

●投資人:AI 軟體工程(AI SE)領域的技術成熟度與商業化潛力值得留意

●一般用戶:未來開發的軟體可能因底層效能提升而更穩定快速

重要性評分

77/100

🟠 值得關注

TypeScriptRustLLM編譯器移植自動重構
原文出處
上一則← OpenAI 分享數學領域的 AI 進展下一則COMPASS:在語言模型中定位推理能力的關鍵位置 →

喜歡這篇?每天早晨還有更多。

訂閱 5min AI,讓 AI 替你追蹤整個 AI 世界。

相關指南

🤖 本文摘要由 AI 自動生成,內容源自原始報導。如有疑慮,請參閱關於我們。

喜歡這篇?每天早晨還有更多。

訂閱 5min AI,讓 AI 替你追蹤整個 AI 世界。