3 ms·
I think it's likely that long-term, the approach FB took with Flow (or more general Abstract Interpretation methods) should be able to handle more cases with le
by sgrove 11y ago
I think it's likely that long-term, the approach FB took with Flow (or more general Abstract Interpretation methods) should be able to handle more cases with less effort on the developer's side (albeit with increased computational costs).
The modules/"code motion" is a bit strange at first glance, but definitely a huge boon for building debuggers/admin interfaces/etc. that you don't want included in your main application. David Nolen wrote about this earlier this year when support started landing in ClojureScript http://swannodette.github.io/2015/04/07/in-stillness-movement/ http://swannodette.github.io/2015/04/07/in-stillness-movemen...
Edit: wrt Flow, specifically referring to FB's approach to retrofitting type-checking into a largely dynamic language. Thanks to swannodette for pointing out the ambiguity.
- swannodette 11y agoIt's not clear what you're referring to wrt. "the approach FB took with Flow" and Abstract Interpretation. Type checking? Dead code elimination? In anycase, Google Closure Compiler also leverages Abstract Interpretation.
- sgrove 11y agoThanks for pointing out the ambiguity. Closure would probably be the most interesting (or close to the most interesting) project to work on inside of Google-proper, for me personally. That said, Google's approach is very much on the opposite side of FB's, in that Google expects the vast majority of code to be written for it. FB is dealing with a legacy codebase and has fewer engineers, so has to strike a different set of tradeoffs - less up-front work to integrate their tooling for potentially less benefit than something like Closure can deliver. It's interesting to see the two different approaches. Anyway, this thread is about Closure, which enables ClojureScript, which is my go to language these days. The developers working on the compiler and the stdlib (which is amazing) should feel proud about all the people they've enabled.