Zig — імперативна, статично типізована, компільована мова програмування загального призначення, розроблена Ендрю Келлі. За задумкою, повинна замінити мову C, будучи ще меншою і простішою для програмування, водночас пропонуючи сучасний функціонал, нові оптимізації та різноманіття механізмів безпеки, але не будучи настільки вимогливою в безпеці під час виконання, як інші мови. Має відмінності від Go, Rust та , які мають схожу мету, але націлені на середовище C++.
Приклади
Привіт, світе! const std = @import("std");
pub fn main() !void { const stdout = std.io.getStdOut().writer(); try stdout.print("Привіт, {s}!\n", .{"світе!"}); }
через stderr:
const std = @import("std");
pub fn main() void { std.debug.print("Привіт, {s}!\n", .{"світе"}); }
Узагальнений зв'язаний список pub fn main() void { var node = LinkedList(i32).Node { .prev = null, .next = null, .data = 1234,
var list = LinkedList(i32) { .first = &node, .last = &node, .len = 1,
fn LinkedList(comptime T: type) type { return struct { pub const Node = struct { prev: ?*Node, next: ?*Node, data: T,
first: ?*Node, last: ?*Node, len: usize,
Проєкти
— середовище виконання JavaScript та TypeScript, написане на Zig. Використовує віртуальну машину JavaScriptCore браузера Safari.
Див. також
C C++ Nim Rust D
Примітки
Література
Посилання
Movie: Introducing Zig Movie: The Road to 1.0 Zig Weekly