Zig — це мова програмування загального призначення та інструментарій для підтримки надійного, оптимального та багаторазового програмного забезпечення.

ПОЧАТИ Останній Реліз:  0.15.2
Документація Зміни

⚡ Проста мова

Зосередьтеся на налагодженні програми, а не на налагодженні своїх знань мови програмування.

  • Немає прихованого потоку керування.
  • Жодних прихованих виділень пам’яті.
  • Ні препроцесора, ні макросів.

⚡ Comptime

Новий підхід до метапрограмування, заснований на виконанні коду під час компіляції та відкладеному обчисленні.

  • Викликайте будь-яку функцію під час компіляції.
  • Маніпулюйте типами як значеннями без накладних витрат під час виконання.
  • Comptime емулює цільову архітектуру.

⚡ Підтримуйте з допомогою Zig

Поступово покращуйте свою кодову базу C/C++/Zig.

  • Використовуйте Zig як вбудований компілятор C/C++ без залежностей, який “з коробки” підтримує крос-компіляцію.
  • Використовуйте zig build, щоб створити узгоджене середовище розробки на всіх платформах.
  • Додайте модуль компіляції Zig до проектів C/C++, відкриваючи багату стандартну бібліотеку для свого коду C/C++.

Повний огляд

Більше зразків коду

index.zig
const std = @import("std");
const parseInt = std.fmt.parseInt;

test "parse integers" {
    const input = "123 67 89,99";
    const gpa = std.testing.allocator;

    var list: std.ArrayList(u32) = .empty;
    // Ensure the list is freed at scope exit.
    // Try commenting out this line!
    defer list.deinit(gpa);

    var it = std.mem.tokenizeAny(u8, input, " ,");
    while (it.next()) |num| {
        const n = try parseInt(u32, num, 10);
        try list.append(gpa, n);
    }

    const expected = [_]u32{ 123, 67, 89, 99 };

    for (expected, list.items) |exp, actual| {
        try std.testing.expectEqual(exp, actual);
    }
}
Shell
$ zig test index.zig
1/1 index.test.parse integers...OK
All 1 tests passed.

Спільнота Zig децентралізована

Будь-хто може створити та підтримувати власний простір для збору спільноти. Немає понять «офіційний» чи «неофіційний», однак у кожному місці збору є свої модератори та правила.

Головна розробка

Репозиторій Zig можна знайти за посиланням https://github.com/ziglang/zig, де ми також розміщуємо трекер проблем і обговорюємо пропозиції.
Очікується, що учасники слідуватимуть за Кодексом поведінки Zig.

Zig Software Foundation

ZSF є некомерційною корпорацією 501(c)(3).

Zig Software Foundation — некомерційна корпорація, заснована у 2020 році Ендрю Келлі, творцем Zig, з метою підтримки розвитку мови. Наразі ZSF може запропонувати оплачувану роботу за конкурентними ставками невеликій кількості основних учасників. Ми сподіваємося, що в майбутньому зможемо розширити цю пропозицію для більшої кількості основних учасників.

Zig Software Foundation підтримується за рахунок пожертв.

Дізнайтеся більше

Корпоративні Спонсори

Наступні компанії надають пряму фінансову підтримку Zig Software Foundation.