Google Dart has evolved a great deal over the past few years. It was originally designed as a JavaScript replacement, with Google planning to add native support for it in Chrome. The company later dropped those plans, instead focusing on Dart's ability to compile to JavaScript (thus allowing Dart code to work in every web browser). Dart is heavily used in the cross-platform Flutter SDK, and it's a supported language in Fuchsia.

After two years of development, Dart 2.0 has been officially released. The main change is that Dart now uses a sound static type system, just like Rust. This means the compiler will check applications for type safety, which leads to bugs being found (and hopefully fixed) earlier in the development process.

This release is primarily focused on improving Dart as a language for creating web applications. AngularDart 5.0, which ships with Dart 2.0, improves compiling time and reduces the size of exported JavaScript code. AngularDart 5 web apps are smaller and faster than ever, and to prove it, Google used it to build a minimal client for Hacker News:

To showcase the improvements in Dart’s web platform, we built out a Dart-based client implementation for the HackerNews site as a Progressive Web App; this is published along with other sample implementations at the popular HNPWA site. Using best practices for building Dart web apps, we were able to ship a full-featured experience that is fully interactive in one second on modern devices and under five seconds on a modest mobile device on a slow 3G network. This is competitive even with lightweight web frameworks that are optimized for smaller apps.

Other improvements in Dart 2.0 include separate JavaScript compilers for development and production, more Angular components (including Material Design UI elements), Visual Studio Code support, an updated scratchpad for experimentation, and more. You can find more information at the source link below.