Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2856)

Unified Diff: USAGE.md

Issue 1157093004: Added Usage instructions (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: Minor fix Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « README.md ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: USAGE.md
diff --git a/USAGE.md b/USAGE.md
new file mode 100644
index 0000000000000000000000000000000000000000..eaefa18c263e5207d003dad09e2d4b885495e484
--- /dev/null
+++ b/USAGE.md
@@ -0,0 +1,81 @@
+# Usage
+
+The [Dart Dev Compiler](README.md) (DDC) is an **experimental**
+development tool and transpiler. In particular, the ES6 backend is
+still incomplete, under heavy development, and not yet ready for
+production use.
+
+With those caveats, we welcome feedback.
+
+## Installation
+
+You can install DDC via pub:
+
+ $ pub global activate -sgit https://github.com/dart-lang/dev_compiler.git
+
+The above will install a `dartdevc` executable. To update to the
+latest DDC, you can just re-run this step.
+
+## Running the static checker
+
+By default, DDC runs in static checking mode. The DDC checker is strictly stronger than the standard Dart
+analyzer: it reports extra errors and warnings. For example, given the following `main.dart`:
+
+```dart
+void main() {
+ List<String> list = ["hello", "world"];
+
+ for (var item in list) {
+ print(item + 42);
+ }
+}
+```
+
+the Dart analyzer will not report a static error or warning even
+though the program will clearly fail (in checked mode). Running DDC:
+
+ $ dartdevc main.dart
+
+will display a severe error. Modifying `42` to `'42'` will
+correct the error.
+
+## Generating ES6
+
+For code that statically type checks, DDC can be used to generate EcmaScript 6 (ES6) code:
+
+ $ dartdevc -o out main.dart
+
+The generated output will be in 'out/foo.js'. DDC generates one ES6
+file per library. It is a modular compiler: the whole program is not
+necessary.
+
+## Running in Server Mode
+
+DDC output may be tested most easily in [Chrome
+Canary](https://www.google.com/chrome/browser/canary.html). Launch a
+local server via:
+
+ $ dartdevc --server main.dart
+
+## Testing in Chrome Canary
+
+Launch Chrome Canary at the URL shown by the above. You will need to
+explicitly enable ES6 (harmony) features: this can be done via the
+command line. E.g., on a Mac:
+
+ $ /Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --js-flags="--harmony-arrow-functions --harmony-classes --harmony-computed-property-names" http://localhost:8080
+
+Remember to open the Developer Tools to see the output of a print.
+
+DDC does not yet support ```dart:html```, but it does allow raw access
+to the JavaScript DOM. See our [modified version](https://github.com/dart-lang/dev_compiler/blob/master/test/codegen/sunflower/sunflower.dart) of Dart Sunflower for
+an example.
+
+## Feedback
+
+Please file issues in our [GitHub issue tracker](https://github.com/dart-lang/dev_compiler/issues).
+
+You can also view or join our [mailing list](https://groups.google.com/a/dartlang.org/forum/#!forum/dev-compiler).
+
+
+
« no previous file with comments | « README.md ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698