Wirfs-Brock preaches Harmony
Unlike many new languages that are born and quickly die or fade into obscurity, Dart is alive. Test versions of Chromium, the open-source browser that feeds into Google's Chrome, appeared in February featuring a Dart Virtual Machine capable of running programs built using the language.
"What browser manufacturers have you heard show interest in Dart," Wirfs-Brock asked The Reg slipping in to rhetorical-question mode at QCon. Er, nobody.
In fact, Dart in Internet Explorer, Firefox and Safari would be a major technology coup; Chrome is the biggest and arguably strongest growing rival to browsers from Microsoft, Mozilla and Apple both on terms of project roadmap. Such an inclusion would show technology leadership by Google in an important and sensitive area of web development and performance. Microsoft's only just come around to full HTML.
"What would it take to motivate all the major browser implementations to implement Dart in timely enough manor to have any impact," Wirfs-Brock continued.
Google does have scale on its size. It has a browser that's at least growing, unlike others, and it's the owner of influential web real estate from ads and search to email, docs and video. Arguably, all Google needs to do is sit still and let the web come to it.
When it comes down to actual features in Harmony, these will include: sandboxes and module loaders, array comprehensions, binary data objects, built-in hash maps and sets, and super-method calls. Some of these, such as block scoping, array comprehension, maps and proxy, have already made it into browsers, specifically Firefox and Chrome between 2006 and 2008. Elsewhere "some of these details aren't really pinned down yet," Wirfs-Brock says.
In the meantime, there's no date for Harmony, although you can expect to be using Harmony's features in five to six years from now. Ahead of that, ECMAScript 6 is expected to be formalised by the end of 2013 when Wirfs-Brock also expects most browsers will be running ECMAScript 5.
Meanwhile, Google marches on with Dart.