diff options
| author | Dan Gohman <sunfish@mozilla.com> | 2015-06-02 02:08:59 -0700 |
|---|---|---|
| committer | Dan Gohman <sunfish@mozilla.com> | 2015-06-03 13:37:04 -0700 |
| commit | de455af1cd7e94e5940262f1511b1be5fc8dc1a3 (patch) | |
| tree | 3773bcde524c1ccc02893117e7b2915239498c51 /IncompletelySpecifiedBehavior.md | |
| parent | 5510bdf079057f42ff35511108c4db50196d540d (diff) | |
| download | nanowasm-design-de455af1cd7e94e5940262f1511b1be5fc8dc1a3.tar.gz | |
Tighten up the language about observable differences between implementations.
Diffstat (limited to 'IncompletelySpecifiedBehavior.md')
| -rw-r--r-- | IncompletelySpecifiedBehavior.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/IncompletelySpecifiedBehavior.md b/IncompletelySpecifiedBehavior.md index f566aba..2bdf9d2 100644 --- a/IncompletelySpecifiedBehavior.md +++ b/IncompletelySpecifiedBehavior.md @@ -2,9 +2,9 @@ WebAssembly is a sandboxed platform. Applications can't access data outside the sandbox without going through appropriate APIs, or otherwise escape the sandbox, even if the behavior inside the sandbox should ever be unspecified in any way. -Beyond that, it is desirable to minimize observable differences between implementations when practical, so that applications don't inadvertently become dependent on any particular implementation's behavior. However, in some areas, performance concerns make this prohibitively expensive, so some compromises are made. +Beyond that, WebAssembly minimizes observable differences between implementations, to reduce the risk of applications becoming dependent on any particular implementation's behavior. However, occasionally compromises are made due to performance concerns, listed below. -Also, there is a general preference against [nasal demons](https://en.wikipedia.org/w/index.php?title=Nasal_demons), since they are an extreme on the spectrum of observable differences, and since they make it difficult to reason about what state an application might be in. WebAssembly usually prefers to [trap](AstSemantics.md). Otherwise, it is generally preferred to have a specific set of possible behaviors rather than nasal demons. And presently, WebAssembly has no nasal demons. +In particular, WebAssembly has no [nasal demons](https://en.wikipedia.org/w/index.php?title=Nasal_demons), since they are an extreme on the spectrum of observable differences, and since they make it difficult to reason about what state an application might be in. WebAssembly prefers to [trap](AstSemantics.md) when feasible, and otherwise it permits a specific set of possible conforming behaviors. The following is a list of the places where the WebAssembly specification currently admits or is expected to admit multiple possible behaviors. |
