Earlier quoted context omitted.
No, but it saves you having to emit machine code that does type checking and dispatch at run-time. You need type information if you want inner-loop performance that is competitive with languages (like C) that are designed for efficient compilation. The generated code for something like "a = b + c" is very, very different if you know at compile-time whether b and c are strings or numbers or something else. Modern Java…
Actually modern JavaScript engines depend on dynamic type discovery (via different forms of tracing) much more than on global static analysis.
Re: Experiments with 'Static' JavaScript: As Fast As Native Code?
#11Is there a good analysis anywhere on the pros/cons of that, and what languages it's most suited to? Lisp is also a dynamically typed (and otherwise quite dynamic) language, yet SBCL uses static type inference for its optimizations instead. Some difference in Lisp v. Javascript, or just different choices by the implementors?