back to article Google plan to kill Javascript with Dart, fight off Apple

Google has apparently invented its Dart web programming language as a replacement for Javascript. Dart, revealed last week, has been conceived as a way to overcome what Google has determined are "fundamental flaws" in Javascript, according to what purports to be a leaked internal company email from November 2010. These flaws …

COMMENTS

This topic is closed for new posts.
  1. Christoph
    Boffin

    Just what we needed

    Too many existing versions? Obvious solution - invent yet another one. But make it different enough to throw away the existing investment.

    Those various JavaScript frameworks will run on existing browsers - they're going to have a hell of a job getting a new language added to all the standard browsers, let alone to IE. Are they hoping to make it so superior that everyone switches to Chrome? (And to Chrome OS, and hey, everything everywhere runs on Google!)

    If you want to standardise, standardise on JQuery. Build it into the browser.

    1. Dayjo
      Thumb Down

      Make jquery native?

      Hell no! It's already bloated as it is. I much prefer to work with javascript directly than go through jQuery. Granted it's a great framework and can be handy, but sorry, to build it into browsers when it's so buggy and bloated would be ridiculous.

    2. Xavia
      WTF?

      'standardise on JQuery'.... Yes lets stanardize on something thats not even a language, and solves none of javascripts issues, so 20 years from now web can be just as limited.

    3. Iggle Piggle

      Not sure if JQuery should or should not be in the browser. But what I am seeing here is that developers are doing what developers love doing and that is reinventing the wheel. OK it may be a better wheel at the end of the day and it will allow developers to achieve things they never thought possible. But I'll tell you right now it won't be good enough. Nothing is ever good enough to last and some developer somewhere will be hatching a plan to replace it while another group of developers will be saying what a rubbish idea that new idea will be and yet another group will be saying 'enough already what's wrong with what we've got?'.

      I wonder if Google are thinking of writing their new language in JavaScript so that it can run in any existing browser? :-)

  2. JDX Gold badge

    at least 20 different frameworks for Javascript

    How many hundreds must there be for C++, Java, etc... true a standard library would be nice but really this is not a problem.

    1. Xavia
      FAIL

      Spoken like someone who doesn't have to work wih js regularly.

  3. Snowy Silver badge
    Mushroom

    So dart is what that e-mail meant when Google said they would have to licence or find another way around Java.

    1. Tom 38
      FAIL

      Java != JavaScript

      Not even a little bit.

  4. melt
    Pint

    There are not "at least 20 different frameworks for Javascript". There is One, and it is called "jquery".

    1. Anonymous Coward
      Anonymous Coward

      "There are not "at least 20 different frameworks for Javascript". There is One, and it is called "jquery"."

      And lo, it is shit.

    2. Anonymous Coward
      Anonymous Coward

      jQuery is for pussy designers who try to become programmers...

      1. Fuzzy Duck

        err..no

        it's for designers who can't be arsed with too much programming and dread the thought of becoming a developer...

        1. DanM
          Pint

          err..no

          JQuery is for web devs on ridiculously short deadlines who can't be arsed re-inventing the wheel for the 15th time on 5 different browser platforms and want to go home to their real lives at 5pm.

          Beer, coz I'd rather have that than spend extra hours hacking code.

      2. Christoph

        jQuery is for developers who want to get on with developing the application, not spend weeks re-inventing the wheel and trying to get the damn thing working with every version of IE back to 6.

        Developers who think producing a working application is more important than showing off how macho your coding skills are.

        The client doesn't want it perfect, he wants it Tuesday.

      3. Mark 65

        @AC

        I'd argue that any framework is for people that don't wish to continually reinvent the wheel but to spend their time on perceived value-add.

    3. Stupidscript

      Ummm ...

      Other JS frameworks:

      Kendo UI

      Ally

      Amole SDK

      DHTMLX

      Dojo

      Echo3

      Ext JS

      Google Web Toolkit

      midori

      MochiKit

      MooTools

      script.aculo.us

      Pyjamas

      qooxdoo

      Rialto Toolkit

      Rico

      SmartClient

      SmartGWT

      SweetDEV RIA

      YUI

      ZK

      That's 21, right there. 22 with jQuery. Back to school with you, slow ones.

  5. Ru
    WTF?

    No standard library means we need a new language?

    I think its fair to say that if you feel that the only way to solve a problem is to create an entirely new programming language, the odds are good that you have failed to understand the problem.

    There are all sorts of reasons to dislike javascript, but the proliferation of third party frameworks is a fairly trivial one.

    1. Paul Shirley

      Compare with Java, wrap a poor language in a extensive standard library and require that lib to be in every implementation. In a very real sense those libs *are Java*, the actual language just glue. All the value is in having a consistent library package that's actually useful.

      If it takes a new language to deploy a single, consistent library platform, that's not an insane option. When the language you're trying to replace is as hacky and messy as Javascript it starts to look like a damn good idea, if only because Oracle just ensured no-ones going to invest in the obvious option of Java!

    2. ThomH

      It's the design pattern problem too

      Though I guess if there were a standard library, that would set the tone for design patterns. So solving the one would solve the other.

      That said, like you I think Google have picked the wrong direction. I'd have thought the best solution would be to pick any of the Javascript-with-extensions or compiles-to-Javascript languages like CoffeeScript, Objective-J, etc (but probably not those, I just picked some examples I'd heard of), produce a decent development kit for free and build that into their browser. So they win developers through good tools, the code works everywhere Javascript works, but in Chrome it works a lot faster and with less overhead. Let the market persuade the other browser vendors to built the language in and don't worry about companies like Microsoft that are perennially behind in implementing web technology support.

  6. Anonymous Coward
    FAIL

    Title

    Great, a new language that has been forked from the beginning: is it Dart or Dash?

    I thought the 'greatness' of open source was choice. Now they're complaining there's too much choice? Maybe Google should google 'reality' and see what comes up...

    1. Anonymous Coward
      Anonymous Coward

      Standards should increase choice

      Surely Google's idea is that this should become a new standard? Real choice depends on avoiding proprietary lock-in of the sort favoured by Microsoft and Apple.

    2. Anonymous Coward
      Anonymous Coward

      "should google 'reality' and see what comes up.."

      lots and lots of ads Im sure :)

    3. Little Poppet
      FAIL

      Google are not pro 'open source' though. It's just something they like to flap around in front of your face! At least MS and Apple don't have such pretensions.

  7. Anonymous Coward
    Devil

    Been there, got the t-shirt...

    ...Anyone remember "embrace, extend, extinguish"?

    <-- Most appropriate icon.

  8. Jumble
    Stop

    Like a hole in the head

    http://xkcd.com/927/ had it right.

  9. Number6

    Dart

    A dart is a small object that is inherently unstable in flight and requires great skill and a bit of luck (or several pints of beer) in order to get it even close to the desired target.

    1. James Hughes 1

      You're not very good at darts. are you?

  10. NoneSuch Silver badge
    Joke

    Should have called it JavaScript ++

  11. Harry

    If a new language is really needed, then ...

    * it needs to be developed and controlled by an independent standards body, eg W3C

    * it needs to be specifically designed to ensure that browser extensions can continue to detect and block any spyware, unwanted animations and other nuisances that unenlightened webmasters insist on using to clutter their sites.

    * it needs to be easily supported unencumbered in all browsers

    Google's aims are going to be the complete opposite of both of the above.

    Google's slogan these days is fast becoming "Mainly do evil". Google constantly watches us, but nobody watches the watchers.

    1. RISC OS

      w3c? No thanks

      If we let the W3c run thi s thing it will be 10 years minimum before the 1st version ever sees the light of day....

      Let google run it and it will probably be ready by the end of the year.

      1. Steve Knox
        Coat

        "Let google run it and it will probably be ready by the end of the year."

        Yes. In a closed-source implementation available only on Chrome. Mozilla will decry its lack of openness, while Microsoft and Apple will be in the process of filing patent, copyright, and just for the fun of it, wrongful death lawsuits. It'll come out in Beta by invite only, and you won't have to provide your real name to get it, because Google will legally change your name to fit their definition of what a name should be. Meanwhile, it'll remain slower than JavaScript, primarily because of its habit of logging all operations to an "application feedback" system at Google.

  12. Anomalous Cowherd Silver badge

    Sweet Jesus, another one?

    First, if you let web-designers loose with a programming language you're going to get dogshit. That's a given in any language, as anyone whose done contract Perl work will attest to. JavaScript is a very capable language and you can design complex object hierarchies with it if you know what you're doing, complete with encapsulation, inheritance and the lot.

    Second, JavaScript is actually ECMAScript, a widely implemented (Apple, Microsoft, Google, Mozilla, Opera & others) international standard. DART is a proprietary solution pushed by one vendor. Really, does this remind you of anyone? ANYONE?

    WTF is up with Google lately - Dart, WebP and (to a lesser extent) SPDY are all Chocolate Factory inventions to "improve" the web, but they're all single-vendor solutions designed to usurp existing multi-vendor ones. If successful they'll drag the web back to the bad old days.

    (Incidentally the fact they're open source doesn't matter a damn. I could open source my own image format tomorrow, but that doesn't mean I should expect Mozilla and MS to implement it).

    The more powerful a company becomes, the more it ignores the very standards that helped it grow. Same as it ever was.

    /rant

    1. xyz Silver badge

      Right on!

      Exactly.... I designed my own O,O encapsulated, with interfaces, yada, yada UI framework.

      For the vast majority of the web apps I build I rarely have to extend and I manipulate the layout using CSS. Funny, but I still get a kick out of creating many instances of a class, doing something inside one instance, then calling the class (as a static) via a method that tells me which instance did what. Wish I could do that in C#.

      jQuery was OK, but now everyone is extending all over the shop, there's hackholes everywhere.

  13. Anonymous Coward
    Anonymous Coward

    But if it COULD be got to work

    it would have all kinds of advantages in terms of speed, reliability and security. It does sound to be designed down at the machine level, so it *should*, in principle, avoid the problems created by inept implementations of high level languages and the usual accumulation of bad coding / layers of ill-thought out crap that creates hard to detect loopholes in security.

    And it would undercut some of the competitive advantages of Apple's walled garden, thereby possibly keeping the web a more open place.

    What's not to like?

  14. Deaths Pirate
    Meh

    Stop over inflating the BS and read the E-Mail

    'Developers using Dash tooling will be able to use a cross-compiler to target Javascript for browsers that do not support Dash natively.' - Taken from email.

    Google are not trying to kill off javascript they are merely creating a language that suits their needs. What's the big issue? Use it, or don't use it ... it's your choice, all it will mean is a bit of learning, but hey 'Welcome to the world of software development!' It's what we do, it's what we excel at, it's why we get paid.

  15. Matt Bucknall
    Facepalm

    GWT?

    Seems like another case of the left hand not knowing what the right hand is doing.

    I'd have though generalizing GWT's java-to-javascript compiler technology would be time/money better spent so that it could do stuff like support different language front-ends (because choice is always good right?).

    Alternatively maybe Google could convince W3C to standardize on some intermediate code format that browsers could eventually execute or JIT instead of (or initially as well as) having the burden of hosting a fully fledged Javascript engine.

    If modern Javascript engines can do stuff like this (http://bellard.org/jslinux/) then I'm sure a JVM or CLR execution engine implemented in Javascript with appropriate tie-ins into the browser and DOM would run quite well. Theoretically it should already be possible for end application developers to do highly portable, high performance client-side scripting whilst avoiding having to actually code in Javascript at all.

  16. Paul Ireland
    Thumb Down

    Javascript alternatives and frameworks

    I like Javascript. It can be improved but ideally isn't that what a new version of Javascript should address, rather than a whole new language.

    It has its frameworks, but hasn't every language, and wont Google's new language end up with frameworks too? After all frameworks are just higher level abstractions designed by developers to make things easier for their particular intended task.

    If you want an alternative high level typed language that exports Javascript, then Haxe is another option to look at.

    If Google are hoping their new language will be more popular than Javascript in the browser, then I hope they have as much luck with this as Microsoft did with IE6's VBScript alternative, that is slim to no luck.

  17. Bob 18

    Been There...

    What's wrong with Silverlight and JavaFX? How is Dash/Dart significantly different from those previous efforts (other than it's made by Google)?

  18. Ramazan
    Childcatcher

    designed-by-corporation

    Oops, forgot my favourite example: Macromedia Flash, The Buggy, The Slow and The Ugly.

    Kudos to Apple for having balls to fight this monster off the Internet.

    1. David Gosnell

      You're not wrong in the analysis, but the bottom-line reason is less honourable: Free Flash games compete unacceptably with non-free iTunes downloads.

      1. Ramazan
        Flame

        @David Gosnell

        Probably also as a result of multiple OSX hacking contests, where Flash was popular as an attack vector. By the way, I have Steam version on Machinarium, it's a great game written in Flash AFAIK, but I was never able to beat it on Macbook Air in single run, because MBA overheats half through the game and makes it impossible to advance past the Owl/electrician level. Similar problem with a lot of Flash content on the mentioned MBA, Flash eats all available CPU cycles, and for what?

        1. Oninoshiko
          WTF?

          Overheating?

          Sure, that's a flash problem, not improper thermal design.

          Yes, flash is intensive on the Mac, but that is because (as adobe has pointed out repeatedly) Apple won't provide similar interfaces to what MS provides to accelerate it. That said, no matter HOW intensive it is it shouldn't overheat. If it is, then it's a manufacture or design defect in the hardware.

          1. Ramazan
            Linux

            @Oninoshiko

            1. Yes, thermal design in MBA is total crap.

            2. I don't like Apple very much for what they did with MBA and iPad 2 3G and iPhone etc (I won't comment further 'cause it's off topic)

            3. Now how much interactivity/flashiness/poppines/social_friendliness and other crap do you need when surfing for information on some subject? I don't need Flash here and there all over the place just to read one damn article. Same holds true for Java applets, silverlight applets and Darth applets when they get there. Moreover, why do you need Web2.0/AJAX and other features to just read email (I mean YOU, gmail). Me doesn't. I was perfectly ok with gmail's basic HTML mode when I could't access it by other means (I mean _console_ email application called mutt).

  19. Ramazan
    Pint

    designed-by-corporation?

    I'm simplifying here, but:

    Great languages:

    LISP - designed by one person

    C - designed by one person

    Tcl - designed by one person

    Tcl/Expect - designed by one person

    Python - designed by one person

    Ruby - designed by one person

    Shitty languages:

    Java (Oak) - designed by Sun

    FORTRAN - designed by IBM

    Total crap:

    JavaScript - designed by committee

    COBOL - designed by committee

    P.S. Probably Dart will be OK, it's too early to judge without seeing actual Dart code. If it's easy and fun to learn and fun and easy to program with, it may eventually exhibit The Python Effect

    1. Brewster's Angle Grinder Silver badge

      Of the ones I know about:

      Javascript was designed by ONE person (Brendan Eich), in about two weeks, and is now steered by committee.

      'C' although invented by one person, is now steered by committee - and good luck getting K&R C to compile on a C99 compiler.

      C++ was designed by one person; but, again, these days steered by committee.

      1. Tom 7

        Brewster

        JavaScript is screwed by committee. The reason why JS 'sucks' (is because certain companies joined the standardising committee with the sole reason of crippling the language to try and prevent the browser becoming the desktop and removing their tollbooths on the information highway.

        Googles language will probably go the same way.

        However the important thing is we have the tools we need to do everything we need in the browser now. We shouldn’t be arguing over what language to use but which graphics library and sound libraries we use from Javascript.

        You can write shit code in javascript but more importantly you CAN write very good code in it and in modern browsers (non IE) on the 7 year old PC's I use for testing you can make IDE's that are on a par with MSVC6 and graphics editors similar to photoshop of the same era.

        OK you cant as yet write write ECMA standard arse wiping facilities but using 1/10th the software engineering disciplines used to write Unix (because its been done so the lessons have been learned) it should be possible to write enterprise cloud systems in the browser for the browser if only people would use the tools available and not spend their lives fighting to not learn how something else can be made to work.

      2. Ramazan
        Linux

        Just to clarify my point: not every language designed by one person is great (example - C++, shitty from the beginning).

        Regarding ACNE^H^H^H^HECMAScript - thanks for educating me, I didn't know that Eich designed it alone, but then my first statement holds true.

        C is great, and I regularly get my hands dirty with its K&R variant (hello, PA-RISC HP-UX!), ANSI C and ISO C99. I see no major problems compiling K&R code with gcc though. Can you elaborate, please? There's another problem - how do you compile ANSI C code with HP-UX bundled K&R compiler, for instance? Go buy ANSI version? Try to build gcc with K&R (well, I can do that, can you?)?

    2. easyk

      VHDL - designed by the DoD. Many consider it to be shitty but I kinda like it.

    3. LPF

      In my opinion most lanuages start out, good then get screwed by comittee

    4. Nathan 6
      Thumb Down

      With the exception of C in you great languages list, what exactly is the adoption of the rest combined? Less that 2% I would guess. Being a great language from the stand point of design doesn't mean it worth the investment is using it if some other general purpose, more widely used language exists.

      Anyone remember when RoR was suppose to to kill PHP? Years later, PHP is still going strong while RoR usage is pretty flat, said for some high profile sites.

      1. Ramazan
        Holmes

        @Nathan 6

        And, of course, there is a huge COBOL codebase, still up and running and expanding. Those who come to rewrite this in Other Languages run scared or lie dead.

  20. Anonymous Coward
    Anonymous Coward

    My view of JavaScript has changed lately

    Used to hate it and thought frameworks were idiotic and foolish wank by and for people with too much time on their hands.

    Until ...

    I was forced to use it in a project -- I say *forced* and I probably could have done what I had to do another way, BUT I would NOT have been able to do it as fast or as well as it turned out.

    Using some of the current offerings I was amazed at what I could achieve -- against all sense or expectation -- in the time-frame allowed.

    At the time I thought "I'll eventually redo all this later in something else" but as it panned out my effort was so robust and such a huge hit I realised that I didn't have to! I *was* genuinely amazed.

    It is possible to build functional and useful apps this way and then just forget about them because they work so well.

    This from a total skeptic with little previous experience.

  21. vincent himpe

    wake me

    when they get rid f the semicolons at the end of a line... any compiler that cannot use the standard ascii <CR> or <CR><LF> pair to find out where a line ends is a stinking dinosaur.

    And don't start about splitting long instructions across mulitple lines. Just use a continuation character in that case. ( or make your code more simple. )

    1. Steve Davies 3 Silver badge
      WTF?

      re vincent himpe

      Why would we bother to wake you up? you seem to have been sleeping for al ong time already.

      'standard ascii'? WTF? Real coders use UTF-8. Hardcore coders use UTF-16 or UTF-32.

      I liked the continuation character bit. I seem to recall that some languages had that once upon a time.

      Oh yes, Fortran & Cobol. Back in the days of punched cards some 30+ years ago. That's progress then?

      1. Anonymous Coward
        Anonymous Coward

        @ Steve Davies 3

        "Real coders use UTF-8. Hardcore coders use UTF-16 or UTF-32."

        Utter, arrant nonsense. I do hope you're being ironic.

    2. Anonymous Coward
      Anonymous Coward

      You missed the point in the semicolons.

      It's so you can hugely piss people off by removing all newlines from the source before you release it!

  22. Renato

    Language

    Why create a new language if there are many mature languages and interpreters/VMs?

    Just plug Lua or Python on a web browser already.

  23. Anonymous Coward
    Anonymous Coward

    Another "standard"?

    *This* is what is killing the open web. You want everyone to use it, get it into an RFC and it had better do something that wasn't possible before.

  24. jubtastic1
    WTF?

    What's the Apple angle?

    How does iOS differ from windows or android or anything else as far as JavaScript is concerned? And how does creating a new language that probably won't be supported on iOS combat that?

  25. Anonymous Coward
    Anonymous Coward

    semicolons and iOS

    What is wrong with semicolons, you can put 2 or more statements on one line and save some bandwidth (not that the current crop of web devs really think that much about that anymore). Does typing one more character hurt that much given the clarity it brings. Do you omit full stops at the end of your sentences?

    As for the fear of innovation moving to iOS, relax, google's other bastard child Android is working on nailing that one.

    Lastly, a new language for web programming, yawn. If one is developed and taken up outside of California and people like it (read: use it) then it will become a defacto standard anyway. If not it will fall by the wayside like so many before... there is a form of natural selection on the web that even the mighty google cannot dictate.

  26. Rambler88

    "Google is apparently concerned innovation is moving off the web as we and Tim Berners-Lee know it, and on to the popular but fenced-off iPhone and iPad."

    I'd love using a Web from which that sort of innovation, along with Facebook and the like, not to mention Unity and toy interfaces for mobile, has been moved off completely--and securely fenced off, with the locks on my side and the key in my pocket (until I drop it in the nearest unfathomable body of water).

    As for handing standards to a body that will take ten years to get out the next version--having anything stay usable for that long is the dream of everyone who actually uses the technology, as opposed to those who market it and those who just wank off to it.

  27. vlc

    Thats why Pyjamas exists

    It really is a mess. The web is great because of (as the e-mail states) the reach it offers. But in other respects web-tools have taken use backwards at least 15 years.

    This mish-mash of technologies held together by bit of string needs a clean-up. I have no idea if it is THE solution but pyjs.org does seem to be a step in the right direction.

This topic is closed for new posts.

Other stories you might like