Dart Is Not the Language You Think It Is
programming.oreilly.com
Dart Is Not the Language You Think It Is
1–10 of 143 posts
Re: Dart Is Not the Language You Think It Is
#2Re: Dart Is Not the Language You Think It Is
#3Re: Dart Is Not the Language You Think It Is
#4The language looks great. The challenge I think is always building enough of a community to create a rich enough stack that people can build real-world applications on. Scala did a fine job there, and a lot of that had to do with some companies taking some ownership of the platform (TypeSafe in that case), which may be good and/or bad. I wander what others think of this.
Throw in the extra performance (2x?) over Javascript and I'm ready to at least give it a try.
Re: Dart Is Not the Language You Think It Is
#5Optionally typed is extremely strange.
Re: Dart Is Not the Language You Think It Is
#6Untyped languages are okay. Typed languages are also okay. Typed languages with inference are okay. Optionally typed is extremely strange.
Here's optional type annotations in Haskell, which uses type inference by default but lets you override types with annotations. Note that f and g have different types, but the same body.
-- Haskell
f = return 5
g :: IO Int
g = return 5
Here it is in Lisp, which uses dynamic typing by default but lets you specify types with annotations. ; Dynamic +3 function
(defun add3 (x) (+ x 3))
; Static +3 function for integers
(defun add3 (x)
(declare (type integer x))
(+ x 3))Re: Dart Is Not the Language You Think It Is
#7Untyped languages are okay. Typed languages are also okay. Typed languages with inference are okay. Optionally typed is extremely strange.
Re: Dart Is Not the Language You Think It Is
#8How about a virtual machine facility that outputs what the types of variables are at runtime, combined with tools that can collate data from many runs and apply consistent types back to the original source code?
Re: Dart Is Not the Language You Think It Is
#9Untyped languages are okay. Typed languages are also okay. Typed languages with inference are okay. Optionally typed is extremely strange.
Re: Dart Is Not the Language You Think It Is
#10How about a virtual machine facility that outputs what the types of variables are at runtime, combined with tools that can collate data from many runs and apply consistent types back to the original source code?
I am reminded of the folks who optimized .kkrieger, which is a 95 kB first-person shooter. See "Metaprogramming for Madmen":
http://fgiesen.wordpress.com/2012/04/08/metaprogramming-for-...
Some highlights: during the test run, the player never pressed the up arrow key in the menu, so that functionality was removed by their tools. Enemies at the beginning never hit the player, so the code which handles damage was compiled out. And the system used a certain brand of graphics card, so code necessary for other graphics cards was compiled out.
The lesson is: don't let tools change code semantics based only on black-box testing.