Live data from Hacker News

Dart Is Not the Language You Think It Is

programming.oreilly.com

111–120 of 143 posts

Re: Dart Is Not the Language You Think It Is

#111
post #98

Who is the audience for Dart? Clearly it is first and foremost Google, whose programmers spend their days writing Java and C++ in an IDE like Eclipse. But web developers, who are the primary producers of JavaScript, will happily stick with Node.js, CoffeeScript, or plain JavaScript. For that audience, they are given a language with optional static typing (most don't want it) and an Eclipse-based editor (most don't wa…

For better or worse JavaScript is the lingua franca of the web, so if you want to go home early instead of tracking down compiler errors of the translation tool, the best way is just to use JavaScript. Dart will never take off if the other vendors don't offer VM support on their browsers. Almost every language has JavaScript transpilers and as a Chrome only solution it won't work.

Not necessarily. Dart provides 2 options: - A strong tool supported language that translate to Javascript. So you developed large applications far easier with Dart VM in the browser, then just compile to Javascript for deployment. Debugging will happen in Dart mostly. - A multi platform Runtime (Chrome) for high performance demanding applications. Application runs on browser it is far better than writing Windows - Mac - Linux specific application to me. And more appealing than Java. Also Chrome with Dart VM will work in Android. Another plus.

Both are compelling advantages of Dart.

Re: Dart Is Not the Language You Think It Is

#112
post #99

Earlier quoted context omitted.

Why does that matter? Dart brings improvements to the language and tools that are worthwhile regardless of the VM being available in the user's client. dart2js is the primary method of deploying Dart code, and there's nothing bad about that.

It does not bring any advantage to the plethora of languages that already compile down to JavaScript.

Most of them's tool support does not even compare to Dart. Dart code can run directly in Browser for the starters, multiple strong IDEs, sane debugging and modularity support.

Re: Dart Is Not the Language You Think It Is

#113
post #111
post #98

Earlier quoted context omitted.

For better or worse JavaScript is the lingua franca of the web, so if you want to go home early instead of tracking down compiler errors of the translation tool, the best way is just to use JavaScript. Dart will never take off if the other vendors don't offer VM support on their browsers. Almost every language has JavaScript transpilers and as a Chrome only solution it won't work.

Not necessarily. Dart provides 2 options: - A strong tool supported language that translate to Javascript. So you developed large applications far easier with Dart VM in the browser, then just compile to Javascript for deployment. Debugging will happen in Dart mostly. - A multi platform Runtime (Chrome) for high performance demanding applications. Application runs on browser it is far better than writing Windows - Ma…

> Application runs on browser it is far better than writing Windows - Mac - Linux specific application to me.

Well, I am the opinion the browser is for documents.

Re: Dart Is Not the Language You Think It Is

#114
post #112
post #99

Earlier quoted context omitted.

It does not bring any advantage to the plethora of languages that already compile down to JavaScript.

Most of them's tool support does not even compare to Dart. Dart code can run directly in Browser for the starters, multiple strong IDEs, sane debugging and modularity support.

Like Amber, TypeScript, F#, ....

Re: Dart Is Not the Language You Think It Is

#115
post #113
post #111

Earlier quoted context omitted.

Not necessarily. Dart provides 2 options: - A strong tool supported language that translate to Javascript. So you developed large applications far easier with Dart VM in the browser, then just compile to Javascript for deployment. Debugging will happen in Dart mostly. - A multi platform Runtime (Chrome) for high performance demanding applications. Application runs on browser it is far better than writing Windows - Ma…

> Application runs on browser it is far better than writing Windows - Mac - Linux specific application to me. Well, I am the opinion the browser is for documents.

I had that same opinion in 2003.

Re: Dart Is Not the Language You Think It Is

#116
post #50

Who is the audience for Dart? Clearly it is first and foremost Google, whose programmers spend their days writing Java and C++ in an IDE like Eclipse. But web developers, who are the primary producers of JavaScript, will happily stick with Node.js, CoffeeScript, or plain JavaScript. For that audience, they are given a language with optional static typing (most don't want it) and an Eclipse-based editor (most don't wa…

The primary audience, is web developers. Dart is an ambitious attempt at simplyfing web development, reducing complexity and improving productivity which: - Provides a familiar language with clean semantics and low ceremony - Provides the fastest dev iteration times (there's no compile step, just edit + run in Dart VM/Dartium) - Provides ~10x faster start-up times with snapshots (Dart VM) - Provides faster run-time p…

That's not much. ES6, TypeScript, DOMFutures, FunctionFuture, asm.js, WebComponents, jQuery, r.js, node.js bring most of these features to JS. Not as slick and with some legacy warts, but it's good enough to make Dart merely an incremental improvement rather than a revolution.

It's very disappointing that the first serious attempt to replace JS after almost 20 years is merely just another Java-syntax-like JIT-compiled single-threaded dynamically-typed garbage-collected language with global, shared mutable state. It's fundamentally the same language merely with some pet peeves removed and a bit of sugar on top. It's a waste of opportunity.

Re: Dart Is Not the Language You Think It Is

#117
post #114
post #112

Earlier quoted context omitted.

Most of them's tool support does not even compare to Dart. Dart code can run directly in Browser for the starters, multiple strong IDEs, sane debugging and modularity support.

Like Amber, TypeScript, F#, ....

All require javascript compilation for development AFAIK

Re: Dart Is Not the Language You Think It Is

#118
post #115
post #113

Earlier quoted context omitted.

> Application runs on browser it is far better than writing Windows - Mac - Linux specific application to me. Well, I am the opinion the browser is for documents.

I had that same opinion in 2003.

I am developing software since 1986, mostly web in the last 8 years, my experience in the chaotic ways of web development only reinforces my opinion.

Re: Dart Is Not the Language You Think It Is

#120

Earlier quoted context omitted.

When I started seriously working with JavaScript, I decided to try to conform to community standards by using JSLint. I was shocked by how terrible JSLint was. It offered corrections for very straightforward constructs such as: var count = 0; for (var i = 0; i I have no idea why JSLint would tell me that I should move the definition of "i" to the top of the function (am I supposed to pretend I'm writing ANSI C for ob…

Your issue is not knowing JavaScript. No point to blame a JavaScript linter.

The real issue is that, as a programming language, JavaScript is poorly designed and quite broken. Its implementors and community have been quite unwilling to fix these issues, even after a decade and a half. As a result of this, it is still riddled with oddities in even extremely simple constructs.

Even when one understands the reasoning behind why a tool like JSLint suggests what it does, this doesn't change the fact that dietrichepp's observations are correct. JavaScript's scoping and variable hoisting are unnecessarily broken, leading to convoluted coding practices that wouldn't really be necessary if JavaScript itself wasn't so broken.

Post reply on HN