Program logic bugs vs input/environmental errors
Sean Kelly via Digitalmars-d
digitalmars-d at puremagic.com
Fri Oct 3 11:20:09 PDT 2014
On Friday, 3 October 2014 at 17:38:40 UTC, Brad Roberts via
Digitalmars-d wrote:
>
> The part of Walter's point that is either deliberately
> overlooked or somewhat misunderstood here is the notion of a
> fault domain. In a typical unix or windows based environment,
> it's a process. A fault within the process yields the aborting
> of the process but not all processes. Erlang introduces within
> it's execution model a concept of a process within the higher
> level notion of the os level process. Within the erlang
> runtime it's individual processes run independently and can
> each fail independently. The erlang runtime guarantees a
> higher level of separation than a typical threaded java or c++
> application. An error within the erlang runtime itself would
> justifiably cause the entire system to be halted. Just as
> within an airplane, to use Walter's favorite analogy, the seat
> entertainment system is physically and logically separated from
> flight control systems thus a fault within the former has no
> impact on the latter.
Yep. And I think it's a fair assertion that the default fault
domain in a D program is at the process level, since D is not
inherently memory safe. But I don't think the language should
necessarily make that assertion to the degree that no other
definition is possible.
More information about the Digitalmars-d
mailing list