mikesamuel at gmail.com
Fri Oct 20 12:54:55 UTC 2017
IIRC, Most sources of non-determinism are obvious:
* Builtins like Date and Random
* Host environment artifacts like network message receipt order
and a piece of code that doesn't rely on one of those is deterministic.
There are a few sources of non-determinism that are hard to statically rule out:
* Catchable exceptions due to lack of memory or stack overflow
but you can still reason about fail-stop deterministic code.
If GC is observable then the set of statements that are obviously
deterministic by either metric is much smaller.
Sources of non-determinism are also sources of hard-to-diagnose heisenbugs.
I don't know too much about how carving out a deterministic subset of
the language might be handy otherwise, but non-determinism and
side-channels often go hand in hand.
On Fri, Oct 20, 2017 at 8:07 AM, Michał Wadas <michalwadas at gmail.com> wrote:
> Is there any comprehensive answer about why ability to observe garbage
> Michał Wadas
> es-discuss mailing list
> es-discuss at mozilla.org
More information about the es-discuss