0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-02-01 20:25:12 -05:00
denoland-deno/src
Ryan Dahl 0ceb554343
Native ES modules (#1460)
* Native ES modules

This is a major refactor of internal compiler.

Before: JS and TS both were sent through the typescript compiler where
their imports were parsed and handled. Both compiled to AMD JS and
finally sent to V8

Now: JS is sent directly into V8. TS is sent through the typescript
compiler, but tsc generates ES modules now instead of AMD. This
generated JS is then dumped into V8.

This should much faster for pure JS code. It may improve TS compilation
speed.

In the future this allows us to separate TS out of the runtime heap and
into its own dedicated snapshot. This will result in a smaller runtime
heap, and thus should be faster.

Some tests were unfortunately disabled to ease landing this patch:
1. compiler_tests.ts which I intend to bring back in later commits.
2. Some text_encoding_test.ts tests which made the file invalid utf8.
   See PR for a discussion.
Also worth noting that this is necessary to support WASM
2019-01-09 12:59:46 -05:00
..
compiler.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
deno_dir.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
eager_unix.rs Happy new year! 2019-01-02 02:37:08 +01:00
errors.rs Happy new year! 2019-01-02 02:37:08 +01:00
flags.rs Add --allow-all flag (#1482) 2019-01-09 11:59:54 -05:00
fs.rs Happy new year! 2019-01-02 02:37:08 +01:00
http_body.rs Happy new year! 2019-01-02 02:37:08 +01:00
http_util.rs Revert "use byte array instead of string for code fetch (#1307)" (#1455) 2019-01-03 22:11:01 -05:00
isolate.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
js_errors.rs Revert "Split Runner from Compiler" (#1462) 2019-01-06 14:17:13 -05:00
libdeno.rs Add rust binding and test for deno_execute_mod() 2019-01-03 09:45:40 -05:00
main.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
msg.fbs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
msg.rs Replace mutex by atomics (#1238) 2018-11-29 19:03:00 -08:00
msg_util.rs Happy new year! 2019-01-02 02:37:08 +01:00
ops.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
permissions.rs Replace mutex by atomics (#1238) 2018-11-29 19:03:00 -08:00
repl.rs Happy new year! 2019-01-02 02:37:08 +01:00
resources.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00
snapshot.rs Happy new year! 2019-01-02 02:37:08 +01:00
tokio_util.rs Happy new year! 2019-01-02 02:37:08 +01:00
tokio_write.rs Fix clippy warnings (#1149) 2018-11-04 06:04:24 -08:00
version.rs Happy new year! 2019-01-02 02:37:08 +01:00
workers.rs Native ES modules (#1460) 2019-01-09 12:59:46 -05:00