Google's Dart Becomes ECMA's Dart
mikejuk writes "Google's Dart just reached version 1.0, but now it seems that it has aspirations to being an international standard. The question is will this make any difference to the language's future? Given that Google effectively owns Dart, what advantage does standardization bring? The answer to what Google thinks it brings is indicated in the Chromium blog: 'The new standardization process is an important step towards a future where Dart runs natively in web browsers.' and this seems reasonable. A standard is something that would be required before other browser makers decided to fall in line and support native Dart. It is probably a necessary but far from sufficient condition, however, with Microsoft, Apple and Mozilla having other interests to further. Last but not least, having the backing of a standard might just encourage possible users to believe that the language won't sink if Google gets distracted with other projects and decides that Dart is dispensable. However, a strong open source development community capable of supporting Dart without Google's input would be a better reassurance. If you want to help, Google would like you to join the committee. After all, it still doesn't have a Vice Chair. So can we expect to see ECMA CoffeeScript or TypeScript in the near future? Probably not."
http://www.bing.com/search?q=google+dart
Go find an open source project that actually matters.
Dart is Google's attempt to replace Javascript. They're doing this because Javascript is a shitty language.
Earlier versions of C# are also an ECMA standard, but nobody cares either way. It's like looking for a sales bullet point which doesn't make any practical difference.
Dart is Google's attempt to replace Javascript. They're doing this because Javascript is a shitty language.
They're doing this because:
- they are going to try to monetize it.
- they can't get developers to write stuff for ChromiumOS if it only runs on ChromiumOS.
- it will natively search and report on your web pages.
- their 'Go' language didn't go anywhere.
- Google has an inherent need to have some sort of impact on (and therefore control over) whatever anyone does on the internet.
- releasing version 1.0 means a Google product is finally out of perpetual beta.
The wonderful thing about standards is there are so many to choose from.
Help stamp out iliturcy.
Google is gaining way too much power over what you over the internet.
The Internet is NOT google. They, Google, came along and appropriated a lot.
And oh ueah, have yet to really show there is no partnership with others who might
do user tracking not through software but through hardware.
Listen: Google has NOT been in class with you!
Oh, and all you MicroSofties: don't bother to chime in. I'm calling a spade a spade
and you better not like it.
No... Dart is a shitty language. javascript is a web scripting language, albeit one that lacks the OOP syntactic sugar Java and C# weenies enjoy circle jerking over.
I was going to learn Spanish a couple of years back but instead I invented a whole new language called 'Spanglish' that is basically English with some Spanish words. Can't believe that people are still speaking Spanish. I'm going to have myself a nerdy little tantrum about that any second now...
Obviously, given Google's product areas, an improved replacemen for javascript is not exactly altruism. However, do you have any evidence to the effect that 'Dart' advances Google's control except by making 'web apps' better and/or easier?
Any sign of them attempting to make Dart Chromium-only or somehow favored by Chromium's architecture in a way that will freeze out IE and FF? Any dependence on the mothership implied by either a dart-language program or support for dart in a browser or elsewhere?
No kidding. Ghostery has a field day with that page.
The main problem with Go was, ironically, that it was ungoogleable.
Dart is available under the BSD 3-Clause license, so if they are poisoning the well for other adopters, it's by subtler means, and 'dart2js' is designed to do exactly what it sounds like, for compatibility with any remotely recent JS implementation.
I'm not seeing the lock-in here, though they haven't stirred enough buzz to get it more widely adopted.
Again, I hardly suspect them of altruism; but they don't seem to think that they have the power to push a 'Google only' JS replacement, and so would rather try to improve webapps generally, even on competitors' browsers, as a strategic move against platform-native applications.
Javascript is a shitty language. It has full object support, just based on prototypes instead of something sane. I do not know what it is about web "developers" that makes them like shitty languages like PHP and javascript, but they are. Aside from very poorly definitions of "standard" functions, both have so many side effects and scoping issues that it's a wonder anything ever got written with them. Not that anyone writes stuff based on javascript's "standard" library. No, you NEED to use a third party cross platform lib like jquery because the language is so poorly implemented too.
Javascript was an accident. It wasn't and isn't particularly suited to ANY task, let alone the web. People have hacked together some decent solutions, but the fact remains that js's design has been an anchor around web browsers and web development in general.
Not saying dart is any good either, but that doesn't make javascript good.
So, here is the high level idea (despite the danger of inviting Prolog zombies I'll be using its syntax for the Horn Clause):
The Idea
Parallelism spawns independent computations.
The Horn Clause:
m(A,B,C):-x(A),y(B),z(C).
expresses AND parallelism spawning 3 independent computations.
The Horn Clause document:
m(A):-x(A). m(A):-y(A). m(A):-z(A).
expresses OR parallelism spawning 3 independent computations.
In an operating system, parallel computations are scheduled for execution, allocating resources according to priorities.
There are also computations which cannot be scheduled until the computations upon which they depend complete. The Horn Clause document:
m(A,B,C):-m(A),m(B),m(C). m(A):-x(A). m(A):-y(A). m(A):-z(A).
expresses 3 AND parallel computations, each depending on 3 independent OR parallel computations.
This kind of data-dependency suspension of scheduling is also handled by operating systems.
By focusing on these constructs:
a radical reduction in semantic complexity can be realized.
Tools
Seymour Cray once said that much of engineering creativity comes from using old tools in never-before intended ways. The same is true of anything. New understanding of a thing's use is a way to create a new tool. Indeed, even when creating a new thing-in-itself as a tool (the ordinary means of creating a new tool), what comes first is its desired use. It is harmful to think about the fact that your hammer can be used as a paper-weight when you are pounding a nail into a piece of wood with a rock.
With that in mind, let us properly-use the Horn Clause:
Seastead this.
People keep coming up with alternatives to javascript. Everything from whole languages that compile down to javascript, to building new languages into the browser, to javascript supersets, to plugins that makes your browser run compiled code. Not a single one of these caught on. The REAL problem is the DOM, the CSS and how they interact with each other. Javascript is a bad language, but it's not awful. What makes web development awful is the DOM and CSS with all its crazy and cross-browser incompatibilities. Why no one tries to replace THAT? I'm almost implementing myself a new api that runs on top of a 100% width/height canvas tag for christ sake.
I'm not familiar with the Qt but QML ( http://en.wikipedia.org/wiki/QML ) looks pretty good to me. Why can't browsers just implement that? Oh right, because it was not developed by google/m$/apple/mozilla so they can't guide it to the directions they want. Noooo, you have to have a completely new language that no one knows.
If they want to replace javascript so much why don't they just take the python or ruby runtime, bundle it to the browser, sandbox it and add DOM mappings?
Javascript is a fine language. Javascript mostly gets a bad rap from the in browser DOM API (or lack of (thanks web standard politics)); and the fact that developer's only really learn VERY basic Javascript and spend all of their time manipulating the shitty browser DOM. I mean no one would like python, C, Java, etc if all you ever did with it was basic XML manipulation.
Go checkout Nodejs or some other non-browser implementation of Javascript. It's a really remarkable language.
P.S. saying it's the way it handles object generation is not sane is very wrong; in a fully interpreted language doing the object generation from a prototype allows flexability that traditional class definitions just won't allow, and is really the only sane way you can do it. And you can do things that blow Java/C++ developers' minds.
Lots of people don't like how Google is handling the integration of all their services, including social media. Certainly I'm not a fan of the whole "real name" thing, having been online for so long I know how that story ends. But what to do? They work in a world where this is how to succeed. For some things like social media real names work. For passionate discourse there are still forums where you can use your "handle" like in days of yore.
At least here is not another example of Microsoft's "stacked panels" from when they got their byzantine document formats accepted as an international standard.
BTW: some AC troll is trying to make me look bad by counter-replying in threads I comment in. That wasn't me, obviously.
Help stamp out iliturcy.
No, it does not. It translates to "I know JavaScript rather well, but I also know several other languages", so I am capable of comparing things and seeing how many bad choices there are in JS language design.
OTOH, the people who praise JS the language tend to be the guys who learned it after C or PHP, and who memorized that "JavaScript is like Lisp with curly braces" and accepted on faith that Lisp is uber awesome, without understanding what it all actually means - if you ask, they'll usually give you some canned reply along the lines of "it has first-class functions!!!1!!", as if it is somehow remarkable for a PL in today's age.
Personally I think Microsofts typescript idea is the best I've seen. Compiles to JavaScript, looks like a modern OOP language, tracks the next version of JavaScript fairly well, has a great IDE available with code completion, and is compatible with pre-existing JavaScript libraries.
Over the last 10 years, Microsoft has hired more people than Google's current headcount.
People who bring up growth to explain high turnover at Google are like those Apple marketing magicians who sweep their shrinking market share under the carpet and pretend that what matters is that average users spend more time using iPhones than Androids on a daily basis.
lucm, indeed.