That's Rust: http://pcwalton.github.io/blog/2013/06/02/removing-garbage-c...
That's Rust: http://pcwalton.github.io/blog/2013/06/02/removing-garbage-c...
The difference between ML and C++ is a tradeoff between efficiency and safety in my eyes. D comes from the C/C++ level of efficiency and improves safety. ML comes from a safe point and tries to be efficient.
Regarding the semicolon rules, you won't like this observation, but in my 3 years of writing Rust the semicolon rule has literally has never led to a single bug.
However, I don't recall it being a problem in my experimentation with Rust either.
I'm a C++ developer and go so far as to make it harder. I map ; to <esc> in vim, and enter the actual char with a second ; (from from normal mode).
However, I hate semi colons so I agree with you there. You should check out the nimrod programming language.
Revamping I/O is very high on the list. Brian Anderson et al are working on it as we speak.
It's surprisingly logical and convenient. Everytime I `return null` (or just `null`) in CoffeeScript I wonder if Rust's way isn't beter.