W języku programowania Zig wprowadzono zmiany, które umożliwiają kompilatorowi Zig stage2, napisanemu w Zig, kompilację samego siebie (stage3), co czyni ten język samowystarczalnym (self-hosting). Zakłada się, że ten kompilator będzie oferowany domyślnie w nadchodzącej wersji 0.10.0. Stage2 wciąż jest niepełnoprawny, ponieważ brakuje wsparcia dla sprawdzeń w czasie wykonania, występują różnice w semantyce języka itd.
Wprowadzone zmiany umożliwią dodanie wsparcia dla „gorącej wymiany” kodu podczas wykonywania (tj. bez przerywania, hot code swapping), częściowo zredukowanie zależności od LLVM i C++ (co ułatwi proces portowania na nowe architektury) oraz drastyczne skrócenie czasu kompilacji programów, co przyspieszy rozwój kompilatora.
Źródło: opennet.ru
