| OLD | NEW |
| 1 Dart Kernel | 1 Dart Kernel |
| 2 =========== | 2 =========== |
| 3 **Dart Kernel** is a small high-level language derived from Dart. | 3 **Dart Kernel** is a small high-level language derived from Dart. |
| 4 It is designed for use as an intermediate format for whole-program analysis | 4 It is designed for use as an intermediate format for whole-program analysis |
| 5 and transformations, and as a frontend for codegen and execution backends. | 5 and transformations, and as a frontend for codegen and execution backends. |
| 6 | 6 |
| 7 The kernel language has in-memory representations in Dart and C++, and | 7 The kernel language has in-memory representations in Dart and C++, and |
| 8 can be serialized as binary or text. | 8 can be serialized as binary or text. |
| 9 | 9 |
| 10 Both the kernel language and its implementations are unstable and are under deve
lopment. | 10 Both the kernel language and its implementations are unstable and are under deve
lopment. |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 54 Testing | 54 Testing |
| 55 ------- | 55 ------- |
| 56 | 56 |
| 57 If you plan to make changes to kernel, get a checkout of the Dartk SDK and run: | 57 If you plan to make changes to kernel, get a checkout of the Dartk SDK and run: |
| 58 ```bash | 58 ```bash |
| 59 tool/regenerate_dill_files.dart --sdk <path to SDK checkout> | 59 tool/regenerate_dill_files.dart --sdk <path to SDK checkout> |
| 60 pub run test | 60 pub run test |
| 61 ``` | 61 ``` |
| 62 | 62 |
| 63 | 63 |
| 64 Library and Program Files | 64 Linking |
| 65 ------------------------- | 65 ------------------------- |
| 66 Kernel distinguishes between **library files** and **program files**. | 66 Linking from binary files is not yet implemented. In order to compile a whole |
| 67 | 67 program, currently everything must be compiled from source at once. |
| 68 Program files are self-contained and cannot reference anything outside the file. | |
| 69 Library files contain exactly one library and can import other libraries by a | |
| 70 URI equivalent to how imports work in a .dart file. | |
| 71 | |
| 72 Library files are a provisional concept and should not be used for anything | |
| 73 serious yet, but can be used for quick experiments, like measuring the binary | |
| 74 file size on a per-library basis. | |
| OLD | NEW |