| ... | @@ -23,15 +23,15 @@ compromises backward compatibility. | ... | @@ -23,15 +23,15 @@ compromises backward compatibility. |
| 23 | * Generics so that one can write efficient data structures that work for any | 23 | * Generics so that one can write efficient data structures that work for any |
| 24 | data type. | 24 | data type. |
| 25 | * Ability to run arbitrary code at compile time and generate code. | 25 | * Ability to run arbitrary code at compile time and generate code. |
| | 26 | * No null pointer. Convenient syntax for dealing with a maybe type so that |
| | 27 | null pointer is not missed. |
| 26 | * A type which represents an error and has some convenience syntax with | 28 | * A type which represents an error and has some convenience syntax with |
| 27 | regards to resources. | 29 | regards to resources. |
| 28 | * Defer statement. | 30 | * Defer statement. |
| 29 | * Memory zeroed by default, unless you explicitly ask for uninitialized memory. | | |
| 30 | * Eliminate the need for configure, make, cmake, etc. | 31 | * Eliminate the need for configure, make, cmake, etc. |
| 31 | * Eliminate the need for header files (when using zig internally). | 32 | * Eliminate the need for header files (when using zig internally). |
| 32 | * Tagged union enum type. | 33 | * Tagged union enum type. |
| 33 | * Resilient to parsing errors to make IDE integration work well. | 34 | * Resilient to parsing errors to make IDE integration work well. |
| 34 | * Source code is UTF-8. | | |
| 35 | * Ability to mark functions as test and automatically run them in test mode. | 35 | * Ability to mark functions as test and automatically run them in test mode. |
| 36 | This mode should automatically provide test coverage. | 36 | This mode should automatically provide test coverage. |
| 37 | * Friendly toward package maintainers. | 37 | * Friendly toward package maintainers. |
| ... | @@ -39,14 +39,12 @@ compromises backward compatibility. | ... | @@ -39,14 +39,12 @@ compromises backward compatibility. |
| 39 | provide a tag or sha1). | 39 | provide a tag or sha1). |
| 40 | * Include documentation generator. | 40 | * Include documentation generator. |
| 41 | * Shebang line OK so language can be used for "scripting" as well. | 41 | * Shebang line OK so language can be used for "scripting" as well. |
| 42 | * No null pointer. Convenient syntax for dealing with a maybe type so that | | |
| 43 | null pointer is not missed. | | |
| 44 | | 42 | |
| 45 | ### Current Status | 43 | ### Current Status |
| 46 | | 44 | |
| 47 | * Have a look in the examples/ folder to see some code examples. | 45 | * Have a look in the examples/ folder to see some code examples. |
| 48 | * Some language features available such as loops, inline assembly, expressions, | 46 | * Some language features available such as loops, inline assembly, expressions, |
| 49 | literals, functions. | 47 | literals, functions, importing other files. |
| 50 | * Only Linux x86_64 is supported. | 48 | * Only Linux x86_64 is supported. |
| 51 | * Only building for the native target is supported. | 49 | * Only building for the native target is supported. |
| 52 | * Optimized machine code that Zig produces is indistinguishable from | 50 | * Optimized machine code that Zig produces is indistinguishable from |
| ... | @@ -55,7 +53,6 @@ compromises backward compatibility. | ... | @@ -55,7 +53,6 @@ compromises backward compatibility. |
| 55 | header files. | 53 | header files. |
| 56 | * The binaries produced by Zig have complete debugging information so you can, | 54 | * The binaries produced by Zig have complete debugging information so you can, |
| 57 | for example, use GDB to debug your software. | 55 | for example, use GDB to debug your software. |
| 58 | * Inline assembly is supported. | | |
| 59 | | 56 | |
| 60 | ## Building | 57 | ## Building |
| 61 | | 58 | |