On 04/03/14 03:55 PM, Tony Arcieri wrote:
> On Tuesday, March 4, 2014, John Mija <jon...@proinbox.com
> <mailto:jon...@proinbox.com>> wrote:
> 
>     True, but Go includes a built-in data race detector:
>     http://golang.org/doc/__articles/race_detector.html
>     <http://golang.org/doc/articles/race_detector.html>
> 
> 
> A data race detector can only detect problems when it observes them.
> Unfortunately data races are typically finnickey, hard-to-reproduce
> things that often manifest only in productions and at the worst time
> possible, for example when you're experincing high load because people
> are actually interested in using your thing.
> 
> Rust largely avoids data races ahead-of-time using a "sufficiently smart
> compiler"

Well, it completely avoids them in the safe subset. It's up to the
programmer to avoid data races in `unsafe` blocks as it is in a typical
language without safe concurrency like C, Java and Go.

When the standard library provides data parallelism and some concurrent
data structures, there will be very few reasons to ever use `unsafe` for
direct access to shared memory. I doubt there would even be a single use
case in all of Servo.

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to