[ECMAScript] TC39 process

ECMAScript是由ECMA-262标准化的脚本语言的名称。
JavaScript和JScript与ECMAScript相容,但包含超出ECMAScript的功能。

从ES5 2009-ES6 2015经历了6年,语言的变化比较大。
为了避免剧烈的变动,从ES7 2016开始,版本发布会变得更加频繁,每次的变动也更小。
每年会发布一个新版本,其中包含所有已经完成的特性。


1. TC39

TC39(Technical Committee 39)是一个推动JavaScript发展的委员会。
它的成员由各个主流浏览器厂商的代表构成。
会议的每一项决议必须大部分人赞同,并且没有人强烈反对才可以通过。
因为,对成员来说,同意就意味着有责任去实现它。

2. Stage

每一项新特性,要最终纳入ECMAScript规范中,TC39拟定了一个处理过程,称为TC39 process。
其中共包含5个阶段,Stage 0 ~ Stage 4。

Stage 0: strawman
一种推进ECMAScript发展的自由形式,任何TC39成员,或者注册为TC39贡献者的会员,都可以提交。

Stage 1: proposal
该阶段产生一个正式的提案。
(1)确定一个带头人来负责该提案,带头人或者联合带头人必须是TC39的成员。
(2)描述清楚要解决的问题,解决方案中必须包含例子,API以及关于相关的语义和算法。
(3)潜在问题也应该指出来,例如与其他特性的关系,实现它所面临的挑战。
(4)polyfill和demo也是必要的。

Stage 2: draft
草案是规范的第一个版本,与最终标准中包含的特性不会有太大差别。
草案之后,原则上只接受增量修改。
(1)草案中包含新增特性语法和语义的,尽可能的完善的形式说明,允许包含一些待办事项或者占位符。
(2)必须包含2个实验性的具体实现,其中一个可以是用转译器实现的,例如Babel。

Stage 3: candidate
候选阶段,获得具体实现和用户的反馈。
此后,只有在实现和使用过程中出现了重大问题才会修改。
(1)规范文档必须是完整的,评审人和ECMAScript的编辑要在规范上签字。
(2)至少要有两个符合规范的具体实现

Stage 4: finished
已经准备就绪,该特性会出现在年度发布的规范之中。
(1)通过Test 262验收测试
(2)有2个通过测试的实现,以获取使用过程中的重要实践经验。
(3)ECMAScript的编辑必须规范上的签字。


参考:
The TC39 process for ECMAScript features
Github:tc39/proposals
Standard ECMA-262

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是ECMAScript(来龙去脉娓娓道来)? 作者:冯天然 链接:https://zhuanlan.zhihu...
    Michael_林阅读 3,523评论 0 2
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 这几天,很多事同时发生,雅又发了烧,都要同时处理与应对。哈哈,感觉自己与超人正在靠近。事越多,越希望自己有更平和的...
    王悦yue阅读 184评论 0 5
  • 周末闲来无事,便买了电影票带着女儿去看电影了。 《小门神》女儿和我在电影院看的第一部3D电影。 本来想着这是一部小...
    孤心漫步阅读 3,049评论 0 1
  • 春花是为了秋实 严寒是为了冬雪 眼泪是为了微笑 相遇是为了经过 凋零是为了盛开 放手是为了祝福 离开是为了重逢 记...
    陈素阅读 257评论 1 1