Zero Global State • 137 Tests Passing • Real WASM Runtime

A Modern General-Purpose Lisp.

Zio 是一门以同像性(Homoiconicity)为基石的现代通用脚本语言:一门语言覆盖从自动化脚本、服务编排到 Agent 应用的完整光谱。 基于 Rust 实现,编译为原生 WebAssembly,具备 Common Lisp CLOS/AMOP 对象系统、syntax-rules 卫生宏与 JS / DOM 深度互操作。

Zio WASM Live Terminal ⚡ WASM Loading...
zio>
0
Rust 自动化单元测试 (100% Passing)
0
Native Bindings (含 WASM / JS FFI)
0
Special Forms 特殊形式
0
Workspace Crates (core + cli)

正交严密的核心设计定理

一门通用语言的设计原则——同样适用于脚本、服务与 Agent 编排

⚡

1. 状态显式化

零 thread_local 全局变量。所有状态在显式 EvalContext 中,在 Rust/WASM/浏览器端隔离运行。

🦀

2. Rust 合同,Lisp 组合

Rust 提供底层 Native 契约与 WASM 零开销性能边界;Lisp 提供元编程与灵活组合层。

🌐

3. JS / Web 原体深度互操作

内置 js/eval、js/console-log、js/dom-set-text 等原语,直接在浏览器 WASM 环境操作 DOM 与 JS 全局上下文。

🧬

4. 宏扩充 Eval 语义

内置 syntax-rules 模式匹配与自动 gensym 命名空间,彻底消除变量捕获。

📦

5. 协议优于实现

基于 CLOS / AMOP 哲学的 ZOS 对象系统,Generic Function 支持基于 C3 线性化算法的多分派 (Multi-Dispatch)。

🔄

6. 统一并发与 CSP

内置 Future / Promise 异步延迟解算与 Go/Clojure 风格 CSP Channel(chan, send!, recv!)。

正交分层系统架构

从底层 Host 到扩展库生态与 WASM 嵌入层

应用程序与 Web 宿主层 (Application & WASM Layer)
site/index.html (Web REPL) • zio-cli (CLI & REPL) • [Planned: LSP Server / DAP Debugger]
扩展库生态层 (Extension Library Layer)
lib/zio/protocol.zio (Protocol 系统) • lib/zio/entity.zio (Entity 模型) • lib/zio/persistent.zio (持久化集合) • lib/zio/datalog.zio
标准库层 (Standard Library Layer)
core.zio (内嵌核心宏 defn, when, cond, ->, ->>, assoc, dissoc, get-in, assoc-in)
运行时 & ZOS 对象层 (Runtime & ZOS Layer)
AST Evaluator (TCO Trampoline) • ZOS Class/GF/Method/C3 • syntax-rules 卫生宏 • Future/Channel • JS FFI (js/eval, js/dom-set-text)
前端语法层 (Frontend Reader)
Tokenizer • Parser • Sexp AST (内嵌 Span 源码定位) • Reader Macro
Rust 宿主层 (Rust Host Layer)
EvalContext • EvalRuntime • ModuleRegistry • IoHost • NativeFn • wasm-bindgen

核心特性与 JS 互操作演示

体验 Zio 在 WASM 环境下的全量求值与 JavaScript 交互能力

;; Real-time JavaScript & Web Interoperability in WASM
;; Execute arbitrary JS expressions directly from Zio:
(js/eval "document.querySelector('.hero h1').style.color = '#00f2fe'")

;; Manipulate DOM elements natively:
(js/dom-set-text ".terminal-title" "⚡ Zio WASM Engine Active")

;; Output to browser console:
(js/console-log "Hello from real Zio WASM engine in browser!")

路线图一览

按功能 Phase 组织的自举与生态演进阶段

✅

Phase 1 & Phase 2

核心稳定化与 ZOS 基础。实现 Span 错误定位、全 TCO 尾递归、IoHost 抽象与 Class/GF/Method 子集。

🚀

Phase 3 & Phase 4 & WASM

卫生宏引擎、ZOS 多分派 & MOP 反射、Future/Promise 异步解算、CSP 通道、JSON 原语与 WASM / JS FFI 原体交付。

🔮

Phase 5 & Phase 6 (扩展生态)

扩展库(persistent / entity / protocol)、zio-datalog 图查询、zio-agent 编排框架 MVP 交付,Cranelift JIT 可行化探索。