Jenny Messerly
Jenny Messerly
we could also do `--trust-primitives` flag like dart2js does
@ochafik -- if I understand correctly, the runtime code we inherited from dart2js already has this non-null magic, so your change just teaches DDC to recognize the pattern? If so...
Current examples of introduced names: `List$` for `List` and `$add` for the extension method `List.add`
Also, these should probably use a different naming convention from temps.
note: extension methods were fixed (moved to a different namespace) so only the generic type vs dynamic instance is left. > One obvious way to do this is to reserve...
https://codereview.chromium.org/1177563003/ fixes classes. Will we want methods and other things at some point?
we could use Object.freeze, that will protect the array from JS too
I tired out freeze, the catch is we can't throw expandos on the object later (like hashCode). Weak maps are one alternative, another is just to precompute identityHashCode and such.
> In general, can we implement the Dart event loop on top of angular zones? yup, should be able to
Good catch! Path computation happens at: https://github.com/dart-lang/dev_compiler/blob/e465c1df13f9ad50b5dff3e120fe116718561753/lib/src/compiler.dart#L417 I think the "packages" magic happens here: https://github.com/dart-lang/dev_compiler/blob/e465c1df13f9ad50b5dff3e120fe116718561753/lib/src/codegen/code_generator.dart#L79 The two do not appear to know about each-other... (not sure this is low priority...