On Thursday, 3 October 2013 at 22:38:18 UTC, Walter Bright wrote:
On 10/3/2013 2:15 PM, nazriel wrote:
Music player (as example) do not kill people if they fail.
Aborting whole music player just because Visualisation plugin had access
violation is pointless.

How does the music player know the fault is in the plugin and it could be safely continued?


Because a music player can ALWAYS safely continue. Worst case scenario, if behave erratically and is killed by user.

A car firmware kill people if they behave erratically. The right choice is to kill it if anything look wrong.

A media player won't kill anyone.

A properly designed system with user-supplied plugins that needed to recover from plugin failure would put those plugins in a separate process space, so when they crash they cannot affect the rest of the system. Any other scheme is just a bad design, although it may be convenient from a developer cost standpoint to write it that way.


Yes. Anything is a cost benefit tradeoff. The cost of developing a sandboxing solution is way higher than doing some recovery that will fail in 1% of the case in a way that won't kill anyone.

And unless phobos get a sandboxing solution builtin, the argument will stand.

Reply via email to