• 2 Posts
  • 123 Comments
Joined 1 year ago
cake
Cake day: June 25th, 2023

help-circle







  • I couldn’t find much info doing a search - was the shooter not an immigrant and he is wrongly implying he was? Was it a different motive than what he implied?

    From his wording in this clip it just sounded like he was saying “Canada is a peaceful place, so if you’re going to move here then don’t bring violence and problems from your country with you”, which seems reasonable to me. I didn’t see him say anything like “all immigrants are dangerous”.



  • In the grand scheme of things, not paying taxes is also a pretty miniscule thing. The US funding for Israel is pretty big though. If they needed more weapons that your tax dollars would have paid for, I’d guess the tax dollars you paid in the US would go to the same place. I guess the alternative is to live in not-US and not-Israel. But either way, I think the US would just fork up more money anyway.

    But the main point I’m making is, bad people will find a way to do bad things. The best way to eliminate bad people is to change their minds.





  • Ive used Rust professionally for six years now and have done many quick hacks. It is really easy to do. Basically just don’t use references / clone everything to avoid lifetime and ownership issues, and use unwrap everywhere to avoid proper error handling. It’s really that easy almost all the time.

    The nice thing about that is once you’re done with the prototype, just remove the unwraps and you can optimize stuff by removing the clones.


  • The borrow checker is useful for a lot more than memory safety. This is something I have been repeating for years, but unfortunately people new to the language don’t understand it yet.

    E.g. Rust is the only mainstream language where it isn’t possible to read from a file handle after it’s been closed. There are numerous other common benefits of it that apply to general purpose programming, like not being able to mutate a collection while you’re iterating over it.

    It’s a very common practice in Rust to enforce domain invariants using Rust’s ownership rules, and those things cannot be enforced at compile time in other languages that don’t have ownership.

    The borrow checker is also usually pretty easy to get around with just a bit of experience in Rust.



  • Rust is probably great for systems that don’t have a lot of changing requirements, but fast iteration and big changes probably aren’t its strong suit.

    I agreed up until this. Fearless refactoring is a huge benefit of Rust. If the type system of another language allows the refactoring more easily without as many compilation failures, it will probably surface more runtime bugs.