Zig is an open-source programming language designed for robustness, optimality, and maintainability. Feature Highlights - Manual memory management. Memory allocation failure is handled correctly. Edge cases matter! - Zig competes with C instead of depending on it. The Zig Standard Library does not depend on libc. - Small, simple language. Focus on debugging your application rather than debugging your knowledge of your programming language. - A fresh take on error handling that resembles what well-written C error handling looks like, minus the boilerplate and verbosity. - Debug mode optimizes for fast compilation time and crashing with a stack trace when undefined behavior would happen. - ReleaseFast mode produces heavily optimized code. What other projects call "Link Time Optimization" Zig does automatically. - ReleaseSafe mode produces optimized code but keeps safety checks enabled. Disable safety checks in the bottlenecks of your code. - Generic data structures and functions. - Compile-time reflection and compile-time code execution. No preprocessor. - Concurrency via coroutines. Async/await is thread-safe, non-blocking, and makes no syscalls, and therefore available in freestanding mode. You can multiplex coroutines onto a thread pool in userland for M:N concurrency. - Import .h files and directly use C types, variables, and functions. - Export functions, variables, and types for C code to depend on. Automatically generate .h files. - Optional type instead of null pointers. - Order independent top level declarations. - Friendly toward package maintainers. Reproducible build, 3-step bootstrapping process. - Cross-compiling is a first-class use case. https://ziglang.org/ https://github.com/ziglang/zig Latest release - 0.4: - https://github.com/ziglang/zig/releases/tag/0.4.0 - https://ziglang.org/download/0.4.0/release-notes.html
Created attachment 577792 [details] zig-0.4.0.ebuild
(In reply to Nick Erdmann from comment #1) > Created attachment 577792 [details] > zig-0.4.0.ebuild Can you please send a Pull Request to https://github.com/gentoo/gentoo ?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01327ee8db1a1e7d88849498264988031bc4d552 commit 01327ee8db1a1e7d88849498264988031bc4d552 Author: Nick Erdmann <n@nirf.de> AuthorDate: 2019-05-26 06:22:57 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2019-08-02 08:37:35 +0000 dev-lang/zig: new package Zig is an open-source programming language designed for robustness, optimality, and maintainability. Feature Highlights - Manual memory management. Memory allocation failure is handled correctly. Edge cases matter! - Zig competes with C instead of depending on it. The Zig Standard Library does not depend on libc. - Small, simple language. Focus on debugging your application rather than debugging your knowledge of your programming language. - A fresh take on error handling that resembles what well-written C error handling looks like, minus the boilerplate and verbosity. - Debug mode optimizes for fast compilation time and crashing with a stack trace when undefined behavior would happen. - ReleaseFast mode produces heavily optimized code. What other projects call "Link Time Optimization" Zig does automatically. - ReleaseSafe mode produces optimized code but keeps safety checks enabled. Disable safety checks in the bottlenecks of your code. - Generic data structures and functions. - Compile-time reflection and compile-time code execution. No preprocessor. - Concurrency via coroutines. Async/await is thread-safe, non-blocking, and makes no syscalls, and therefore available in freestanding mode. You can multiplex coroutines onto a thread pool in userland for M:N concurrency. - Import .h files and directly use C types, variables, and functions. - Export functions, variables, and types for C code to depend on. Automatically generate .h files. - Optional type instead of null pointers. - Order independent top level declarations. - Friendly toward package maintainers. Reproducible build, 3-step bootstrapping process. - Cross-compiling is a first-class use case. Package-Manager: portage-2.3.66 Closes: https://bugs.gentoo.org/683386 Signed-off-by: Nick Erdmann <n@nirf.de> Closes: https://github.com/gentoo/gentoo/pull/12110 Signed-off-by: Joonas Niilola <juippis@gentoo.org> dev-lang/zig/Manifest | 1 + dev-lang/zig/metadata.xml | 18 ++++++++++++++ dev-lang/zig/zig-0.4.0.ebuild | 56 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 75 insertions(+)