brendan at mozilla.com
Tue Sep 13 00:28:01 PDT 2011
On Sep 12, 2011, at 12:35 PM, Mikeal Rogers wrote:
> I was super confused as to why good tools and IDEs would require typing.
> A bunch of typed languages do have great IDEs but I feel like that's mainly because programming in a typed language can be considerably more difficult which puts more emphasis on creating great tools to help deal with it.
Could be, although a lot of the IntelliJ fans talk not about types per se, but about knowing what member names mean, e.g., which concrete method implementations might obj.foo() actually call? That uses type declarations, for sure, but it need not.
> This reminds me of the ES4 discussion around typing being a requirement of making the language more performant, that clearly wasn't true.
That was an AS3 claim, not an ES4 discussion. I explicitly disavowed it during ES4 days here:
> I'm going to throw out a crazy idea. Maybe the language is fine in this regard and creating better tools is done by *creating better tools*, not by changing the language. Maybe changing the language has a negative effect on creating better tools because it increases the surface area and complexity those tools need have to solve.
> I'm not saying changing the language is universally bad, only that some problems are better solved outside of ECMA and that there is a big community out here that is working to solve this problem and they don't need anything from ECMA to do it.
Tools can do all sorts of amazing things with JS source: semi-static analysis, dynamic inspection of the live object graph and active code, combinations and variations. Tools don't have to run super-fast to avoid regressing benchmarks. We're early in JS tool evolution, we should not hack up the language prematurely -- your point is on target.
More information about the es-discuss