On 8/10/2012 11:07 AM, Araq wrote:
On Friday, 10 August 2012 at 08:38:18 UTC, Walter Bright wrote:
On 8/10/2012 1:05 AM, "Franciszek CzekaƂa" <[email protected]>" wrote:
I wonder how much Ada is in Curiosity on Mars. Let me guess, 0%?

It's all in C.

Take a look at bearophile's list of Ada features advertised as making Ada code
less buggy. Then look at, for example, dmd's bugzilla list.

How many of those bugs would have been prevented by Ada's features?

I'd say about 0.

And how many of those bugs would have been prevented with D's const system?

Probably several. David Held has been reviewing the source code, and has found interactions between subsystems of the compiler that shouldn't be there, and would have been detected if const was used properly.

Const does a couple things:

1. it is self-documenting, making code using it automatically clearer wrt what an interface does and does not modify

2. it forces you to think carefully about interface design. This has caused a lot of discussion in the use of const on interfaces in the Phobos design

Also, dmd is not a multithreaded program, and const contributes a lot towards writing less buggy multithreaded programs, again by making interfaces clearer.


(Which apparently still has some holes wrt delegates ...)

I know, but that's irrelevant to this discussion.


But IMHO it's an absurd comparison anyay since dmd does not qualify as a hard
realtime system with provably bounded memory usage (which is what Ada is about 
...)

I don't think it's irrelevant at all. I think the topic of what language features contribute to writing bug free code and what features contribute to buggy code is very topical and interesting, and *important*.

Reply via email to