authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-01-25 15:22:52-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2016-01-25 15:22:52-07:00
logc0dc0ca6c90649f157dfcb43c7ec69fa4b5f6b09
tree0570aa1bb1edc922432ddc54df6b5a28137cbb92
parente85e7ebcf0d3e47f0766a13233daa26eb0a9e277

update README


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

README.md+13-16
......@@ -22,35 +22,32 @@ compromises backward compatibility.
2222 always compiled against statically in source form.
2323 * Generics so that one can write efficient data structures that work for any
2424 data type.
25 * Ability to run arbitrary code at compile time and generate code.
2625 * No null pointer. Convenient syntax for dealing with a maybe type so that
2726 null pointer is not missed.
28 * A type which represents an error and has some convenience syntax with
29 regards to resources.
30 * Defer statement.
27 * An error type, combined with some syntatical constructs which makes writing
28 robust code convenient and straightforward.
3129 * Eliminate the need for configure, make, cmake, etc.
3230 * Eliminate the need for header files (when using zig internally).
33 * Tagged union enum type.
34 * Resilient to parsing errors to make IDE integration work well.
35 * Eliminate the preprocessor, but have a plan for how to do things you would
36 want to use the preprocessor for such as conditional compilation.
31 * Tagged union enum type. No more accidentally reading the wrong union field.
32 * Easy to parse language so that humans and machines have no trouble with the
33 syntax.
34 * Eliminate the preprocessor, but (most) everything you can accomplish with
35 the preprocessor, you can accomplish directly in the language.
3736 * Ability to mark functions as test and automatically run them in test mode.
38 This mode should automatically provide test coverage.
37 Automatically provide test coverage.
3938 * Friendly toward package maintainers.
4039 * Ability to declare dependencies as Git URLS with commit locking (can
4140 provide a tag or sha1).
4241 * Include documentation generator.
4342 * Shebang line OK so language can be used for "scripting" as well.
44 * Have the compiler run continuously, watching the file system for source
45 changes and automatically perform multithreaded compilation to build projects
46 quickly.
47 * Hot code swapping. When integrated with the previous feature, you could
48 press "save" in your editor and see the change immediately in your running
49 software.
43 * Debug mode optimizes for fast compilation time and crashing when undefined
44 behavior *would* happen.
45 * Release mode produces heavily optimized code. What other projects call
46 "Link Time Optimization" Zig does automatically.
5047
5148### Current Status
5249
53 * Have a look in the examples/ folder to see some code examples.
50 * Have a look in the example/ folder to see some code examples.
5451 * Basic language features available such as loops, inline assembly,
5552 expressions, literals, functions, importing, structs, tagged unions.
5653 * Linux x86_64 is supported.