这几个理念还是挺吸引人的。
No hidden control flow
No hidden allocations
First-class support for no standard library
A Portable Language for Libraries
A Package Manager and Build System for Existing Projects
Simplicity
Tooling
这几个理念还是挺吸引人的。
No hidden control flow
No hidden allocations
First-class support for no standard library
A Portable Language for Libraries
A Package Manager and Build System for Existing Projects
Simplicity
Tooling
感觉和 rust 差不多
从目标角度来说,差别还是挺大的,rust的目标是安全性,zig的目标是可读性。
bun现在是zig的killer app
前端世界真是轮子王国呀 (不是讽刺, 是赞美)
建议楼主读这个讨论 https://www.reddit.com/r/rust/comments/rlj9zl/what_do_you_think_about_zig/
我才发现国外的偏执于讨论的人一点不比知乎少啊
不吹不黑,reddit 这类话题水平都不太高的样子
是呀, 我看完了, 除了证明自己对以外, 没有啥营养。
https://andrewkelley.me/post/zig-cc-powerful-drop-in-replacement-gcc-clang.html
Zig 现在做这个工具链还挺不错的. Rust 也有人用
这种玩意吧,Go/Plan9 一开始就有了,就是做 Plan9 的那些人连 POSIX C 都不想支持,更別说 C++ 了。
Plan 9 别说 POSIX 了,自己的 “C” 编译器一点也不标准:
#if 0
struct k
{
int a, b;
};
typedef struct k type;
type
function (a, b)
int a;
int b;
{
type foo;
foo.a = a;
foo.b = b;
return foo;
}
#endif /* 0 */
以上的合格 C 代码,塞满了 Plan 9 C 不支持的功能。。。
那不就是没人做。这个zig还是clang套皮呢,能简化部署流程就是他的价值啊,你没看见多少人为了编译到低版本 glibc 的老系统上都抓耳挠腮的
刚刚试了一下bun, 从安装到第一个框架跑起来,真个过程还是很顺溜的。
可以关注一下bun的创始人的推,他每天关注的都是要把当前node/npm生态下的某个任务,提速10x以上
今年ICFP看到一个相关的talk:Zig + Guile,有兴趣的可以关注一下
电脑太旧用不了这个语言。对 Mac 操作系统最低要求是 2020 年 11 月发布的 Big Sur (macOS 11.7):
加快更新速度呀!比如多一点 comptime / first-class type,以及 MultiArrayList ( data-oriented programming)方面的知识。我最近的在练习zig,发现它的标准库文档简直太简陋了,而且网上相关资料也很少,太痛苦了。zig.news,zigbyexample 之类的好像也很久没有更新了。
可以安装它上一个版本。
前段时间试过用它做c++交叉编译器,发现个别场景可以,主要场景还是不行,没搞定,对低版本glibc处理的不够完善。
之前常使用它写过一个很简陋的内核,无隐式控制流和无隐式分配还行,一切均是声明式,但是这个构建系统我不太赞同,文档少的离谱,我到现在还只会基本的构建,拿它做类似makefile效果要找不少东西,而且api还总是变化,还有就是包管理器,现在是稳定了,但是感觉过于复杂了,对比go node cargo来看
还有就是包非集中式,零散导致各自为战
目前能看的也就只有bun,或许river wm也可以看看?