什么是 Vix 语言
Vix 是一种轻量级、静态类型的编译型编程语言。它融合了 C 语言的性能、Rust 的内存安全思想以及现代脚本语法的表达力。
设计目标
- 性能优先:基于 LLVM 的 AOT 编译,生成原生机器码
- 内存安全:v0.3.0 引入轻量级 Owner 系统,提供编译期所有权检查
- 语法简洁:无分号,关键字少(
let、fn、match等),学习曲线平缓 - 自举:正在用 Vix 自举编译器(vixc0)
核心特性
- 静态类型 + 编译期检查
- LLVM 后端(x86_64、AArch64、ARM、RISC-V、WebAssembly)
- 代数数据类型(ADT):Option、Result、自定义枚举
- 泛型:类型参数化的函数和结构体
- 所有权系统:借用检查、移动语义、复制类型推断
- 元组、字符串、动态数组
- 无 GC
extern "C"FFI- 跨平台:Windows / Linux / macOS
示例代码
vix
fn fib(n: i32): i64
{
let mut a = 0
let mut b = 1
for (i in 1 .. n)
{
let c = a + b
a = b
b = c
}
return b
}
fn main(): i32
{
print(fib(40))
return 0
}
版本历史
| 版本 | 日期 | 里程碑 |
|---|---|---|
| v0.3.0 | 2026-06-07 | 所有权系统、ref/mut ref |
| v0.2.0 - v0.2.10 | 2026-05 | 类型加固、ADT 修复、语法增强 |
| v0.1.0 - v0.1.2 | 2026-05 | 初始设计、幂运算符、字符串匹配 |
自举编译器 (vixc0)
vixc0 是用 Vix 编写的 Vix 编译器前端,支持 --lex、--parser、--ast 调试模式和 QBE 文本输出。
项目生态
| 项目 | 描述 | 状态 |
|---|---|---|
| vixc 编译器 | 核心编译器(LLVM 后端) | 开发中 |
| vixc0 | Vix 自举编译器 | 原型阶段 |
| xpm | Vix 包管理器 | 社区贡献 |
| VS Code 扩展 | 语法高亮与代码分析 | 已发布 |
