3 ms·
> To improve our critical infrastructure we must improve the developer experience (DX) of systems programming, but rewriting everything is not the only answer.
by hitekker 5y ago
> To improve our critical infrastructure we must improve the developer experience (DX) of systems programming, but rewriting everything is not the only answer.
I like Kristoff from what I've read of him. He seems like a leader who will take responsibility and not shy away from hard decisions.
On that quality alone, my money is on Zig winning systems programming over Rust in 10 years.
- xedrac 5y agoWhen choosing between Zig and Rust for systems programming, I would reach for Rust most of the time. It's just a more expressive language with some seriously awesome compile-time guarantees. There are three things that bother me about Rust: bloated binaries, slow compile times, and dependency bloat (accidentally building 5 versions of the same crate). But seeing as it's being integrated into the Linux Kernel, I think Rust has a long and bright future in that space. Having said that, I think Zig would be a really great language for kernel programming.
- 0xCMP 5y agoYou can build C projects using Rust and Cargo as well[0], but it requires more work than Zig appears to need. Rust also has good C FFI story and honestly I think we will still see a lot of important code rewritten in Rust. That said, a more ergonomic C which seamlessly replaces the often bloated build configuration of C/C++ projects while allowing a far nicer language to slowly replace the existing code feels like TypeScript for JS (which I consider a good and smart thing). Definitely agree it's going to get far more use than I'd originally have guessed. [0]: https://adventures.michaelfbryan.com/posts/how-to-riir/ https://adventures.michaelfbryan.com/posts/how-to-riir/
- steveklabnik 5y agoThis is qualitatively different, that requires a C compiler to be installed. rustc cannot compile C code itself. zig can.
- roca 5y agoIn the 21st century, if you're building systems infrastructure and are able to choose a language that's not C or C++, it's a pretty big call to decline memory/type/datarace safety.