Zig ist eine Systemprogrammiersprache, die als moderne Alternative zu C entwickelt wurde. Ihr Compiler ist zugleich Build-Tool, Test-Runner und Paketmanager — die wichtigsten Befehle laufen daher alle über das zig-Kommando.

Kernbefehle

  • zig version — zeigt die installierte Compiler-Version an.
  • zig init — erzeugt ein neues Projekt mit build.zig und src/main.zig.
  • zig build — führt den Standard-Build-Schritt aus (Kompilieren nach zig-out/bin/).
  • zig build run — baut und startet das Programm direkt.
  • zig build test — kompiliert und führt alle Tests aus.
  • zig test src/main.zig — führt Tests einer einzelnen Datei aus.
  • zig build-exe datei.zig — erzeugt direkt eine ausführbare Datei, ohne build.zig.
  • zig run datei.zig — kompiliert und führt eine Datei in einem Schritt aus.
  • zig fmt — formatiert Quellcode automatisch (kanonischer Stil).
  • zig translate-c — übersetzt C-Header in Zig-Deklarationen für die Interop.

Besonderheiten

Zig verzichtet auf eine Garbage Collection und verwaltet Speicher explizit. comptime erlaubt Metaprogrammierung, bei der Code bereits zur Compile-Zeit ausgeführt wird — so bleiben typsichere Optimierungen möglich. Fehler werden über Error Unions behandelt, defer sorgt für Aufräumarbeiten am Ende eines Blocks.

Das Build-System ersetzt Makefiles und CMake durch eine in Zig geschriebene build.zig-Datei, mit der sich Abhängigkeiten und Cross-Kompilierung verwalten lassen.

In seiner Design-Philosophie ähnelt Zig dem Scheme-Ansatz: Beide Sprachen setzen auf Klarheit und minimale Magie statt auf versteckte Abläufe — Zig verzichtet auf versteckte Speicherallokation, Scheme auf versteckte Kontrollfluss-Effekte.

Verwandte Grundlagen: C/C++-Befehle, Rust-Befehle, Go-Befehle, Assembly-Befehle.