@@ -19,9 +19,10 @@ Zig instead of e.g. cmake.
19
19
* Compile units do not depend on libc unless explicitly linked.
20
20
* Provides standard library which competes with the C standard library and is
21
21
always compiled against statically in source form.
22
- * Pointer types do not allow the null value. Instead you can use a maybe type
23
- which has several syntactic constructs to ensure that the null pointer is
24
- not missed.
22
+ * Nullable type instead of null pointers.
23
+ * Tagged union type instead of raw unions.
24
+ * Generics so that one can write efficient data structures that work for any
25
+ data type.
25
26
* Provides an error type with several syntatic constructs which makes writing
26
27
robust code convenient and straightforward. Writing correct code is easier
27
28
than writing buggy code.
@@ -30,15 +31,10 @@ Zig instead of e.g. cmake.
30
31
* Compile-time code execution. Compile-time reflection.
31
32
* Partial compile-time function evaluation with eliminates the need for
32
33
a preprocessor or macros.
33
- * Tagged union enum type. No more accidentally reading the wrong union field.
34
- * Generics so that one can write efficient data structures that work for any
35
- data type.
36
- * Easy to parse language so that humans and machines have no trouble with the
37
- syntax.
38
34
* The binaries produced by Zig have complete debugging information so you can,
39
35
for example, use GDB to debug your software.
40
- * Debug mode optimizes for fast compilation time and crashing when undefined
41
- behavior * would* happen.
36
+ * Debug mode optimizes for fast compilation time and crashing with a stack trace
37
+ when undefined behavior * would* happen.
42
38
* Release mode produces heavily optimized code. What other projects call
43
39
"Link Time Optimization" Zig does automatically.
44
40
* Mark functions as tests and automatically run them with ` zig test ` .
@@ -49,12 +45,12 @@ Zig instead of e.g. cmake.
49
45
* Zig Build System competes with make, cmake, autotools, SCons, etc.
50
46
* In addition to creating executables, creating a C library is a primary use
51
47
case. You can export an auto-generated .h file.
52
- * Currently supported architectures :
53
- * ` x86_64 `
54
- * Currently supported operating systems:
55
- * ` linux `
56
- * ` freestanding `
57
- * Support for all popular operating systems and architectures is planned .
48
+ * Standard library supports OS abstractions for :
49
+ * ` x86_64 ` ` linux `
50
+ * Support for all popular operating systems and architectures is planned.
51
+ * For Operating System development, Zig supports all architectures that LLVM
52
+ does. All the standard library that does not depend on an OS is available
53
+ to you in freestanding mode .
58
54
59
55
## Community
60
56
0 commit comments