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