Live data from Hacker News

Dart Is Not the Language You Think It Is

programming.oreilly.com

61–70 of 143 posts

Re: Dart Is Not the Language You Think It Is

#61
post #19

Here is what I think about Dart: it is huge and is another programming planet that you can't reuse what you already have (like thousands of libraries in NPM). And the most important part; it looks boring. the articles about it look also are very boring.

Here is what I think about Dart: it is huge and is another programming planet that you can't reuse what you already have (like thousands of libraries in NPM).

Dart has a js-interop library for the times that you want to reuse some code written in JavaScript. This video gives a good introduction to it: http://www.youtube.com/watch?v=QFuCFUd2Zsw

And the most important part; it looks boring.

That's was a big design goal when they created the language. It's designed so that, for the most part, it looks and behaves like other languages that you're used to. You can pick it up in an hour or so and be productive right away. The Dart team didn't want to create some esoteric language with all sorts of crazy features, they set out to create a real language that people would feel comfortable using.

Re: Dart Is Not the Language You Think It Is

#62
One thing I'm not too crazy about is that, AFAICT, it seems that you need a Google account in order to upload packages to its cpan-alike, http://pub.dartlang.org/ .

Can the Dart package management tool fetch/install packages which are not hosted at pub.dartlang.org? Can it install packages straight from a github repo?

Re: Dart Is Not the Language You Think It Is

#63
post #14

Earlier quoted context omitted.

Walled garden?? It's the most open language I know, fully OSS'ed with an extended license to include any implicit patents (removing Patent FUD), developed out in the open and accepting 3rd party contributions and inviting feedback to influence language design. Lars Bak also mentioned at Google I/O that they're in the process of trying to get it standardized, not sure what's left to do to make it any more "open" and i…

Let's not pretend that Google's open source products in any way follow an open development process. Do you notice anything in common about the recent committers? http://code.google.com/p/dart/source/list http://code.google.com/p/closure-compiler/source/list http://code.google.com/p/closure-library/source/list Their development is very much insular. That's not to say it's a poor idea to depend on these products, but t…

I really don't understand why people insist that "open" must mean a project is open to every and all random contributions from people outside the project. The source code is there for you to use as you please. If you want your ideas committed to the mainstream you have to persuade the people in charge.

I have to wonder what agenda drives people to claim that this is not "in any way" an open development process.

Re: Dart Is Not the Language You Think It Is

#64
post #62

One thing I'm not too crazy about is that, AFAICT, it seems that you need a Google account in order to upload packages to its cpan-alike, http://pub.dartlang.org/ . Can the Dart package management tool fetch/install packages which are not hosted at pub.dartlang.org? Can it install packages straight from a github repo?

The pub package management tool allows you to fetch libraries from a git repo or the local filesystem, see here:

http://pub.dartlang.org/doc/dependencies.html#git-packages

Re: Dart Is Not the Language You Think It Is

#65

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…

I love Javascript but Dart is appealing to me.

I know there is a stream of Java / C# / C++ programmers that desire a Java-esque, improved GWT experience and loathe Javascript. But I see Dart more as a refined/upgraded Javascript -- some additional language/toolset features like Objective-C or C++ do for C.

Advantages of Dart over Node.js or CoffeeScript or plain Javascript?

1. "Batteries included" -- instead of reliance upon assortment of modules, OO system built in, better DOM utilities than jQuery (query returns a first class object), functional like Javascript sans the function keyword).

2. So nice that you can split a project across a whole bunch of code files, yet it will condense and minify into one efficient javascript file. Yes, there are tools with all the various Javascript frameworks to accomplish this, but then you're reliant upon of hierarchical library dependencies that sometimes can be brittle.

3. Can run server side just as Node.js with a powerful VM, without the need (though certainly possible and optional) to install a plethora of other libraries.

I think it hasn't taken off because up until recent months, the language and library has not been stable enough for production development -- libraries have changed a lot and most of the code in all of the Dart books published to date will not run at all now (though the Dart SDK comes with a tool that can help migrating code).

