什麼是 R-Machine
國際化只是一個更通用理念的第一個使用案例。
應用程式中的每一個資源(本地化文字、服務、響應式狀態)都位於一個穩定的 namespace 之後,就像資料庫中的一張資料表。使用方依賴於名稱,而不依賴於值存放在哪裡或如何建構。你可以變更 namespace 背後的實作,而無需改動使用方、測試或 mock:編譯器會保證契約始終成立。這就是我們所說的 uniformity under change ——程式碼不斷演進,邊界始終穩定。
i18n 正是這套機制有效的證明:翻譯只是 namespace 背後的另一種資源,端到端完全 type-safe。讓架構對你而言可預測的那個特性,同樣讓它對 coding agent 而言可讀——相依圖是顯式且具名的,而非隱式的。