基於 Zig 的輕量級 Clojure 運行時,支持 WebAssembly FFI
開發工具一個用 Zig 編寫的 Clojure 運行時,讓你能從 Clojure 呼叫 WebAssembly 模塊,使用其他語言的庫。
此 GitHub 開源專案 ClojureWasm 是一個用 Zig 從頭編寫的輕量級 Clojure 運行時,完全無需 JVM,旨在提供小型、快速啟動的執行環境。專案構建為約 3.8 MB 的原生二進製文件,啟動時間僅需數毫秒,非常適合短暫工作負載如 CLI 工具、伺服器端腳本或伺服器無關應用。其核心功能是 WebAssembly FFI,允許開發者從 Clojure 代碼中加載其他語言(如 Rust、Go、Zig、C)編譯的 WebAssembly 模塊,並像呼叫普通函數一樣進行跨語言整合。此外,它支持 clojure.core 及多個標準庫命名空間,提供 CIDER 兼容的 nREPL 以便編輯器整合,並能將程序編譯為單一可執行文件。README 說明此專案讓開發者能在 Clojure 生態中利用其他語言已有的成果。