# Narrowing `any` and `--noImplicitAny` * [Compiler should allow assignment of new property in empty object](https://github.com/Microsoft/TypeScript/issues/11839) * [Endless waiting for 2.1.1 compiling (unuseable)](https://github.com/Microsoft/TypeScript/issues/12319) * consider caching resolved signatures for non-generic non-overloaded functions. this should save a lot of a lot of types * it now behaves consistently with `var x; x = {}; x.a = 0;` as `var x = {}; x.a = 0;` * the fix is to add `: any` * ultimately support object construction pattern * Proposals: * make assignment to `{}` to be `any` for control flow purposes * do nothing * **Conclusion**: do it only in noImplicitAny mode # Async Iterators * Stage 3 feature: * Proposal: [https://github.com/tc39/proposal-async-iteration](https://github.com/tc39/proposal-async-iteration) * Request for TS: [https://github.com/Microsoft/TypeScript/issues/11326](https://github.com/Microsoft/TypeScript/issues/11326) * Downlevel support * Generator support already requested: [https://github.com/Microsoft/TypeScript/issues/1564](https://github.com/Microsoft/TypeScript/issues/1564) * Used by redux-saga: [http://yelouafi.github.io/redux-saga/docs/introduction/BeginnerTutorial.html](http://yelouafi.github.io/redux-saga/docs/introduction/BeginnerTutorial.html), ember-concurrency * Users already asking for down level iterator protocol support: * [https://github.com/Microsoft/TypeScript/issues/11970](https://github.com/Microsoft/TypeScript/issues/11970) * [https://github.com/Microsoft/TypeScript/issues/8856](https://github.com/Microsoft/TypeScript/issues/8856) * Perfromance: * Ron: Perf measurements, on the compiler code base, seems like `for .. of` is whiten the margin of error from generator Downlevel * concerns: * clean emit code for `for .. of` * we pride ourselves on the cleanness of the output * we believe our users find this an asset * performance of the output of all other * how `Symbol.Iterator` and `Symbol.AsyncIterator` be decided? * assume the existence of a polyfill * This needs a global `Promise` to be defined to work, there is no way to specify a specific promise type * Proposal: * either opt-in or opt-out * opt-in is better, so that not every one has to be * a new flag to allow generators * add a typescript-specific syntax for `for each (x of y)` * No. no reason to add new constructs to the language
Activity