Zig

Zig是一個命令式、通用、静态型別、编译的系統程式語言。 以「強健性、最佳性以及可維護性」為核心理念。 它支援編譯時泛型與反射、交叉編譯以及手動記憶體管理。 目標為改進 C语言 ，同時參考從 Rust 和其他語言。Zig 有許多低階程式設計的功能，例如緊緻結構（成員間沒有填充的結構）、任意大小的整數以及多指針型別。 Zig 最初的編譯器是用 Zig 和 C++ 編寫而成，以 LLVM 13 為後端 。這個編譯器使用 MIT許可證 授權。Zig 編譯器和 Clang 類似，能編譯 C 與 C++（使用「zig cc」以及「zig c++」指令），也為不同的平台提供標頭檔，包括 C標準函式庫 和 C++標準函式庫，因此 Zig 的 cc 與 c++ 子命令能直接作為交叉編譯器。 Zig 的開發由 Zig 軟體基金會 (ZSF) 資助，該資金會是一家非營利公司，由 Andrew Kelley 擔任總裁，也有雇傭一些全職員工，同時接受捐款。 const std = @import("std"); pub fn main() void { std.debug.print("Hello, {s}!\n", .{"World!"}); } pub fn main() void { var node = LinkedList(i32).Node { .prev = null, .next = null, .data = 1234, }; var list = LinkedList(i32) { .first = &node, .last = &node, .len = 1, }; } fn LinkedList(comptime T: type) type { return struct { pub const Node = struct { prev: ?*Node, next: ?*Node, data: T, }; first: ?*Node, last: ?*Node, len: usize, }; } C C++ Nim Rust D Kelley, Andrew. Introduction to the Zig Programming Language. andrewkelley.me. [8 November 2020]. （原始内容存档于2022-02-21）.  Release 0.13.0.  Zig has all the elegant simplicity of C, minus all the ways to shoot yourself in the foot. JAXenter. 2017-10-31 [2020-02-11]. （原始内容存档于2021-11-25） （美国英语）.  Tired of C? New programming language Zig aims to be more pragmatic and readable. 2017-10-19 [2020-04-22]. （原始内容存档于2021-11-25） （美国英语）.  Yegulalp, Serdar. New challenger joins Rust to topple C language. InfoWorld. 2016-08-29 [2020-02-11]. （原始内容存档于2021-11-25） （英语）.  Zig language and C. Sina Corp. 2020-07-12 [2020-08-12]. （原始内容存档于2021-11-25）.  The Zig Programming Language. ziglang.org. [2020-02-11]. （原始内容存档于2022-04-01）.  Mozilla's Observatory, the Zig programming language, and uSens' VR/AR SDK—SD Times news digest: Aug. 29, 2016. SD Times. 2016-08-29 [2020-02-11]. （原始内容存档于2021-11-25） （美国英语）.  The Zig Programming Language. ziglang.org. [2020-02-11]. （原始内容存档于2022-04-01）.  Company, Sudo Null. Sudo Null - IT News for you. SudoNull. [2020-02-11]. （原始内容存档于2021-11-25） （英语）.  Kelley, Andrew. Unsafe Zig is Safer Than Unsafe Rust. andrewkelley.me. [2020-02-11]. （原始内容存档于2022-02-21）.  Tim Anderson 24 Apr 2020 at 09:50. Keen to go _ExtInt? LLVM Clang compiler adds support for custom width integers. www.theregister.co.uk. [2020-04-24]. （原始内容存档于2020-05-15） （英语）.  Documentation - The Zig Programming Language. ziglang.org. [2020-04-24]. （原始内容存档于2022-03-31）.  SD Times news digest: C++20 concepts in Visual Studio 2010 version 16.3, Bootstrap to drop IE support, and Zig 0.60 released. SD Times. 2020-04-14 [2020-04-19]. （原始内容存档于2021-11-25） （美国英语）.  A Reply to _The Road to Zig 1.0_. www.gingerbill.org. 2019-05-13 [2020-02-11]. （原始内容存档于2021-09-07） （英国英语）.  ziglang/zig, Zig Programming Language, 2020-02-11 [2020-02-11], （原始内容存档于2022-03-30）  0.6.0 Release Notes · The Zig Programming Language. ziglang.org. [2020-04-19]. （原始内容存档于2022-02-21）.  'zig cc': a Powerful Drop-In Replacement for GCC/Clang - Andrew Kelley. andrewkelley.me. [2021-05-28]. （原始内容存档于2022-03-17）.  Zig Makes Go Cross Compilation Just Work. DEV Community. [2021-05-28]. （原始内容存档于2022-03-03） （英语）.  Jakub Konka on Twitter. Twitter. [2021-05-28]. （原始内容存档于2021-12-01） （英语）.  Announcing the Zig Software Foundation ⚡ Zig Programming Language. ziglang.org. [2021-05-28]. （原始内容存档于2021-11-15）.  Sponsor ZSF ⚡ Zig Programming Language. ziglang.org. [2021-05-28]. （原始内容存档于2022-02-21）.  官方網站 GitHub （页面存档备份，存于互联网档案馆）