3 ms·
I like it. Here's what it has got for me: Isolates: Message passing concurrency which takes away 80% of the problems with threads and locking. I find it intuit
by discreteevent 14y ago
I like it. Here's what it has got for me:
Isolates: Message passing concurrency which takes away 80% of the problems with threads and locking. I find it intuitive in the way that Unix pipes are intuitive. A few other languages have this also but Dart is one of them and its a plus.
Optional Typing: Its a dynamic language so its very flexible. Some statically typed languages are also flexible but you can still run into some very complex cases with the type system. I want to focus on my application. By having optional types though I can get 80% of what static, strong typing gives me, namely documentation, the ability to quickly reverse engineer someone else's code and runtime type checks. You know all those unit tests that you write in a dynamically typed language just to check the type of some parameter? With Dart you just turn on a switch and those unit tests are built in (I don't think typescript gives you this as the type information is erased at runtime)
Native debugger: I want my apps to run everywhere which means generating javascript. I see the Dart VM as a native debugging environment. Google have built a special VM so that I can debug Dart natively. I don't think source maps will be able to give as rich a debugging experience.
Tree shaking: The size of javascript libraries is a big issue. Have you tried looking at some sites over a slow mobile connection? Tree shaking looks like it will make it possible to only pay for what you use. This is a major plus
A consistent core: How many javascript libraries are there? Which should I pick? I don't even want to pick anymore I just want to get on with the job.
A pretty good experience: Rob Pike had an article a while ago about people complaining about a language without using it. I tried Go and that's why I like it. I also tried Dart with the Dart editor. Its nice, the libraries are good, the language is fluent and concise enough. Everything seems to be in the right place.