Zig

✍ dations ◷ 2025-02-24 07:50: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 (页面存档备份,存于互联网档案馆)

相关

  • 塞浦路斯音节文字塞浦路斯音节文字(Cypriot syllabary)是铁器时代的塞浦路斯使用的音节文字,从大约公元前11世纪到前4世纪,此后它被希腊字母所替代。这个变革的发起者是萨拉米斯国王埃瓦戈拉斯。
  • 波音X-37X-37试验机或又称为轨道试验飞行器(英语:Orbital Test Vehicle,常缩写为OTV)是美国波音公司研制的无人太空飞机。X-37在起飞时需要以火箭搭载升空或大型飞机高空投放,再依靠自身
  • 球冠球冠是指一个球面被平面所截后剩下的曲面。截得的圆面是底,垂直于圆面的直径被截得的部分是高。也可看作圆弧绕过它的一个端点的圆的直径旋转一周得到的面。球冠的面积:
  • 南开经济研究《南开经济研究》1985年2月20日南开大学经济学院创办的综合性经济理论刊物,南开大学经济学院副院长李坤望任主编。该刊被收录于中国人文社会科学引文数据库等数据库。
  • 西格蒙德·弗洛伊德西格蒙德·弗洛伊德(德语:Sigmund Freud,出生名:Sigismund Schlomo Freud,1856年5月6日-1939年9月23日),奥地利心理学家、精神分析学家、哲学家,精神分析学的创始人,二十世纪最有影响
  • 德国政党德国属于多党制,联邦议院中的两大政党为德国社会民主党和德国基督教民主联盟(与姐妹党巴伐利亚基督教社会联盟属于同一个议会党团)。其他政党有自由民主党、左翼党和联盟90/绿
  • 艾迪尔·达·奥利华拉·艾莫林艾迪尔·达·奥利华拉·艾莫林(Adiel de Oliveira Amorim)一般称作艾迪尔,1980年8月13日生于库巴唐,巴西职业足球运动员。1997年,艾迪尔出道于巴西球队桑托斯,2000年转会到日本球
  • 阿坎族阿坎族(Akan people)是主要居住在加纳和科特迪瓦的民族群落。阿坎族是这两个国家的主要民族,总人口数为4千万。阿坎族人使用的语言属于克瓦语支。阿坎族包括以下支系:Ashanti、A
  • 魏兰魏兰(1866年4月7日-1928年9月17日),清末民初革命家。字石生,浙江云和县人。光复会领导人之一,辛亥革命时期浙江军政府咨议、都督府参谋长。1905年写成《畲客风俗》(以“浮云”为笔
  • 世界青年日世界青年日(英文译名:World Youth Day,港澳称为普世青年节),简称世青(WYD),是天主教会为青年族群举办的国际节庆活动,由前教宗若望·保禄二世于1984年发起。其举办的缘由,是为了扭转有