Hacker News new | ask | show | jobs
by PeterWhittaker 543 days ago
The first part - that the Rust borrow checker and overall memory model ensures thread/async safety - is true. I cannot speak to the second part - that other systems don't have this assurance.
2 comments

Just the borrowck isn't enough, you need the Send and Sync marker traits. Marker traits are something lots of languages could do but they'd be useless (or always unsafe) without a lot of other machinery Rust had already.
And Sync might just be there for performance, I think you could get away with only Send if you didn't mind some additional copying?
> that other systems don't have this assurance

My understanding is that most (all?) GC languages are memory safe, but do not ensure statically verifiable thread safety at all. Like Java, Go, C#, Python, etc.