Zig

✍ dations ◷ 2025-11-27 13:59:48 #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 {    const stdout = std.io.getStdOut().writer();    try stdout.print("Hello, {}!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

参考资料

  1. ^ Kelley, Andrew. Introduction to the Zig Programming Language. andrewkelley.me. . (原始内容存档于2022-02-21). 
  2. ^ 2.0 2.1 https://ziglang.org/download/#release-0.10.1.
  3. ^ Zig has all the elegant simplicity of C, minus all the ways to shoot yourself in the foot. JAXenter. 2017-10-31 . (原始内容存档于2021-11-25) (美国英语). 
  4. ^ Tired of C? New programming language Zig aims to be more pragmatic and readable. 2017-10-19 . (原始内容存档于2021-11-25) (美国英语). 
  5. ^ Yegulalp, Serdar. New challenger joins Rust to topple C language. InfoWorld. 2016-08-29 . (原始内容存档于2021-11-25) (英语). 
  6. ^ Zig language and C. Sina Corp. 2020-07-12 . (原始内容存档于2021-11-25). 
  7. ^ The Zig Programming Language. ziglang.org. . (原始内容存档于2022-04-01). 
  8. ^ Mozilla's Observatory, the Zig programming language, and uSens' VR/AR SDK—SD Times news digest: Aug. 29, 2016. SD Times. 2016-08-29 . (原始内容存档于2021-11-25) (美国英语). 
  9. ^ The Zig Programming Language. ziglang.org. . (原始内容存档于2022-04-01). 
  10. ^ Company, Sudo Null. Sudo Null - IT News for you. SudoNull. . (原始内容存档于2021-11-25) (英语). 
  11. ^ Kelley, Andrew. Unsafe Zig is Safer Than Unsafe Rust. andrewkelley.me. . (原始内容存档于2022-02-21). 
  12. ^ 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-05-15) (英语). 
  13. ^ Documentation - The Zig Programming Language. ziglang.org. . (原始内容存档于2022-03-31). 
  14. ^ 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 . (原始内容存档于2021-11-25) (美国英语). 
  15. ^ A Reply to _The Road to Zig 1.0_. www.gingerbill.org. 2019-05-13 . (原始内容存档于2021-09-07) (英国英语). 
  16. ^ ziglang/zig, Zig Programming Language, 2020-02-11 , (原始内容存档于2022-03-30) 
  17. ^ 0.6.0 Release Notes · The Zig Programming Language. ziglang.org. . (原始内容存档于2022-02-21). 
  18. ^ 'zig cc': a Powerful Drop-In Replacement for GCC/Clang - Andrew Kelley. andrewkelley.me. . (原始内容存档于2022-03-17). 
  19. ^ Zig Makes Go Cross Compilation Just Work. DEV Community. . (原始内容存档于2022-03-03) (英语). 
  20. ^ Jakub Konka on Twitter. Twitter. . (原始内容存档于2021-12-01) (英语). 
  21. ^ Announcing the Zig Software Foundation ⚡ Zig Programming Language. ziglang.org. . (原始内容存档于2021-11-15). 
  22. ^ Sponsor ZSF ⚡ Zig Programming Language. ziglang.org. . (原始内容存档于2022-02-21). 

外部连接

  • 官方网站
  • GitHub (页面存档备份,存于互联网档案馆)

相关

  • 费雅喀尼夫赫人(俄语:Нивхи;日语:ニヴフ/ニブフ)旧称吉利亚克人,是西伯利亚东南地区原住民族,分布于黑龙江下游至入海口以及库页岛北部,即今俄罗斯联邦的哈巴罗夫斯克边疆区和萨哈林州
  • 巴生巴生市(马来语:Klang),是马来西亚雪兰莪州西部的一个城市也是一个巫金,隶属于巴生市议会。其面积为573平方公里,辖区人口于2010年为744,062,市中心人口为240,016。该市北临瓜拉雪兰
  • 生态社区主义生态社区主义(Eco-communalism)是一种环境哲学,基本理念是简单生活、自给自足、可持续性,以及投资本土经济。生态社区主义设想在将来,资本主义经济体系将被相互依赖和相互联系的
  • 迈克尔·斯坦伯格 (律师)迈克尔·艾伦·斯坦伯格(英语:Michael Alan Steinberg;1959年2月6日-),是一位美国律师和政治家。他曾两次参选佛罗里达州议会,又曾争取2016年美国总统选举民主党党内提名,但均告失败
  • 约瑟芬·赫尔约瑟芬·赫尔(英语:Josephine Hull,1877年1月3日-1957年3月12日),美国女演员,曾获得金球奖最佳电影女配角、奥斯卡最佳女配角奖。
  • 夏末帝李�(?-1227年8月28日),夏献宗侄,父清平郡王,夏献宗病危时被推举为帝,史称“末帝”。李�在位时已为西夏灭亡的前夕,曾拒降蒙古。右丞相高良惠及各将士积极抵抗蒙古,但无奈天意造化弄人,中
  • 四姓四姓是指中国历史上某一时期非常有名望的四大望族,由于姓氏不同,而称为“四姓”。东汉明帝时:孙吴时吴中四姓:《世说新语·赏誉》说:“吴四姓旧目云:张文、朱武、陆忠、顾厚。”东
  • 许丙丁许丙丁(1899年9月24日-1977年7月19日),字镜汀,号绿珊盦主人,日治时期曾取日本名“本山泰若”。台湾台南人,南管音乐推广与爱好者、政治人物,台湾日治时期曾任警务人员。战后任台南市
  • 梁化河梁化河,流经中华人民共和国广东省惠州市惠东县和惠阳区,是西枝江右岸支流,上游也称石头河,发源于惠东县北部的坪天嶂西南麓,蜿蜒西南流至惠州市惠阳区平潭镇的新圩村汇入西枝江。
  • 波兰犹太人历史波兰犹太人的历史长达一个千禧年,既经历过漫长的宗教宽容时期,该国的犹太人群体繁荣昌盛;也在20世纪纳粹德国占领波兰期间,经历了犹太人大屠杀,整个群体几乎遭受了彻底的种族灭绝