⚡ 小巧简洁的语言
专注于调试你的应用程序,而不是调试你的编程语言知识。
- 没有隐式控制流。
- 没有隐式内存分配。
- 没有预处理器,没有宏。
⚡ 编译期代码执行
基于编译期代码执行和惰性求值的全新元编程方法。
- 编译期调用任意函数。
- 无需运行期成本,将类型当作值来操作。
- 编译期模拟目标架构。
⚡ 性能与安全并重
编写快速、清晰的代码处理所有的错误情况。
- 指导你优雅地编写错误处理逻辑。
- 可配置的运行时检查帮助你在性能和安全保证之间取得平衡。
- 使用可移植的向量类型表达 SIMD 指令。
const std = @import("std");
const json = std.json;
const payload =
\\{
\\ "vals": {
\\ "testing": 1,
\\ "production": 42
\\ },
\\ "uptime": 9999
\\}
;
const Config = struct {
vals: struct { testing: u8, production: u8 },
uptime: u64,
};
const config = x: {
var stream = json.TokenStream.init(payload);
const res = json.parse(Config, &stream, .{});
// Assert no error can occur since we are
// parsing this JSON at comptime!
break :x res catch unreachable;
};
pub fn main() !void {
if (config.vals.production > 50) {
@compileError("only up to 50 supported");
}
std.log.info("up={d}", .{config.uptime});
}
社区
Zig 软件基金会
ZSF 是一家 501(c)(3) 非营利公司。
Zig 软件基金会是由 Zig 的创造者 Andrew Kelley 在 2020 年成立的非营利性公司,目标是支持该语言的发展。目前,ZSF 能够以有竞争力的价格向少数核心贡献者提供有偿工作。我们希望在未来能够将这一优惠扩大到更多的核心贡献者。 Zig 软件基金会由捐款维持。
了解更多
赞助商
企业赞助商
以下公司为 Zig 软件基金会提供直接的资金支持。
GitHub 赞助
感谢赞助 Zig 的人,该项目对开源社区而不是企业股东负责。特别地,这些好心人以每月 200 美元或以上的金额赞助 Zig。
本栏目将会在每月初更新。
All your codebase are belong to us.