Zig 0.6.0 released, want to replace C programming language

Zig 0.6.0 has been released . This is a general-purpose programming language designed for stability, maintainability, and performance. It seeks to replace the C language with the best position in system programming. Zig has the following notable features:

  • Manually manage memory
  • Compete with C language instead of relying on it, Zig standard library does not depend on libc
  • Lightweight and simple, focusing on debugging applications rather than debugging knowledge of programming languages
  • The new error handling method is similar to the well-written C language error handling, but it reduces a lot of redundancy
  • Optimized fast compilation time in debug mode and crashed with stack trace when uncertain behavior occurred
  • ReleaseFast mode and ReleaseSafe mode
  • Generic data structures and functions
  • Concurrency through coroutines
  • Import .h header file and directly use C language types, variables and functions
  • Export functions, variables, and types that depend on C language code, and automatically generate .h header files
  • Optional type instead of null pointer
  • Cross compilation is the main use case

eaa95b1fffa94c4319d5ae6be7bb8deafda.jpg

The development cycle of this version lasted 6 months, and 122 different contributors submitted 2,527 commits.

Zig 0.6.0 maintains the same update rhythm as LLVM, has upgraded LLVM to the latest version of LLVM 10, and is no longer compatible with LLVM 9. The new LLVM version mainly fixes bugs, especially bug fixes in ARM support, MIPS support, and RISC-V support.

This is also the first LLD version to incorporate all Zig patches into the upstream. Therefore, Zig's source code library no longer contains the fork of LLD source code, which means that the tarball zig-0.6.0.tar.xz of the source code is 0.5MiB smaller than zig-0.5.0.tar.xz, because the LLD source code is deleted It saves more space than all other changes in this release cycle combined. Please note that the new Bootstrap Tarball bundles all the dependencies of the Zig compiler, including LLVM, LLD and Clang.

The major updates at the language feature level include:

For details, see the release announcement  https://ziglang.org/download/0.6.0/release-notes.html

Guess you like

Origin www.oschina.net/news/114885/zig-0-6-0-released