| Index: README.md
|
| diff --git a/README.md b/README.md
|
| index 090718e8affcf70602619ad5005702dcea39e8be..f84abfec4bbfa42db54fb28febcba6bb242323ed 100644
|
| --- a/README.md
|
| +++ b/README.md
|
| @@ -4,11 +4,24 @@ dev_compiler
|
| [](https://travis-ci.org/dart-lang/dev_compiler)
|
| [](https://coveralls.io/r/dart-lang/dev_compiler)
|
|
|
| -This is an **experimental** Dart -> JavaScript compiler designed to create
|
| -idiomatic, readable JavaScript output. We're investigating this because
|
| -we want to enable easy debugging of Dart applications on all supported
|
| -browsers.
|
| -
|
| -The initial target for this work is Chrome, which is why there's an ES6
|
| -backend. Longer term, we plan to investigate supporting all browsers that
|
| -Dart supports.
|
| +The Dart Dev Compiler (DDC) is an **experimental** development tool and transpiler. It is at a very early stage today. Its aims include the following:
|
| +
|
| +- A static checker based on stricter-than-standard-Dart type rules.
|
| +- A modular Dart-to-ES6 transpiler for Dart programs that statically check.
|
| +
|
| +DDC attempts to map to idiomatic EcmaScript 6 (ES6) as cleanly as possible. To do this while cohering to Dart semantics, DDC relies heavily on static type information, static checking, and runtime assertions.
|
| +
|
| +DDC is intended to support a very large subset of Dart. If a program does not statically check, DDC will not result in valid generated code. Our goal is that a program execution (of a valid program) that runs without triggering runtime assertions should run the same on other Dart platforms under checked mode or production mode.
|
| +
|
| +DDC does support untyped Dart code, but it will typically result in less readable and less efficient ES6 output.
|
| +
|
| +DDC has the following project goals:
|
| +- Effective static checking and error detection.
|
| +- A debugging solution for all modern browsers.
|
| +- Readable output.
|
| +- Fast, modular compilation of Dart code.
|
| +- Easy use of generated code from JavaScript.
|
| +
|
| +DDC is still in a very early stage as highlighted by our choice of ES6. ES6 itself is in active development across all modern browsers, but at various stages of support: https://kangax.github.io/compat-table/es6/
|
| +
|
| +We are initially targeting the subset of ES6 supported in Chrome Canary.
|
|
|