←back to thread

517 points bkolobara | 1 comments | | HN request time: 0.215s | source
Show context
BinaryIgor ◴[] No.45042483[source]
Don't most of the benefits just come down to using a statically typed and thus compiled language? Be it Java, Go or C++; TypeScript is trickier, because it compiles to JavaScript and inherits some issues, but it's still fine.

I know that Rust provides some additional compile-time checks because of its stricter type system, but it doesn't come for free - it's harder to learn and arguably to read

replies(17): >>45042692 #>>45043045 #>>45043105 #>>45043148 #>>45043241 #>>45043589 #>>45044559 #>>45045202 #>>45045331 #>>45046496 #>>45047159 #>>45047203 #>>45047415 #>>45048640 #>>45048825 #>>45049254 #>>45050991 #
ViewTrick1002 ◴[] No.45042692[source]
Neither Go, Java or C++ would catch that concurrency bug.
replies(2): >>45043212 #>>45050050 #
Const-me ◴[] No.45043212[source]
C# would catch the bug at compile time, just like Rust.

https://www.rocksolidknowledge.com/articles/locking-asyncawa...

replies(2): >>45044178 #>>45046051 #
1. IshKebab ◴[] No.45046051[source]
I don't know C# but it looks like they added a specific check just for locks, which is far less powerful than Rust's Send/Sync.