Hacker News new | past | comments | ask | show | jobs | submit login
[dupe] Dart on track to becoming a standardized Ecma programming language (sdt.bz)
36 points by rjmarvin on Dec 13, 2013 | hide | past | web | favorite | 14 comments

FYI, this was posted yesterday: https://news.ycombinator.com/item?id=6897701

Does this mean one can use Dart instead of javascript ?

Not yet. And even were Dart ratified, the answer would still be the same as it is today: you can use Dart if you cross-compile it to JavaScript, or if you only care at all about Chrome users. Both are fine, but they mean that, for you, Dart is either just another compiles-to-JS language, and therefore not special simply from having ECMA status; or that you might as well also feel comfortable using PNaCl.

The real question is--will Mozilla ever allow support for another language (scripting language, bytecode format, whatever) to be built into Firefox?

If Mozilla support Foo, then Google will probably support Foo (just as they're picking up support for asm.js now), and then Microsoft will eventually be cornered into supporting Foo as well. If Mozilla don't support Foo, people will say Foo is a Google-only standard, and Microsoft will use that as an excuse to not support Foo either. Every standardization effort, in the end, hinges on Mozilla.

Good point.

The interesting thing is that Google has gone about the introduction of Dart in a scrupulously open way. They publicized the language early on it's design and implementation, they open sourced their implementation immediately on announcement and continued development in the open with input and contributions from all comers. The goal of the project is make it easier to develop better web apps. Now they've begun a standardization process.

In other words, Mozilla couldn't ask for a more open, standards-friendly, for-the-betterment-of-the-internet process. Regardless of Google's overall impact on the world, the Dart project is very much in line with Mozilla's mission. On the other hand, Dart competes directly with Javascript. Javascript is Mozilla's baby. The more that Dart replaces Javascript, the more Mozilla's power and influence declines.

So I expect Mozilla will oppose Dart, but they'll have to twist themselves into rhetorical contortions in the process. NIH is alive and well.

That's... a really good point, and one I had never considered before. Does Mozilla really exert this much control over the web browser space?

I think it's more about developer adoption. Non-chrome browsers will not even bother with the DartVM until there is critical mass of developers using Dart to make the transition worth it.

I think the only other way Dart would take over is if Javascript languished, but that is unlikely to happen any time soon.

When's the last time you went looking for web documentation and didn't use MDN?

"Dart is either just another compiles-to-JS language"

You aren't really addressing any of advantages or disadvantages of Dart.

* Can you live in a mostly Dart world?

* Is it easier to write code in Dart vs. Javascript?

* Are there performance advantages to using Dart that "just compiles to JS"?

From what I've read, the answer to all three questions is yes. Javascript is simply a target language, just like asm.js.

>or if you only care at all about Chrome users

Is this in reference to the DartVM or is there another feature? Isn't that turned off by default? I've only been casually watching this project and typescript so I don't know too much about it.

The Dart VM isn't turned off by default, it's not included at all.

There is a fork of Chromium that we maintain, informally called "Dartium" that includes the Dart VM, bindings, an progressing set of dev tools, and native Dart-JS interop. Dartium is included in the Dart SDK, but only for development purposes.

Thank you for clearing that up.

> or if you only care at all about Chrome users

How do you mean? Chrome support for Dart is the same as FireFox, Opera, Safari and IE>9 - via dart2js.

No browser includes a Dart VM yet.

You can absolutely use Dart instead of Javascript, but that's because Dart 1.0 has been released, and because Dart compiles to Javascript.

The standardization means that the spec will be ratified, a conformance test suite will be created for independent implementations, and a process for evolving the language will be developed. It means that we can can compatible implementations, and that other individuals and companies interested in participating in the evolution of Dart will have an opportunity to do so.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact