With about nine months of work behind me on platforms designed from the ground up to support rich, interactive UIs (Android & iOS), the mess of JS, HTML & CSS just seems so gratuitously painful in comparison.<p>From a philosophical standpoint I'm rooting for an open, interoperable web as much as anybody. As a programmer though it's hard to feel much enthusiasm for such a fragmented, baroque, and inadequate toolkit.
With Windows 8, Microsoft is ushering in native JavaScript apps. It's probably in their best interest to keep developers firmly in the JavaScript camp—the more JavaScript developers their are, the more developers there are for whom native Windows 8 development will be second nature.<p>Unless Microsoft adopts Dart, I see them fighting <i>hard</i> to improve the JavaScript development experience.
I feel very uneasy about this. JavaScript is great because it is so simple. All the things mentioned sound as if they add unnecessary complexity.<p>Why not just leave JavaScript alone, and push for a more universal way for browsers to run code? Then different languages could be used, and those who want it could program with more advanced languages (or whatever they deem to be advanced).
Deferred functions. ClojureScript.<p>Scoped Object Extensions. ClojureScript.<p>Modules. ClojureScript.<p>And you don't have stop there. Want advanced pattern matching? Want logic programming? Want delimited continuations?<p>You don't need to wait for Apple, for Google, for Mozilla, for Oracle. Language development is too important to not happen where development happens best - in the field and in open source software projects.
I'm looking forward to discussing this, but in the meantime, can anyone parse "Similarly, I think we can find a way to repair “this” binding foot-guns with softly-bound “this”." for me? I don't understand what "binding foot-guns" are.