Eloquently sums up my feelings about the disadvantages of dynamic typing

simendsjo simendsjo at gmail.com
Wed Oct 16 03:52:46 PDT 2013


On Wednesday, 16 October 2013 at 10:37:28 UTC, Timon Gehr wrote:
> On 10/16/2013 08:46 AM, simendsjo wrote:
>>
>> No.. Give me a language that catches obvious bugs at 
>> compile-time, makes
>> code self-documenting and doesn't let me worry about 
>> performance.
>> ...
>
> Why just obvious bugs?

Hehe. Sure - let the compiler catch *all* my bugs!

scope, const, immutable, pure, nothrow, safe, ... D makes it 
harder to shoot yourself in the foot, but you are aiming at your 
foot by default..

Too bad I have to add a lot of annotations
   void f(Class i) {}
to
   void f(in Class i) const pure nothrow @safe {}

I would rather have to write
   void f(@(mutable, escapes) Class i) @(impure mutable throws 
unsafe) {}

If @mutable and @impure existed, I could just add some 
annotations at the top of each module, but it wouldn't help on 
parameters.


More information about the Digitalmars-d mailing list