Our great sponsors
- CodiumAI - TestGPT | Generating meaningful tests for busy devs
- InfluxDB - Access the most powerful time series database as a service
- SonarLint - Clean code begins in your IDE with SonarLint
- ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
-
zig
General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Simplicity again, but this time via expressiveness of comptime. A lot of type-level things which are complex in Rust would be natural in Zig. An example here is this PR, where I make a bunch of previously concrete types generic over a family of types. In Zig, that amounts to basically wrapping the code into a function which accepts a (comptime type) parameter. That's a bog standard mechanical generalization. In Rust, doing something like that would require me to define a bunch of traits, probably with GATs, spelling out huge where clauses, etc. Of course, with Zig I don't have a nice declaration-time error, but the thing is, the complexity of the code I am getting an error is different. In Rust, I deal with a complex type-level program which has a nice, in principle, error. In Zig, the error is worse, but, as the program itself is simpler, the end result is not as clear cut. The situations flips if we go complex cases. In Zig, AOS<->SOA transformation is just slightly-clever code, in Rust, that would require leaving the language of types and entering the language of macros.
-
tigerbeetle
The distributed financial accounting database designed for mission critical safety and performance.
Simplicity This is really the big one. Zig's code tends to be exceptionally easy to read: there are no lambdas, there are no macros, there's just code. TigerBeetle's io_uring-based IO module is a good example here. Additionally, when it comes to nuts-and-bolts of syntax, I feel that Zig has an edge over Rust:
-
CodiumAI
TestGPT | Generating meaningful tests for busy devs. Get non-trivial tests (and trivial, too!) suggested right inside your IDE, so you can code smart, create more value, and stay confident when you push.