On Tuesday, 7 March 2017 at 22:07:51 UTC, XavierAP wrote:
On Tuesday, 7 March 2017 at 21:24:43 UTC, Moritz Maxeiner wrote:
[...]

D does not claim to be memory-safe always.It does afaik do so within @safe environments (barring internal runtime or compiler bugs of course). Even C# has the same approach of allowing "unsafe" environments.

And as I've pointed out before, if your safe code can call hidden, unsafe code it doesn't even know about then your guarantees mean nothing and you're back to trusting programmers.


[...]

Does anybody try to refute it? Safe languages are not rejected for their safety.

Right now, of course not, since the burden of proof is on the side advocating memory safety (i.e. us).

I don't agree on the burden of proof. It is a safe assumption that if you increase safety checks, safety will be improved.

If those safety checks actually get applied to those parts that need them (i.e. by the programmers writing programs in that language), I'd probably agree. But there's no guarantee that that is the case, as your friend, hidden unsafe code, is still there. Besides that, it's a hypothesis, and like with *all* of them the burden of proof lies with the people proposing/claiming it.

It cannot or needn't be proven. If someone proposes installing railing in a stairway, or a fence along a railway, to decrease accidents, who would demand this to be proven?

A person with a good sense of engineering (or for that matter the scientific method) in them ought to demand that both your railing, as well as your fence get proven to actually deal with the kinds of issues they are supposed to deal with before approving their installation. Which is what institutions like [1] are for with regards to material engineering products. Doing anything else is reckless endangerment since it gives you the feeling of being safe without actually being safe. Like using @safe in D, or Rust, and being unaware of unsafe code hidden from you behind "safe" facades.


Plus statistics can prove nothing -- this logical truth cannot be overstated.

It's called empirical evidence and it's one of the most important techniques in science[2] to create foundation for a hypothesis.

[1] https://en.wikipedia.org/wiki/Technischer_%C3%9Cberwachungsverein
[2] http://www.juliantrubin.com/bigten/millikanoildrop.html


Reply via email to