Re: Fusion Laws?

Jason Orendorff <[email protected]>
Newsgroups gmane.comp.mozilla.devel.jseng
Message-ID <CA+W3DWFpYao7jPJS=aKyx_QJ-HNx-zK6vTpuwQmwW-Lmkkkg0Q@mail.gmail.com>
On Thu, Mar 31, 2016 at 1:45 PM, Michael Haufe <
[email protected]> wrote:

> On Thursday, March 31, 2016 at 1:22:14 PM UTC-5, Jason Orendorff wrote:
> > The specification technique isn't the problem. It's the semantics being
> > specified. They are the semantics of a dynamic language. Reasoning about
> > such code is an exercise in hand-waving.
>
> Perhaps I'm misreading your statement here, but are you saying that the
> current spec is hand-waving the runtime semantics of the language, or are
> you instead saying that one can't formalize the semantics of a dynamic
> language?
>

No and no. (The current spec is very detailed. The semantics of JS could
certainly be formalized; I'm not sure you'd learn anything new though.)

I'm saying that the way JS programmers reason about their code---when we
reason about it at all---hand-waves away all the complicating factors that
JS engines are forced to treat seriously. We take for granted that many
possible things that *could* theoretically happen, won't happen. We assume
(rather than prove or propagate) a bunch of antecedents like "well, x and y
are both gonna be numbers here, and neither one can be NaN, and this
addition won't overflow, and this object won't be a proxy..."

JS implementations (and the spec itself) don't have that luxury.

-j
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.