On 10/06/2012 04:18 AM, "Franciszek Czekała" <h...@valentimex.com>" wrote:
B) The description of a() says the return value cannot be null. Then a()
should check its return value before returning or make otherwise sure it
is not null. If it returns null it is a bug. One of the infinite number
of possible bugs that can happen. Again it is not the problem of the
language. The problem of divergence of specification and code is a human
problem that cannot be solved formally. Insistance on formal tools is a
misunderstanding that leads to design bloat and eventually failure (Ada).

D competes directly with C++ as Ada did before. Ada drowned under the
weight of its "safety" and so will D if it goes the same route. The only
thing needed now are mature compilers and good systems API integration.
If anything I would rather consider removing features from the language
than adding them.



I have another thing to bring up: why the hating on Ada?

Because, if you're hating on Ada because it requires a bunch of extra boilerplate and verbosity that most programmers would find unnecessary, then I will happily join you in hating on Ada (and Pascal and the like). Keep in mind that one of D's current idiomatic objectives seems to be the elimination of as much boilerplate as possible.

I firmly believe that safety and brevity are NOT exclusive to each other. Moreover, they even synergize well if the language and tools are designed right: verbose code will be less readable and therefore more prone to error.

Reply via email to