On 3/27/14 1:42 PM, Tommi wrote:
On 27 Mar 2014, at 22:17, Steve Klabnik <[email protected]> wrote:

Why isn't there a compiler flag like 'noboundscheck' which would disable all 
bounds checking for vectors? It would make it easier to have those language 
performance benchmarks (which people are bound to make with no bounds checking 
in C++ at least) be more apples-to-apples comparisons. Also, knowing there's a 
flag in case you need one would put performance-critical people's mind

A flag that removes safety is pretty antithical to the goals of the
language, IMHO.

Yes, I agree it's not the official Rust way of things. But not
providing the option seems quite totalitarian. An example use case might
be a company that runs its code on 100,000 servers, and has do so for
many years without a hiccup. They realize they could save millions of
dollars a year in electricity bill by disabling bounds checking, and
that's what they decide to do. At this point they would really like to
have that compiler flag.

I think that Rust should give you the ability to opt out of safety, but on a per-operation basis. Having it as a compiler option is too much of a sledgehammer: often you want some non-performance-critical bounds to be checked in the name of safety, while you want some bounds checks to be turned off.

In fact, this is precisely what Rust allows today, via the `.unsafe_get()` and `.unsafe_set()` methods.

Patrick
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to