authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-04-24 17:53:00-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-04-24 17:53:00-04:00
loga5c509c94f5892cadf1aef67190ad56f57724aed
treeb3265ff00262293cfa75956490409c7e63e1be19
parent05198e03216c18ca1df089b7d06717dd00731ed4

readme update


1 files changed, 12 insertions(+), 16 deletions(-)

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