Go to file
Frank Denis d86685ac96
sha3: define block_length as the rate, not as the state size (#14132)
In sponge-based constructions, the block size is not the same as
the state size. For practical purposes, it's the same as the rate.

Size this is a constant for a given type, we don't need to keep
a copy of that value in the state itself. Just use the constant
directly. This saves some bytes and may even be slightly faster.

More importantly:
Fixes #14128
2022-12-30 22:15:25 +00:00
.github CI: add aarch64-windows coverage 2022-12-10 16:28:49 -07:00
ci ci: remove extra whitespace 2022-12-30 15:01:54 -05:00
cmake Revert "cmake: check llvm-config in separate function" 2022-12-27 19:21:33 -07:00
doc AstGen: make type sentinel expressions implicitly comptime 2022-12-29 12:43:02 +02:00
lib sha3: define block_length as the rate, not as the state size (#14132) 2022-12-30 22:15:25 +00:00
src x86_64: remove extra whitespace 2022-12-30 15:01:19 -05:00
stage1 update zig1.wasm to overflow arithmetic builtin changes 2022-12-27 15:13:14 +02:00
test Merge pull request #14102 from Luukdegram/wasm-undefined-symbols 2022-12-29 17:59:44 -05:00
tools parser: ensure the documented grammar matches grammar.y 2022-12-30 17:11:59 +02:00
.gitattributes update gitattributes and move test data into subdir 2022-12-18 16:28:30 -07:00
.gitignore std/build: change default install prefix to zig-out 2021-04-29 23:58:45 +02:00
build.zig update gitattributes and move test data into subdir 2022-12-18 16:28:30 -07:00
CMakeLists.txt map lower case amd64 to x86_64 2022-12-24 02:23:31 -05:00
LICENSE Y++ 2021-12-31 19:58:21 -05:00
README.md move some files to the .github directory 2022-03-24 12:22:23 -07:00

ZIG

A general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.

Resources

Installation

License

The ultimate goal of the Zig project is to serve users. As a first-order effect, this means users of the compiler, helping programmers to write better software. Even more important, however, are the end-users.

Zig is intended to be used to help end-users accomplish their goals. Zig should be used to empower end-users, never to exploit them financially, or to limit their freedom to interact with hardware or software in any way.

However, such problems are best solved with social norms, not with software licenses. Any attempt to complicate the software license of Zig would risk compromising the value Zig provides.

Therefore, Zig is available under the MIT (Expat) License, and comes with a humble request: use it to make software better serve the needs of end-users.

This project redistributes code from other projects, some of which have other licenses besides MIT. Such licenses are generally similar to the MIT license for practical purposes. See the subdirectories and files inside lib/ for more details.