Dart Language Specification

Download the Dart Programming Language Specification from the Ecma website:

For a gentler introduction to the Dart language, see the Dart language tour.

You can find previous editions of the specification at Standard ECMA-408.

Dart 2 changes

Dart 2 has changed the Dart language in many ways, some of which are not backward-compatible. For information about changes and implementation status, see the following resources:

Changes in the 4th edition

The 4th edition of the specification has fewer restrictions on mixins. The restrictions on mixins up until this edition were:

  • Mixins must inherit directly from Object.
  • Mixins cannot contain super calls.
  • Mixins cannot define constructors.

Only the last one, mixins cannot define constructors, remains.

Changes in the 3rd edition

The 3rd edition of the specification added information about the following new language features: