Status of Static Typing in ECMAScript
Status: as of 2017-03-23
Status | Name | Description | Recent Changes |
---|---|---|---|
NaN | Typed Objects | > All top-level names are defined in a typed objects module. See also Typed Objects Explainer | Out of date. Typed Objects information in proposal table is out of date · Issue #223 · tc39/ecma262 |
NaN | SoundScript | > We want to try implementing an optional type system for JavaScript, directly in the VM. | V8 will remove support for strong mode. An update on strong mode |
NaN | Type and Type Annotations | > Reserve syntax used by TypeScript, Flow, etc. for some form of annotation by Jonathan Turner | Jonathan Turner leave Microsoft. Off to new adventures |
NaN | Optional Static Typing | @sirisian’s proposal | Out of date? |
Statement
Brian Terlson who is editor of ECMAScript said that
Speaking as someone who proposed types for JavaScript in 2014: I do not believe types are in the cards for the near future. This is an extremely complex problem to get right from a standards perspective. Just adopting TypeScript as the standard would of course be great for TypeScript users, but there are other typed JS supersets with pretty significant usage including closure compiler and flow. These tools all behave differently and it’s not even clear that there’s a common subset to work from (I don’t think there is in any appreciable sense). I’m not entirely sure what a standard for types looks like, and I and others will continue to investigate this as it could be very beneficial, but don’t expect anything near term. – https://hashnode.com/ama/with-brian-terlson-cj6vu9vjv01nmo1wu8vmtt1x9#cj6vuspfq01oso1wuhjo5zvd6
Other Works
- Microsoft develop TypeScript
- Facebook develop Flow
Further reading
- tc39/ecma262: Status, process, and documents for ECMA262
- The TC39 Process
- Withdrawn Proposals of ecma262
- strawman:trademarks [ES Wiki]
Notes
Status: NaN is not official verbiage.
TC39 list up Withdrawn Proposals.
blog comments powered by Disqus