Zig es un lenguaje de programación de propósito general y un conjunto de herramientas para mantener software robusto, óptimo y reutilizable.

Comenzar Última Versión:  0.13.0
Documentación Cambios

⚡ Un Lenguaje Sencillo

Céntrate en depurar tu aplicación y no tu conocimiento del lenguaje de programación.

  • Sin control de flujo oculto.
  • Sin asignaciones de memoria ocultas.
  • Sin preprocesador, sin macros.

⚡ Comptime

Un enfoque fresco a la metaprogramación basada en ejecución de código en tiempo de compilación y evaluación tardía.

  • Llama cualquier función en tiempo de compilación.
  • Manipula tipos como si fueran valores sin penalizar el tiempo de ejecución.
  • Comptime emula la arquitectura de destino.

⚡ Mantenlo con Zig

Mejora gradualmente tu base de código en C/C++/Zig.

  • Usa Zig como un sustituto de compilador de C/C++ que no tiene dependencias externas y permite la compilación cruzada de fábrica.
  • Aprovéchate de zig build para crear un entorno de desarrollo consistente para todas las plataformas.
  • Añade una unidad de compilación de Zig a tus proyectos en C/C++, exponiéndolos a su extensa librería estándar.

Mirada Completa

Ejemplos de código

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

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

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

    var it = std.mem.tokenizeAny(u8, input, " ,");
    while (it.next()) |num| {
        const n = try parseInt(u32, num, 10);
        try list.append(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.

La comunidad de Zig es descentralizada

Todo el mundo es libre de iniciar y mantener su propio lugar de reunión para la comunidad. No existe el concepto de "oficial" o "no oficial". No obstante, cada lugar de reunión tiene sus propias reglas y moderadores.

Desarrollo principal

El repositorio de Zig se encuentra en https://github.com/ziglang/zig, donde también hospedamos el seguimiento de incidencias y discutimos propuestas. Se espera que los contribuidores sigan el Código de Conducta de Zig.

Zig Software Foundation

La ZSF es una corporación 501(c)(3) sin ánimo de lucro.

La Zig Software Foundation es una corporación sin ánimo de lucro fundada en 2020 por Andrew Kelly, el creador de Zig, con el fin de sostener el desarrollo del lenguaje. Actualmente, la ZSF es capaz de ofrecer empleo con remuneración competitiva a un pequeño número de contribuidores principales. Esperamos ser capaces de extender esta oferta a más contribuidores en el futuro.

La Zig Software Foundation se mantiene con donaciones.

Aprender más

Mecenas Corporativos

Las empresas a continuación proveen apoyo económico directo a la Zig Software Foundation.

Mecenas en GitHub

Gracias a las personas que donan a Zig, el proyecto se debe a la comunidad open source y no a entes corporativos. En particular, estas buenas personas donan a Zig al menos $200 USD mensuales:

  • José M Rico
  • drfuchs
  • Kirk Scheibelhut
  • Mitchell Hashimoto
  • Bun
  • Huly® Platform™
  • Stevie Hryciw
  • Karrick McDermott
  • Joran Dirk Greef
  • bfredl
  • Simon A. Nielsen Knights
  • Emi
  • Derek Collison
  • Paul Harrington
  • Clark Gaebel
  • Marcus Eagan
  • Ken Chilton
  • Will Manning
  • Spiral
  • Alex Mackenzie at Tapestry VC
  • Alok Parlikar
  • Keygen
  • Se actualiza a diario.