Programmiersprachen: Zig soll die moderne Alternative zu C werden

C, C++, Rust und Go: Programmiersprachen zur systemnahen Entwicklung gibt es viele. Zig ist eine weitere und verfolgt einen minimalistischen Ansatz.

Artikel veröffentlicht am ,
Zu Zig gehört eigentlich auch Zag.
Zu Zig gehört eigentlich auch Zag. (Bild: XoMEoX/CC-BY 2.0)

Geht es in der Softwareentwicklung um systemnahes Programmieren, herrscht bei der Auswahl der Programmiersprache eigentlich kein Mangel. C oder C++, Rust und vielleicht auch Go sind die möglichen Alternativen. Und dann gibt es auch noch Zig – ein bisschen zumindest, denn die 2015 von Andrew Kelly initiierte Programmiersprache hat es bislang nicht zur Version 1.0 geschafft, Das wird auch noch eine Weile so bleiben, wie Kelly vor ein paar Monaten in einem Roadmap-Update verkündete: "2025? Das könnte klappen." Aber versprochen ist das nicht. "Kunst kann man nicht hetzen", sagte er.

Vom Konzept her ist Zig eine imperative, prozedurale, funktionale, objektorientierte, modulare Multi-Paradigmensprache. Zig-Sourcen sehen rein äußerlich wie eine Mischung aus Typescript und C aus, dazu kompatibel sind sie jedoch nicht. Zig kann aber Bibliotheken von C und C++ direkt importieren und der Compiler kann Header-Dateien für diese Sprache generieren, um umgekehrt in Zig geschriebene Programmteile in C oder C++ nutzen zu können. Verwendet wird Zig zum Beispiel schon in Bun.js.

Das Interessante steckt im Detail

Die interessanten Konzepte aber versteckt Zig in den Details. Eine Besonderheit ist, dass ein möglichst kleines Featureset enthalten sein soll. Die Entwickler finden es vorteilhaft, wenn es nur einen einzigen offensichtlichen Weg gibt, etwas zu erreichen. Eine Zeit lang hat man deshalb sogar auf For-Schleifen verzichtet, weil es While-Schleifen ja schon gab.

Interessant ist aber auch das Error-Handling-Konzept. Exceptions werden nicht geworfen, sondern einfach zurückgegeben. Weil geworfene Exceptions oft als versteckter Control-Flow missbraucht werden, gibt es das nicht, stattdessen können die Rückgabewerte von Funktionen sowohl der deklarierte Typ als auch ein Fehler sein – der Rückgabewert ist also ein Union-Typ aus Fehler-Typ und dem Typ der eigentlichen Rückgabe.

Speicher-Allocator-Objekt in der Standard Library

Wie eigentlich jede systemnahe Programmiersprache braucht auch Zig eine direkte Möglichkeit, Speicher zu allokieren. Ein direktes Malloc gibt es aber nicht, stattdessen bekommt man den Speicher über eine Anfrage an ein Allocator-Objekt in der Standard Library. Damit sollen versteckte Allokationen verhindert werden.

Könnte also wirklich interessant werden.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


FreiGeistler 12. Apr 2023

Ich ja auch. Aber Vererbung kam.mir lustigerweise schon immer zu mühsam vor. Mühsam...

FreiGeistler 11. Apr 2023

Senior schreit Wolke an.

demon driver 14. Mär 2023

Auch wahr.

Boereck 14. Mär 2023

Ich finde Rusts und Zigs return basierte Varianten im Zusammenspiel mit anderen Features...



Aktuell auf der Startseite von Golem.de
ZDF Magazin Royale
Eventim-Aktie bricht nach Böhmermann-Show ein

Mit Fantasiegebühren zum Imperium, so der Vorwurf der ZDF-Sendung. Kritik an Eventims Geschäftspraktiken ist nicht neu.

ZDF Magazin Royale: Eventim-Aktie bricht nach Böhmermann-Show ein
Artikel
  1. Quantennavigation: Die Quantenmystik der iranischen Armee
    Quantennavigation
    Die Quantenmystik der iranischen Armee

    Mit einem angeblichen Quantengerät soll die iranische Marine unabhängig von GPS navigieren können. Das klingt vertraut - und ist sehr wahrscheinlich Quatsch.

  2. Obsididan Entertainemnt: Avowed spielt in First-Person auf einer Insel
    Obsididan Entertainemnt
    Avowed spielt in First-Person auf einer Insel

    Kein neues Skyrim, sondern ein kompaktes Fantasy-Rollenspiel mit First-Person-Kämpfen: Obsidian Entertainment hat Avowed vorgestellt.

  3. Dogen City: Schwimmende Stadt für 40.000 Einwohner vorgestellt
    Dogen City
    Schwimmende Stadt für 40.000 Einwohner vorgestellt

    Die Dogen City eines Architektur-Start-ups aus Japan soll Tourismus bieten, medizinische Einrichtungen und sogar Weltraumraketen haben.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • NBB Black Weeks: Rabatte bis 60% • Samsung 980 Pro 1TB 73,90€ • MindStar: PowerColor RX 6800 XT 549€ • Xiaomi Flash-Sale mit Smartphones & Wearables • Crucial P3 Plus 2TB 96,99€ • Sandisk Portable SSD 2TB 109€ [Werbung]
    •  /