The Government already has a monopoly on force and steals our money under the threat of imprisonment in the form of taxation: Now that money is supposed to be allocated into risky investments for abstract, unmeasureable benefits like "soft power," for the benefit of people somewhere else? That creates resentment here. It also infantilizes the Global South.
How much better would it be if we eliminated the IMF, shrank government, and lowered taxes so individuals could freely choose how to benefit the Global South via nonprofit giving? If people don't give voluntarily, why should they be compelled to give in the form of taxation?
I feel like Graeber, an anarchist, would appreciate a decentralized solution like that instead of trying to handle this from the top down.
Very true and worth evangelizing to others. I have unknowingly violated -fstrict-aliasing in some part of my code only to discover later that it is benign at -O0 and metastasized at -O3.
This freaks me out the most in networking code, where there is all kinds of casting of structs (esp. if you blindly copy-paste examples from StackOverflow) and performance usually matters. Rust has inspired me to take more time to profile C code to see whether strict aliasing (strict overflow, etc.) actually make a significant enough improvement to merit the UB-risk, review time, and acid in the stomach.
I buy the premise that Zig is better if you know you will have lots of pointer arithmetic going on. Having written a fair amount of unsafe C interop code in Rust, I feel like these critiques of the ergonomics are valid. The new #![feature(strict_provenance)] adds a new layer of complexity, that, I hope, improves some of this experience while adding safety. Rust's benefits are not free.
The benefits of Rust's (wonderful) model around references and lifetimes come at a significant cost to ergonomics when having to go into the Mordor of some C library and back. I usually find myself wishing I could have some macro where I just write in C and have it exposed as an unsafe back in Rust. I know I can do this by just writing a C dylib and integrating that, but now I've got two problems.
Even still, I prefer writing unsafe Rust to writing C. std::mem::ptr forces me to ask the right questions and reminds me of just how easy it is to fall into UB in C as well.
The Noise Protocol spec is fantastic. It asks a reasonable set of questions to a protocol designer and in exchange gives a set of safe choices for key exchange. It's a great example of building powerful systems from a handful of simple abstractions. Trevor Perrin (and I'm sure, not just he) did a phenomenal job.
That would be really cool, but I think enforcing that is undecidable. My gut tells me that having that language feature at compile time is the same as the Halting Problem.
As an Italian-American, this explains why every time I go to a Buca di Beppo, I feel like I'm in some kind of merger between a mediocre Italian restaurant and a minstrel show. To those of us who grew up in this culture, it's ridiculous (almost bordering on offensive). Thankfully, I grew up in communities where the Italian's could proudly go to other restaurants that were more respectful of a 3,000 year old culture.
It's tough to feel proud of what Buca di Beppo has done to popularize Italian-American culture in the same way it's tough to feel proud of the movie The Godfather. We aren't all mobsters and we don't all have giant busts of the Pope and cherubs in our houses. Some of us are just computer scientists who like basil.
How much better would it be if we eliminated the IMF, shrank government, and lowered taxes so individuals could freely choose how to benefit the Global South via nonprofit giving? If people don't give voluntarily, why should they be compelled to give in the form of taxation?
I feel like Graeber, an anarchist, would appreciate a decentralized solution like that instead of trying to handle this from the top down.