中文母语,英文等价
关键字、内置、标准库全部有中文名;英文别名与中文关键字等价,可在同一文件里混写。
语言
不是语法玩具:并发、网络、TLS、面向对象、调试器都在自举编译器里,三端可用(HTTPS 在 Windows 上走系统 TLS)。
关键字、内置、标准库全部有中文名;英文别名与中文关键字等价,可在同一文件里混写。
启动 / 通道 / 选择 / 互斥锁。三端后端都直接生成协程调度,不依赖线程库。
TCP / HTTP / HTTPS。Linux 上 TLS 1.3 由 zhlang 实现:证书链、P-521、名称约束、CRL 吊销与 OCSP 钉接;Windows 走系统 TLS(WinHTTP),撤销检查由系统负责。
结构体、类、继承、初始化方法、命名构造、Go 式接口、一等函数与闭包。
@断点调试(等级, 内容) + -d:命中处停在终端,支持继续、退出、栈与帮助。
编译器、文档生成器、语法高亮规则都用 zhlang 写;/** … */ 生成响应式 HTML 文档。
速览
下面每一段都由官网下载的同一个自举编译器编译运行。
函数 阶乘(n)
如果 n <= 1
返回 1
返回 n * 阶乘(n - 1)
打印(阶乘(5)) // 120函数 生产(ch)
循环 i 从 1 到 3
发送(ch, i * 100)
关闭(ch)
常量 ch = 通道()
启动 生产(ch)
当 真
常量 v = 接收(ch)
如果 v == 假
跳出
打印(v)类 计数器
属性 n = 0
函数 加(k)
本.n = 本.n + k
常量 c = 计数器()
c.加(10)
打印(c.n) // 10常量 r = 网页请求("https://example.com")
打印(r["状态"], 长度(r["体"]))函数 繁忙(n)
@断点调试(信息, "进入")
返回 n * n
$ ./编译 程序.zh -d
断点 程序.zh:2 繁忙 [信息] 进入
调试 程序.zh:2> c/** @说明 两数相加
@参数 a 第一个数
@参数 b 第二个数
@返回 和 */
函数 加(a, b)
返回 a + b目标
每个宿主编译器都内建三端交叉目标;用 --target 指定,不需要交叉工具链。
静态 ELF,直接系统调用;产物零运行时依赖。
静态 ELF,目标机无需任何运行库;qemu 与真机均可运行。
PE64 可执行文件,直接调用 Win32 API;中文路径与参数全链路可用。
./编译 程序.zh -o 程序-arm --target aarch64-linux-gnu
./编译 程序.zh -o 程序.exe --target x86_64-windows-gnu上手
不需要安装 gcc、不需要包管理器、没有任何外部工具链。
取对应平台的单文件编译器,改名为 编译(Windows 为 编译.exe)。
chmod +x 编译源文件是 UTF-8 的 .zh;默认目标 = 当前宿主。
./编译 你好.zh产物是普通原生可执行文件,零运行时依赖。
./你好