- ergonomics (convenience methods/parity across collection types)
- improve safety for broader use cases (realms etc)
- embrace FP (records and tuples)
- being a good faith language target for typed extensions
Even very narrow type system stuff seems to stall and feels like it’s going to wither in stage 1 or get bikeshedded to death. Proposals which directly overlap with static typing explicitly eschew any of that overlap to be able to proceed.
Part of me wishes Flow had won, even though I’m all in on TypeScript, because at least Flow had an optional story that could be built into the language and allowed to thrive on its merits and adoption. I can’t see a future where TypeScript or some variant gets folded into the language, because despite being gradual it’s explicitly a separate syntax with a build step. And I know the TS team is very engaged with TC-39, but the language syntax is very much in flux, and a Python-style “type hints ignored at runtime by default” is basically a deadlock or at least reasonably threatens to be one.
1: https://github.com/TypeStrong/ts-node#native-ecmascript-modu...
"browser compatible" javascript that runs in places other than the browser can (and should) only grow over time ...
deno is kind of a rust-wrapper around v8 -- how long before it becomes the api for the javascript engine used by the browser rather than v8 ...
I think (eventually) "import some_browser_only_api" will become an optional thing you can do when you want to make your code depend on browser only functionality -- with code that doesn't depend on the browser-only functionality able to run without it ...