There are still some sore spots I hope get addressed -- primarily, on server side, need for built-in DB libraries and on client side, JSONP/CORS that is as easy as jQuery makes it. At least in my XP.

Re: Dart Is Not the Language You Think It Is

#66

Earlier quoted context omitted.

Dart compiles to JavaScript, much like CoffeeScript, Microsoft's TypeScript, Haxe and many others, and they still make the fastest JavaScript VM on the planet.

Yes and no, An important caveat that Dart as JavaScript runs in it's own isolate and communicates with existing JavaScript libs through ports. This js-interop code is nearly 500k unminified. And you won't be able to minify all your JS (dartJs + other js) into one lib, because dart js doesn't play well with standard tools. One can certainly interop with js libs, but it's not pretty. Dart is not near 1.0 yet, so there…

Yeah - it would be nice if dart2js supported externs as in the closure compiler. I imagine that will happen at some stage.

Re: Dart Is Not the Language You Think It Is

#67
post #29

I really like the feature set and feel of Dart. My only concern is lack of browser support. As of May 2013, Microsoft Internet Explorer, Mozilla Firefox, Opera Software's Opera browser, and Apple Safari have no plan to embed a separate Dart VM [1]. What would it take to get these vendors to add support? 1: http://en.wikipedia.org/wiki/Dart_%28programming_language%29...

My only concern is lack of browser support.

Because Dart compiles to JavaScript (which can even perform better than handwritten JavaScript to perform the same actions[1]), it runs everywhere. You don't need the Dart VM built into a browser for your Dart application to work; it already works today.

What would it take to get these vendors to add support?

I think that likely they would want to see more applications written in Dart. If a big company (like Facebook, for example) wrote a large application in Dart, other browser vendors would see both that big name developers are using Dart for their applications and they'd see the performance boost that browsers with the Dart VM built in take advantage of[2]. This would make it more compelling for them to include a Dart VM in their browser.

[1]: http://news.dartlang.org/2013/03/why-dart2js-produces-faster...

[2]: http://dartlang.org/performance

Re: Dart Is Not the Language You Think It Is

#68
post #62

One thing I'm not too crazy about is that, AFAICT, it seems that you need a Google account in order to upload packages to its cpan-alike, http://pub.dartlang.org/ . Can the Dart package management tool fetch/install packages which are not hosted at pub.dartlang.org? Can it install packages straight from a github repo?

[deleted]

Re: Dart Is Not the Language You Think It Is

#69
post #14

Earlier quoted context omitted.

Walled garden?? It's the most open language I know, fully OSS'ed with an extended license to include any implicit patents (removing Patent FUD), developed out in the open and accepting 3rd party contributions and inviting feedback to influence language design. Lars Bak also mentioned at Google I/O that they're in the process of trying to get it standardized, not sure what's left to do to make it any more "open" and i…

Let's not pretend that Google's open source products in any way follow an open development process. Do you notice anything in common about the recent committers? http://code.google.com/p/dart/source/list http://code.google.com/p/closure-compiler/source/list http://code.google.com/p/closure-library/source/list Their development is very much insular. That's not to say it's a poor idea to depend on these products, but t…

> It would be nice if Google maintained mirrors on Github and accepted pull requests and such, but I don't see that ever happening.

Actually, external contributors John Evans and Ladislav Thon submitted and landed patches via github.

https://chromiumcodereview.appspot.com//10168022 https://chromiumcodereview.appspot.com//10166019

Not all of the code is on github but many libraries are. Web ui is developed via github. See here for a full list:

https://github.com/dart-lang/

Re: Dart Is Not the Language You Think It Is

#70

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…

Gotta disagree with your panning of static typing. Dart is targeting large web applications- apps written over the course of months and supported for potentially years, by a team which changes over the course of the project.

The thing isn't static typing- it's static analysis. The ability to specify contracts in your code and have something validate your code. This is the same thing TypeScript and Closure try to address, but Dart is trying to tackle the issue at its core, with performance to boot.

Post reply on HN