dev-lang/zig: new package
authorNick Erdmann <n@nirf.de>
Sun, 26 May 2019 06:22:57 +0000 (08:22 +0200)
committerJoonas Niilola <juippis@gentoo.org>
Fri, 2 Aug 2019 08:37:35 +0000 (11:37 +0300)
commit01327ee8db1a1e7d88849498264988031bc4d552
treef1b4239035260392f417ab0e5401a2a1a3be7ffc
parent489cc3c8734bff74f26abdf32a2e2208689f9ca4
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 [new file with mode: 0644]
dev-lang/zig/metadata.xml [new file with mode: 0644]
dev-lang/zig/zig-0.4.0.ebuild [new file with mode: 0644]