Non-null objects, the Null Object pattern, and T.init

Walter Bright newshound2 at digitalmars.com
Sat Jan 18 23:31:55 PST 2014


On 1/18/2014 11:11 PM, Kapps wrote:
> On Sunday, 19 January 2014 at 02:33:15 UTC, Walter Bright wrote:
>> You elided the qualification "If it is a critical system". dmd is not a safety
>> critical application.
>
> Nor are 99.99%, possibly 100%, of the applications currently being built with D.

Sociomantic uses D to write trading software. I think they'd be ill advised to 
write code in such a way that it continues making trades after entering an 
invalid state, as in it could be very expensive.

Furthermore, part of the reason why I am adamant about this is far too often I 
run into, including in this thread, programmers who believe that the way to 
write critical software is to keep the program running even if it has failed.


> The points are valid, no safety critical application should ever rely on any
> individual components not failing. But for the purpose of D, they are not
> particularly applicable.

I don't buy that this is not applicable for D. D must not promote unsafe (as in 
potentially life threatening) programming practice as a "best practice". You 
never know how somebody is going to use a programming language.


> People are just arguing over two different things
> (safety critical code vs standard D code), with neither disagreeing with the
> others, simply bringing up different situations.

There has been a lot of misunderstandings and miscommunications in this thread. 
I do my best to clear them up.



More information about the Digitalmars-d mailing list