HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
ziglang
zig
Zig2016–2026
ziglang / zig

zig

Moved to Codeberg

373Distinct people
681Mentions
3Explicit recommenders
43.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Moved to Codeberg

GitHub

Where it is used

  • Bun — Bun used the Zig programming language to implement its initial version of the runtime and tooling. This establishes Bun as a shipped product that was written in Zig. Source

What people are saying

My favorite of his https://x.com/joelreymont/status/1990981118783352952 > Claude discovered a bug in the Zig compiler and is in the process of fixing it! ...a few minutes…

rdtsc used a recommendation phrase. 3 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 5:58:02 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year681 dated mentions

Observed mentions: 2016-01-08 12:54:33 UTC to 2026-09-19 17:18:26 UTC.

02550751001252016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 9 mentions; 1 submissions, 8 comments20162017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 21 mentions; 2 submissions, 19 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 34 mentions; 2 submissions, 32 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 60 mentions; 3 submissions, 57 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 111 mentions; 4 submissions, 107 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 93 mentions; 8 submissions, 85 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 113 mentions; 12 submissions, 101 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 85 mentions; 5 submissions, 80 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 124 mentions; 9 submissions, 115 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 26 mentions; 1 submissions, 25 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC918
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC505
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC21219
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC34232
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC60357
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC1114107
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC93885
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC11312101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC85580
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC1249115
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC26125

What Hacker News says

111 sources
There's an open issue to add some kind of function annotation+errors for functions which require you to call a cleanup function. The discussion has had a lot of back and forth and they haven't really settled on a desirable solution yet, but it's something they're hoping to add. https://github.com/ziglang/zig/issues/782 I work in games with C++ and we already do so much manual management and initialization+teardown functions that lack of RAII isn't a deal-breaker. Though I'd definitely prefer it if there was something either well-enforced or automatic.
In A Review of the Zig Programming Language (Using Advent of Code 2021)
I found the standard library's support for strings was plenty fine, doing AoC problems in zig tests it out thoroughly. Tokenize[1], split[2] and trim[3] were the most common ones I used. Was there something in particular you were looking for and didn't find? [1]: https://github.com/ziglang/zig/blob/master/lib/std/mem.zig#L... [2]: https://github.com/ziglang/zig/blob/master/lib/std/mem.zig#L... [3]: https://github.com/ziglang/zig/blob/master/lib/std/mem.zig#L... * After I read my own comment, I'd note that AoC tests out string manipulation pretty thoroughly but things like unicode handling not at all, so []const u8 as a string may be more annoying in the real world than in AoC answers and I haven't used zig's unicode facilities at all
In A Review of the Zig Programming Language (Using Advent of Code 2021)
> Everything in Zig is const x = blah;, so why are functions not const bar = function() {};? This may or may not happen: https://github.com/ziglang/zig/issues/8383 > Fixing the standard library documentation would be my biggest priority if I worked on Zig, because I think that is the only thing holding back general usage of the toolchain. This is a valid concern, but I believe the zig team is deliberately holding off on improving the std lib documentation, because they are expecting (potentially huge, maybe not? who knows) breaking changes down the line. The "stdlib is not documented" is a deliberate choice to signal "use at your own risk, especially with respect to forwards compatibility". > there are still quite a few bits of syntatic sugar hiding the real cost of certain operations (like the try error handling, there is implicit bra
Read the rest
nches everywhere when you use that... I dunno, that's like saying that `if` hides branching. It's a language-level reserved word, you're expected to understand how they work under the hood.
In A Review of the Zig Programming Language (Using Advent of Code 2021)
> Initializing arrays is weird in Zig. Lets say you want to have a 0 initialized array, you declare it like [_]u8{0} * 4 which means I want an array, of type u8, that is initialized to 0 and is 4 elements long. You get used to the syntax, but it’s not intuitive. Alternatively: var some_array = std.mem.zeroes([4]u8); Though as mentioned later in the article the standard library documentation is not very good, making this not as obvious as it could be. > Everything in Zig is const x = blah;, so why are functions not const bar = function() {};? Good question, there's an accepted proposal to fix this: https://github.com/ziglang/zig/issues/1717 > The builtin compiler macros (that start with @) are a bit confusing. Some of them have a leading uppercase, others a lowercase, and I never did work out any pattern to them. In idiomatic zig, anyth
Read the rest
ing that returns a type is uppercased as though it were itself a type. Since only a few builtins return types, the vast majority of builtins will start with a lowercase letter. I think it is only `@Type`, `@TypeOf`, `@This`, and `@Frame` that don't.
In A Review of the Zig Programming Language (Using Advent of Code 2021)
The first issue is closed with a nicely written message of how hard tabs will be supported and why they aren't now. The second issue links to the first issue when the point of hard tabs are brought up. The FAQ you link at the end contains, directly above the section you linked, a version of the explanation in the first issue, while the exact section you linked also links back to the first issue anyways. So yes, all of the quotes and conclusions you found are either old or wrong according to the very pages you linked. No, it doesn't need to be updated (or prioritized?) as they all conclude with supporting tabs you just hadn't read all of what you're citing. . If there is still any doubt for some reason rather than trolling through GitHub issues from 2017 I'd recommend sticking to the current FAQ from 2021 which has a section dedicated to t
Read the rest
his question: https://github.com/ziglang/zig/wiki/FAQ#why-does-zig-force-m... as this is the fully current and authoritative answer on the status of tab support, regardless of where bits of past discussion lay on the matter.
In Zig 0.9.0
I'm pretty new to Zig, but after taking another look recently I was pleasantly surprised by the progress on SIMD operations via builtin Vector types [1],[2]. For an application of "I want to speed up my math-intensive code with SIMD while supporting x86-64, aarch64, and non-SIMD fallbacks" it might be suitable for you now, and Zig certainly exposes more readable SIMD syntax than with C intrinsics imho [3]. But if you have a particular CPU instruction in mind, you're still a little bit at the mercy of the compiler as operations on Vector types aren't explicitly tied to particular CPU instructions. 1: https://github.com/ziglang/zig/issues/903#issuecomment-45950... 2: https://ziglang.org/documentation/master/#Vectors 3: https://godbolt.org/z/P73MPncGP
In Zig 0.9.0
Please see https://github.com/ziglang/zig/issues/544#issuecomment-36396... and https://github.com/ziglang/zig/issues/663. In particular, `For every codepoint of zig source code, it is an error for the codepoint to be one of U+0000-U+0009, U+000b-U+001f, U+007f, U+0085, U+2028, U+2029`. Hard tab is U+0009, which is called out as specifically an error. This could just be stale docs, but it's linked to from the wiki as well: https://github.com/ziglang/zig/wiki/FAQ#why-does-zig-fmt-hav.... Again, if this is all old, please ignore (and maybe make it a priority to update?). But the general tone is: "No tabs, only spaces"
In Zig 0.9.0

Showing the 15 most recent of 111 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.