News for hackers. Stuff that matters.
Re:Google introduces Dart, a new programming language for we... by bad_user on Monday October 10, 2011 @06:28AM (#3093143)
You cannot add "full-type inference" on top of a language with a dynamic type system. You also cannot add such type inference to an object-oriented language, like Scala (it may be possible, but very hard and nobody did it).

     the main benefit is catching errors early
Dynamic typing isn't about not specifying types. Dynamic typing is about creating types at runtime.

This enables certain techniques that are very productive, and totally different from what you would do in a language like Haskell, which does have full-type inference.

I also do not think a static language would work as a client-side in-browser language, simply because of the nature of browsers and the web. Such a language needs runtime introspection and even types created at runtime like air. For in-browser stuff I also prefer eval() over static-typing any day of the week.

Re:Google introduces Dart, a new programming language for we... by Peaker on Monday October 10, 2011 @08:20AM (#3093449)
There's an real conflict between static typing and eval() or reflection.

eval() is shown to be usable in a static typing environment by some of Don Stewart's papers, though it does take more effort on the language implementors' side.

Reflection is achieved in Haskell, for example, using reflective type-classes (such as Typeable and Data).

Re:Google introduces Dart, a new programming language for we... by Peaker on Monday October 10, 2011 @11:07AM (#3094064)
Doh, too late to edit.

Above should read: "There's no real conflict"