技術創業者在選擇技術路線時往往面臨一個根本問題:是站在現有生態的肩膀上漸進演進,還是另起爐灶創造一個全新的系統?后者聽起來更有顛覆性,也更容易獲得媒體關注。但 Wasp 聯合創始人兼 CEO Matija Sosic 近日在一篇博客文章中坦承,團隊歷時五年、花費超過五百萬美元之后,終于得出一個痛苦的結論:創建新的 Web 開發編程語言是個錯誤。
![]()
Wasp 成立于 2020 年,初心是構建一個面向 JavaScript 全棧開發的框架,定位是"JavaScript 世界的 Rails 或 Laravel"。團隊認為 Web 應用中存在大量重復模式——身份認證、郵件發送、部署配置——理想情況下應該被抽象成聲明式的配置而非重復的代碼。2021 年獲得 Y Combinator 投資后,Wasp 隨后完成了超過五百萬美元的融資,推出了自研的 DSL(領域特定語言)wasp-lang。
如果你好奇的話,這里有一段代碼片段,展示了這個 wasp-lang 最終的形式:
app todoApp {
title: "ToDo App", // visible in the browser tab
auth: { // full-stack auth out-of-the-box
userEntity: User,
methods: { google: {}, gitHub: {}, email: {...} }
}
}
route RootRoute { path: "/", to: MainPage }
page MainPage {
authRequired: true, // Limit access to logged in users.
component: import Main from "@client/Main" // <-- Your React code.
}
query getTasks {
fn: import { getTasks } from "@server/tasks", // <-- Your Node.js code.
entities: [Task] // Automatic cache invalidation.
}
問題在產品推向市場后很快顯現。Sosic 在博客中寫道,雖然開發者對 Wasp 的理念表示認可——抽象常見 Web 應用模式這個方向本身沒有問題,但當他們意識到需要學習一門新語言時,態度立刻變得謹慎。自定義的 wasp-lang 中的"lang"后綴讓用戶本能地警覺:在職業生涯中已經需要掌握那么多編程語言,誰愿意再學一個帶著"lang"標簽的東西?
![]()
語言只是表象,更深層的困難在于工具鏈。為一門自定義語言構建完善的 IDE 支持是極其耗費資源的工作。Wasp 團隊在 VS Code 擴展上投入了大量精力,但 Sosic 坦承最終效果只達到了預期的百分之八十。語言本身可以有語法提示、類型檢查和編譯檢查,但語言之外的工具——調試器、靜態分析、代碼格式化、第三方庫等基礎設施幾乎不可能靠一個初創團隊獨立完善。
![]()
幾年實踐下來,團隊終于看清了真正有價值的東西到底是什么。Sosic 在博客中給出的核心觀點是:語言從來不是護城河,真正的價值在于"編譯時對整個應用的高層次理解"。Wasp 的核心創新——在編譯時理解應用的整體結構、自動生成代碼片段、理解不同層之間的依賴關系——并不依賴于一門自定義語言才能實現。這一能力完全可以建立在現有的 TypeScript 生態之上。
因此 Wasp 團隊決定用 TypeScript 完全取代自定義語言。需要強調的是,這只是接口層面的變化——Wasp 的底層架構、編譯器、代碼生成邏輯都保持不變。開發者現在獲得的是:熟悉的 TypeScript 語法、即時的 IDE 支持、類型檢查、自動補全,以及 Wasp 提供的全棧抽象能力。
轉向 TypeScript SDK 之后,Wasp 的采用門檻大幅降低。開發者不需要學習新語言,只需要熟悉 TypeScript——這已經是現代 Web 開發者的基本技能。代價是多寫一些代碼,但換來的是與整個 TypeScript 生態的完全兼容:可以用現有的編輯器、現有的調試器、現有的 NPM 包、現有的代碼規范工具。這筆交易對大多數團隊來說是劃算的。
![]()
新語言聽起來有顛覆性,但語言本身是一個高度敏感的技術決策——開發者會本能地抵觸,學習成本必須在產品價值上得到充分補償。在工具鏈已經高度成熟的領域尤其如此:已經存在多年的語言背后,往往有著幾十年積累的編譯器優化、海量的第三方庫、完善的文檔和社區支持。這些不是靠"設計一門更好的語言"就能快速追上的。
參考來源:https://wasp.sh/blog/2026/05/13/new-language-for-web-dev-was-a-mistake
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.