HTML5 Zone is brought to you in partnership with:

Dr. Axel Rauschmayer is a freelance software engineer, blogger and educator, located in Munich, Germany. Axel is a DZone MVB and is not an employee of DZone and has posted 246 posts at DZone. You can read more from them at their website. View Full User Profile

Google’s Alex Russell on JavaScript versus Dart

09.14.2011
| 7886 views |
  • submit to reddit
Its good to see that not everyone at Google thinks that JavaScript “not viable in the long term” [1]. Quoting the highlights of a blog post by Alex Russell [via @MunichJS]:
There’s very little public information yet about Dart (nee, Dash), and as I’m not on Lars’ team I can’t comment about it.
[...]
[Several Google employees] and I attend TC39 meetings, work on implementations, and try to push JS forward in good faith. And boy, does it need a push.
[...]
It’s hard to square this sort of wild enthusiasm for “raw” JavaScript with what’s in the leaked memo, and I can only beg for some amount of understanding. As committed and enthusiastic as I am about the prospects for JavaScript, others are just as enthused about Dart. Google is big, can do many things at once, and often isn’t of one mind. What we do agree on is that we’re trying to make things better the best we know how. Anyone who watches Google long enough should anticipate that we often have different ideas about what that means. For my part, then, consider me and my team to be committed JS partisans for as long as we think we can make a difference.
[...]
Whatever you might think about programming languages for the browser, let me assure you of one thing: your problem isn’t the language. Not really, anyway. We’ve made good progress in the last year repairing some of the seams between JS and DOM ... But it’s only the beginning. The DOM is in terrible shape, and not due to implementation differences.

Related reading:

  1. Google Dart to “ultimately ... replace JavaScript”
  2. A brief history of ECMAScript versions (including Harmony and ES.next)
  3. ECMAScript.next: the “TXJS” update by Eich

From http://www.2ality.com/2011/09/alex-russell-dart.html

Published at DZone with permission of Axel Rauschmayer, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Tags:

Comments

Nicolas Bousquet replied on Wed, 2011/09/14 - 2:42pm

yeah, this is part of their low risk low reward path: try to improve JS throuh standard body.

 The reality is that JS is a mess. Lot of missing features, lot of wrong things... And tied to JS, of course. What if I prefer lisp, python or C#?

Dart is nice, because we need more than JS, really more. But the problem is Dart is not enough. What we need for browsers is a standard VM. Something in the vein of CLI or JVM. So you can make any language you want and compile back to bytecode and let the VM do the optimisation. And we need shared library packaging so you can have then cached on the client... And compiled and packaged on the server so they load fast.

We need namespace too.

That at least would allow real framework to emerge, real API to grow, real abstraction to be made. And would put the innovation outside of the browser. Problem is that each time you add a new feature, it need at least 5 years to be available on all browsers, if it ever happens. Not counting differences of implementation. And because each standard library is compiled at each page run and you can't count on them being already available, you are really limited on library size.

 

This need to change. And not in 20 years.

OrangeBook replied on Fri, 2011/09/16 - 4:21am in response to: Nicolas Bousquet

I thought the change you ask for was, well, too much to ask for, because it is impossible to make all the players agree, and thus JS was going to be that VM, and JS the bytecode. You want Python, Lisp, C#? I thought you would get compilers with JS output, the same than GWT and CoffeeScript and others. And the shared libraries would be loaded in JS form and may be cached (already compiled) by the browser.

 I thought all this things were going to be basically because Google said so (and did so).

And now Google comes and says "Dart"? 

Axel Rauschmayer replied on Fri, 2011/09/16 - 12:55pm in response to: Nicolas Bousquet

1) Give JavaScript a chance! You need to take some time to understand it then it is not nearly as bad as many people make it. Furthermore, ECMAScript 6 (coming in 2013) will fix many problems.

2) Universal VM: I like that idea, but it won’t happen and that’s not necessairly all bad (see link #1 under “Related reading” for details).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.