Program logic bugs vs input/environmental errors

Kagamin via Digitalmars-d digitalmars-d at puremagic.com
Fri Oct 17 08:06:08 PDT 2014


On Thursday, 16 October 2014 at 19:53:42 UTC, Walter Bright wrote:
> On 10/15/2014 12:19 AM, Kagamin wrote:
>> Sure, software is one part of an airplane, like a thread is a 
>> part of a process.
>> When the part fails, you discard it and continue operation. In 
>> software it works
>> by rolling back a failed transaction. An airplane has some 
>> tricks to recover
>> from failures, but still it's a "no fail" design you argue 
>> against: it shuts
>> down parts one by one when and only when they fail and 
>> continues operation no
>> matter what until nothing works and even then it still doesn't 
>> fail, just does
>> nothing. The airplane example works against your arguments.
>
> This is a serious misunderstanding of what I'm talking about.
>
> Again, on an airplane, no way in hell is a software system 
> going to be allowed to continue operating after it has 
> self-detected a bug.

Neither does failed transaction. I already approved that:
>> When the part fails, you discard it and continue operation. In 
>> software it works by rolling back a failed transaction.

> Trying to bend the imprecise language I use into meaning the 
> opposite doesn't change that.

Do you think I question that? I don't. I agree discarding a 
failed part is ok, and this is what traditional multithreaded 
server software already do: rollback a failed transaction and 
continue operation, just like airplane: loosing a part doesn't 
lose the whole.


More information about the Digitalmars-d mailing list