Friday, May 4, 2012

Dart Team's "Weekly" Digest

Posted by Anders Sandholm

It’s been a while since the last update, but here’s a summary of the recent events in Dart-land. 

First version of the Dart Language Tour is published.

In the Dart language specification, we’ve revised the switch statement specification. There is also an ongoing triage of all open language bugs: classify as either something to be acted on, something that may be considered in the future, or most likely won’t happen.

In the Dart-to-JavaScript Compiler we have:
  • Added rough first version of dart2js to the SDK.
  • Started shrinking the generated code through type-based tree shaking and simplifications of code patterns (much more to come).
  • Changed all bitwise operations to yield 32-bit unsigned results thus making it easier to write algorithms that manipulate bits (crypto, hashing).
  • Added preliminary support for reified generics (work in progress).
The Dart Editor now has the following included 
  • Run button launches last run except if application or html file is selected
  • Debugging VM applications (work in progress)
  • AnalysisServer fixes and improvements
  • Auto updater (work in progress)
  • Trim memory used by DartC
  • Rename refactoring, code completion, and analysis fixes and improvements
  • Improvements and fixes to UI test suite
Dart Server libraries:
  • Added initial version of crypto library: lib/crypto/crypto.dart. Initially supports sha1, sha256 and HMAC.
  • Added support for WebSocket servers and clients.
  • Added support for links in File and Directory dart:io APIs on Linux and Mac.
  • Added files needed for native extension development to the SDK.
  • Changed the error-handling behavior in dart:io. If an error occurs and there is no error handler an exception will now be thrown. This gets rid of silent failures that makes applications hard to debug.