Zigは、アンドリュー・ケリーによって設計された命令型の汎用の静的型付けのコンパイル型システムプログラミング言語である[2][3]。 この言語は「堅牢性、最適性及び保守性」向けに設計されており[4][5]、コンパイル時のジェネリクス、リフレクション、クロスコンパイル及び手動メモリ管理(英語版)をサポートしている[6]。 この言語の主な目標は、C言語に依存せずにこれを改善し[7][8]、Rustなどから着想を得ることである[9]。 Zigにはパックされた構造体[注釈 1]、多倍長整数[10]、複数のポインタ型などの低レベルプログラミングのための多くの機能がある[11]。 リファレンス実装のコンパイラはZig及びC++で記述されており、LLVM[12]をバックエンドとして使用し[13][14]、LLVMがサポートするターゲットの多くをサポートしている[15]。 コンパイラはフリーかつオープンソ