The Zig Programming Language

The Zig Programming Language

The keyword in front of functions, variables, and types causes them to be part of the library API:

Here is an example with the Zig Build System:

In the Export functions, variables, and types for C code to depend on section, the file was generated by Zig:

Zig can build for any of the targets from the Support Table with Tier 3 Support or better. Windows and macOS users can build Zig and C code, and link against libc, for any of the targets listed above. However, thanks to this process_headers tool that I made, and some good old manual labor, Zig binary tarballs remain roughly 30 MiB total, despite supporting libc for all these targets, as well as compiler-rt, libunwind, and libcxx, and despite being a clang-compatible C compiler.

Source: ziglang.org