Just what the world needed, one more incompatible language.
Good luck for the phase 3 of that Embrace, Extend, Extinguish plan.
Another eminently forgettable attempt to replace a nasty yet pervasive language? I just don't see it happening. A nice new scripting language supported by all the major vendors would be great, but...
- its a whole new language for everyone to learn.
Seems slightly more likely to take the world by storm than, say, Go... but only slightly. I for one am unconcerned about my existing language skills becoming obsolete overnight.
Re-read the post.
I've used GWT extensively, and I would certainly agree with the advantage being the same language on client and server.
It just struck me how similar the description of the way Dart is supposed to run is to the way GWT works.
Maybe its just that they know how to do the whole compilation to JS thing (and quite well), so they are doing it again with this newcomer.
And yes, Mr Anon, 4/10 for observation ;-)
It almost looks like they're trying to forgo JS's event-driven nature to build more linear programs. Just what the web needs, more UI code that looks like it came out of Visual Studio.
Not to mention their choice to go back to class-based inheritance, which I can only assume was a move born out of programmer familiarity rather than functionality. There is nothing inherently wrong with prototypal inheritance such that it needs to be replaced with a class-based solution. Sure, it takes a little getting used to, but it's perfectly usable (and quite powerful) once you get the hang of it.
The only explanation I can think of for this is that it was written by the same sort of people who came up with GWT. Programmers who really want to be web developers but refuse to let go of Java.
PS: If anyone really wants a good way to make development of web apps easier, try Backbone. I just found out about it the other day and have been geekgasming over it ever since.
I agree that prototype inheritance is fine, but it does potentially bugger optimisations because, by constructing classes on the fly, you effectively have program behaviour modified at run-time. Static classes are a lot easier to analyse - you don't need whole program analysis to work out what's going on.
Also, jscript's eval must die for the same reason. I understand the next version is tying down it's behaviour so you can't do absolutely anything in it, but still.
From my quick glance at dart, what I'd really like which I can't see is capabilities. That would be a mega step forward for controlling languages-that-run-in-browsers (or on your desktop for that matter).
Though I'd be happier if web sites really didn't put sweet F.A. into their pages unless they absolutely, totally needed it. The browser is mutating under the evil radiations of what big biz selfishly wants[*], not real end user requirements.
Sux, does it not?
[*] mind, firefox is mutating horribly under what clueless devs/GUI designers want, and in a way that's even worse. When 3.6 is EOL I doubt I'll continue with it unless they've managed to grow up by then.
Pretty much all interpreted languages have some equivalent of eval, and there are legitimate uses for it, but way too many devs use it as an excuse to be lazy.
I'm not sure I get what you mean by "capabilities" though. Are you saying there should be more APIs? Or that you like the native data manipulation allowed by Types like Queue and StringBuffer?
Also, what's wrong with FF's UI? They're getting rid of all the crap in the chrome so we can actually see webpages. What do you think that browser users really need, design-wise, and how does it differ from the minimalist approach that's come into vogue recently?
Note: If you don't like it, it's pretty easy to switch the UI back to the old one. Just right-click the upper UI, check "Menu Bar" and uncheck "Tabs on Top".
"Pretty much all interpreted languages have some equivalent of eval"
I'm not sure this is true, but having it certainly makes it much harder to compile as the compiled code must ship with a compiler or interpreter to eval() your strings.
Capabilities are simply a security approach, and to be fair I'd be happy with any fine-grained security approach built into the browser which the user could access, including ACLs.
A capability is basically a proxy that is passed to the program so that program can access a resource through the proxy. No proxy, no access. It's actually a lot simpler than it sounds. Some reading:
As for Firefox's interface, there are several problems. I don't like sudden changes to the interface which I've grown used to -- after all usability is also a function of the user's familiarity with that interface. But whereas I can adapt, however unwillingly, plonk a new Firefox plus interface in front of aged granny and watch her bafflement. You and I are not the real end user.
Full-screen problems? Not for me and I've run it in 1024 x 768 for several years without too much hassle, and then there's always the full-screen magic of F11. So what exactly are they solving?
For a more concrete example of where they are really beginning to fuck up, if you're running FX4 then try this -- using the mouse only, try to bookmark all your tabs using the "Bookmark All Tabs" entry under the Bookmark menu.
Next stop, Google for why you can't find it. Find that a lot of people have been complaining it's disappeared, and also find that it is actually present. So why can't you see it? Because if you use the mouse to open the bookmark menu, some stupid prick decided that you didn't need to see it. Opening using the traditional Alt+B shortcuts and its visible.
Which is why I dumped it within a few hours (not that this was the only problem I found).
Un-fucking-believable. Utter, utter elementary GUI design fail.
Interpreted languages always include their compiler because they are compiled at runtime. That's pretty much the definition of an interpreted language.
I tried the experiment you mentioned in FF. That's stupid. I don't know who thought that up, but it's moronic. They might have thought it wasn't necessary since now you can just right-click on any tab and "Bookmark All Tabs", but having it in the bookmarks menu only under some circumstances is ridiculous.
Though TBH I'm a little surprised that anyone even uses that feature now that we have tab groups.
Just to say so before I start this rant: I was really excited when I saw the news a while ago about Google coming out with a new language that would make it easier to build web applications, but now that I've seen it, I don't think Dart is that language.
That is because the language that is going to save us all by nearly miraculously making web application development easier is already in existence:
I for one am going to start blowing the dust off of my old VBScript programming books and start preparing for the imminent arrival of VBScript's second golden age!
Dear Mr. Styles,
We would like to inform you that we are preparing a patent which will protect our right to "discuss the art of Go programming in public electronic places which are usually inhabited, followed or streamed by people of a rather (sub)technical nature for purposes as (but not limited to) discussing theories, producing negative comments and/or to compare Go with other programming languages in such a way which could result in a profit decrease for companies actually using and/or exploiting Go.".
Considering that you have now mentioned Go in a public forum which falls within the regions of our upcoming patent we're sorry to inform you that we see no other alternative but to charge you for a nominal fee of 2 million dollars in order to secure the future of Go and the businesses associated with it. This in order to protect your and our freedom and to ensure that Go won't be forgotten.
We will have our attorney contact yours as soon as possible and hope that you'll comply with our request and have the money up next week.
With kind regards, blah, blah, blah....
"Now, if you'll type this all out and sent it over to our attorney and tell this "el reg board" that we demand the names of this Styles person? Thanks dear, appreciate it. Anything more on my agenda today? Good, good... Wait until I tell Larry about this one... Patent-to-Go, good one no? Get it? 'Patent. to. Go... ?'. Ha ha ha, wait... Darn, is this voice recorder still on?"
(sorry, couldn't resist ;-))
Anyway, Google have done the mistake of outing a language without going through the W3C or other recognised standards body - that is evil, Google. While too many lemmings do, not that many people who matter actually like or trust you.
I don't get the reference and a search for "Chocolate Factory" doesn't return anything useful. What or Who is the "Chocolate Factory" and why is it relevant?
Biting the hand that feeds IT © 1998–2019