4 ms·
>Maybe I'm missing something big but Dart looks to me like Slightly Better Java, yet another boring incremental improvement on languages that are well past thei
by batista 14y ago
>Maybe I'm missing something big but Dart looks to me like Slightly Better Java, yet another boring incremental improvement on languages that are well past their sell-by date.
It wasn't made to be exciting. For exiting go look elsewhere.
It was made for some very pragmatic goals:
1) to be used in the same context as Javascript (web clients mostly but some server too)
2) Look familiar to JS programmers
3) be more like Java and remove the bizarro JS behavior
4) be able to be made faster than V8
5) add some handy stuff to the mix.
Exciting does not come into play at all, and with this goals it should not.
With "exciting" you get Haskell or Clojure, languages with such small following that they celebrate it with blog posts when they are used by some company (personally, I like both, and they are both better than Dart for tons of things but not for Dart's specific goals).
Not that Dart is used by anyone as of now, but one of their goals is to have it be used. And conventional beats "exciting" every time in this goal (All the major used languages: C, C++, Java, JS, Python, Ruby, Perl, C#, all fairly similar and conventional).
- goldfeld 14y agoExcept they are "only" trying to replace perhaps the single most ingrained language of all time, that is, Javascript in browsers. And I'll warrant that the more ingrained a language is, the more it's contender needs to be exciting, and yes, even hyped, and catter to developer motivation and happiness. For pure technical gains, I think there's huge resistance to be found. Having said that, I think they could find some success in, say, making Chrome run Dart natively (as well as Javascript for the time being) and then getting other more hyped languages to compile to Dart.
- batista 14y ago>Except they are "only" trying to replace perhaps the single most ingrained language of all time, that is, Javascript in browsers. And I'll warrant that the more ingrained a language is, the more it's contender needs to be exciting, and yes, even hyped, and catter to developer motivation and happiness. True, they need "hype", but exciting in the way asked above just throws most developers off of it. No exciting language ever gained a stronghold in the market. Even Lisp in the AI/Lisp Machines era and Smalltalk in its heyday were marginal. <b>Having said that, I think they could find some success in, say, making Chrome run Dart natively (as well as Javascript for the time being) and then getting other more hyped languages to compile to Dart.</b> They do have Dart run natively in Dartium, a special Chrome version IIRC. But obviously I can't see Apple/Mozilla/MS playing along and adding Dart to their browsers. One way they could gain ground would be to use the server side advantage (since they want Dart to work on the server too): Make a better Node.js like environment with Dart, with no callback-spaghetti and single-thread issues, and add a top-notch web framework for it, suitable for both Rails and client-rendering style web development. Add MySQL/PostgreSQL and Mongo drivers. I think something like that will catch on like wildfire.
- goldfeld 14y agoA strong, google-funded full-stack framework competitor to Meteor sounds like a good thing to the evolution of JavaScript (EDIT: evolution of browser rendering languages) everywhere. They're getting it right with Angular, so yeah I agree that could work out.
- azakai 14y ago> Having said that, I think they could find some success in, say, making Chrome run Dart natively That would fragment the web, just like if Microsoft made IE run .NET natively (or, like Microsoft made IE run ActiveX). So hopefully that won't happen.
- sethladd 14y agoOne of Dart's goals is to become a compelling and useful option for developers of many backgrounds to write awesome modern web apps. Compiling to JavaScript is crucial, as JavaScript is the lingua franca of the web. Embedding a Dart VM into a browser gives even greater performance for Dart apps and support for features such as snapshots (a quicker startup from a serialized binary heap).